@SuppressWarnings( "unchecked" ) public SharedObjects loadSharedObjects( final RepositoryElementInterface element, final Map<RepositoryObjectType, List<? extends SharedObjectInterface>> sharedObjectsByType ) throws KettleException { JobMeta jobMeta = (JobMeta) element; jobMeta.setSharedObjects( jobMeta.readSharedObjects() ); // Repository objects take priority so let's overwrite them... // readDatabases( jobMeta, true, (List<DatabaseMeta>) sharedObjectsByType.get( RepositoryObjectType.DATABASE ) ); readSlaves( jobMeta, true, (List<SlaveServer>) sharedObjectsByType.get( RepositoryObjectType.SLAVE_SERVER ) ); return jobMeta.getSharedObjects(); }
public SharedObjects readSharedObjects( JobMeta jobMeta ) throws KettleException { jobMeta.setSharedObjects( jobMeta.readSharedObjects() ); readDatabases( jobMeta, true ); readSlaves( jobMeta, true ); return jobMeta.getSharedObjects(); }
@Override public JobMeta fromXml( String xml, final SharedObjects fakeSharedObjects ) throws Exception { JobMeta meta = spy( new JobMeta() ); doAnswer( createInjectingAnswer( meta, fakeSharedObjects ) ).when( meta ).readSharedObjects(); Document doc = XMLHandler.loadXMLFile( new ByteArrayInputStream( xml.getBytes() ), null, false, false ); meta.loadXML( XMLHandler.getSubNode( doc, JobMeta.XML_TAG ), null, null ); return meta; }
@Override public SharedObjects readJobMetaSharedObjects( JobMeta jobMeta ) throws KettleException { // First the normal shared objects... // SharedObjects sharedObjects = jobMeta.readSharedObjects(); // Then we read the databases etc... // for ( ObjectId id : getDatabaseIDs( false ) ) { DatabaseMeta databaseMeta = loadDatabaseMeta( id, null ); // Load last version databaseMeta.shareVariablesWith( jobMeta ); jobMeta.addOrReplaceDatabase( databaseMeta ); } for ( ObjectId id : getSlaveIDs( false ) ) { SlaveServer slaveServer = loadSlaveServer( id, null ); // Load last version slaveServer.shareVariablesWith( jobMeta ); jobMeta.addOrReplaceSlaveServer( slaveServer ); } return sharedObjects; }
public static boolean editProperties( JobMeta jobMeta, Spoon spoon, Repository rep, boolean allowDirectoryChange ) { if ( jobMeta == null ) { return false; } JobDialog jd = new JobDialog( spoon.getShell(), SWT.NONE, jobMeta, rep ); jd.setDirectoryChangeAllowed( allowDirectoryChange ); JobMeta ji = jd.open(); // In this case, load shared objects // if ( jd.isSharedObjectsFileChanged() ) { try { SharedObjects sharedObjects = rep != null ? rep.readJobMetaSharedObjects( jobMeta ) : jobMeta.readSharedObjects(); spoon.sharedObjectsFileMap.put( sharedObjects.getFilename(), sharedObjects ); } catch ( Exception e ) { new ErrorDialog( spoon.getShell(), BaseMessages.getString( PKG, "Spoon.Dialog.ErrorReadingSharedObjects.Title" ), BaseMessages.getString( PKG, "Spoon.Dialog.ErrorReadingSharedObjects.Message", spoon.delegates.tabs.makeTabName( jobMeta, true ) ), e ); } } // If we added properties, add them to the variables too, so that they appear in the CTRL-SPACE variable completion. // spoon.setParametersAsVariablesInUI( jobMeta, jobMeta ); if ( jd.isSharedObjectsFileChanged() || ji != null ) { spoon.refreshTree(); spoon.delegates.tabs.renameTabs(); // cheap operation, might as will do it anyway } spoon.setShellText(); return ji != null; }
repository != null ? repository.readJobMetaSharedObjects( jobMeta ) : jobMeta.readSharedObjects(); sharedObjectsFileMap.put( sharedObjects.getFilename(), sharedObjects );
rep != null ? rep.readJobMetaSharedObjects( jobMeta ) : jobMeta.readSharedObjects(); sharedObjectsFileMap.put( sharedObjects.getFilename(), sharedObjects ); if ( rep == null ) {
sharedObjectsFile = XMLHandler.getTagValue( jobnode, "shared_objects_file" ); if ( rep == null || ignoreRepositorySharedObjects ) { sharedObjects = readSharedObjects(); } else { sharedObjects = rep.readJobMetaSharedObjects( this );
.setSharedObjectsFile( jobRow.getString( KettleDatabaseRepository.FIELD_JOB_SHARED_FILE, null ) ); jobMeta.setSharedObjects( repository != null ? repository.readJobMetaSharedObjects( jobMeta ) : jobMeta.readSharedObjects() ); } catch ( Exception e ) { log