ModelImpl extends RelationalObjectImpl implements Model { @Override public ModelSource addSource( final UnitOfWork transaction, final String sourceName ) throws KException { return RelationalModelFactory.createModelSource( transaction, getRepository(), this, sourceName ); } ModelImpl( final UnitOfWork uow,
                      final Repository repository,
                      final String workspacePath ); @Override KomodoType getTypeIdentifier( UnitOfWork uow ); @Override PushdownFunction addPushdownFunction( final UnitOfWork transaction,
                                                 final String functionName ); @Override UserDefinedFunction addUserDefinedFunction( final UnitOfWork transaction,
                                                       final String functionName ); @Override StoredProcedure addStoredProcedure( final UnitOfWork transaction,
                                               final String procedureName ); @Override VirtualProcedure addVirtualProcedure( final UnitOfWork transaction,
                                                 final String procedureName ); @Override ModelSource addSource( final UnitOfWork transaction,
                                  final String sourceName ); @Override Table addTable( final UnitOfWork transaction,
                           final String tableName ); @Override View addView( final UnitOfWork transaction,
                         final String viewName ); @Override KomodoObject getChild( UnitOfWork transaction,
                                  String name ); @Override KomodoObject getChild( final UnitOfWork transaction,
                                  final String name,
                                  final String typeName ); @Override KomodoObject[] getChildren( final UnitOfWork transaction,
                                       final String... namePatterns ); @Override KomodoType[] getChildTypes(); @Override String getDescription( final UnitOfWork transaction ); @Override Function[] getFunctions( final UnitOfWork transaction,
                                    final String... namePatterns ); @Override String getMetadataType( final UnitOfWork transaction ); @Override String getModelDefinition( final UnitOfWork uow ); @Override Type getModelType( final UnitOfWork uow ); @Override Procedure[] getProcedures( final UnitOfWork transaction,
                                      final String... namePatterns ); @Override ModelSource[] getSources( final UnitOfWork transaction,
                                     final String... namePatterns ); @Override Table[] getTables( final UnitOfWork transaction,
                              final String... namePatterns ); @Override int getTypeId(); @Override View[] getViews( final UnitOfWork transaction,
                            final String... namePatterns ); @Override Vdb getParent( final UnitOfWork transaction ); @Override boolean hasChild( final UnitOfWork transaction,
                             final String name ); @Override boolean hasChild( final UnitOfWork transaction,
                             final String name,
                             final String typeName ); @Override boolean hasChildren( final UnitOfWork transaction ); @Override boolean isVisible( final UnitOfWork transaction ); @Override void removeFunction( final UnitOfWork transaction,
                                final String functionName ); @Override void removeProcedure( final UnitOfWork transaction,
                                 final String procedureName ); @Override void removeSource( final UnitOfWork transaction,
                              final String sourceToRemove ); @Override void removeTable( final UnitOfWork transaction,
                             final String tableName ); @Override void removeView( final UnitOfWork transaction,
                            final String viewName ); @Override void setDescription( final UnitOfWork transaction,
                                final String newDescription ); @Override void setMetadataType( final UnitOfWork transaction,
                                 final String newMetadataType ); @Override void setModelDefinition( final UnitOfWork uow,
                                    final String modelDefinition ); @Override void setModelType( final UnitOfWork uow,
                              final Type newModelType ); @Override void setVisible( final UnitOfWork transaction,
                            final boolean newVisible ); @Override byte[] export( final UnitOfWork transaction , Properties exportProperties); @Override DocumentType getDocumentType(UnitOfWork transaction);  }
@Test( expected = IllegalArgumentException.class ) public void shouldFailAddingEmptySourceName() throws Exception { this.model.addSource( getTransaction(), EMPTY_STRING ); }
@Test( expected = IllegalArgumentException.class ) public void shouldFailAddingNullSourceName() throws Exception { this.model.addSource( getTransaction(), null ); }