use of org.pentaho.di.core.attributes.metastore.EmbeddedMetaStore in project pentaho-kettle by pentaho.
the class RunConfigurationSaveExtensionPoint method callExtensionPoint.
@Override
public void callExtensionPoint(LogChannelInterface logChannelInterface, Object o) throws KettleException {
JobMeta jobMeta = (JobMeta) ((Object[]) o)[0];
final EmbeddedMetaStore embeddedMetaStore = jobMeta.getEmbeddedMetaStore();
RunConfigurationManager embeddedRunConfigurationManager = EmbeddedRunConfigurationManager.build(embeddedMetaStore);
embeddedRunConfigurationManager.deleteAll();
List<String> runConfigurationNames = new ArrayList<>();
boolean embedAll = false;
for (JobEntryCopy jobEntryCopy : jobMeta.getJobCopies()) {
if (jobEntryCopy.getEntry() instanceof JobEntryRunConfigurableInterface) {
String usedConfiguration = ((JobEntryRunConfigurableInterface) jobEntryCopy.getEntry()).getRunConfiguration();
embedAll = embedAll || StringUtil.isVariable(usedConfiguration);
if (!Utils.isEmpty(usedConfiguration) && !runConfigurationNames.contains(usedConfiguration)) {
runConfigurationNames.add(usedConfiguration);
}
}
}
if (embedAll) {
embedAllRunConfigurations(embeddedRunConfigurationManager);
} else {
embedRunConfigurations(embeddedRunConfigurationManager, runConfigurationNames);
}
}
use of org.pentaho.di.core.attributes.metastore.EmbeddedMetaStore in project pentaho-kettle by pentaho.
the class RunConfigurationInjectExtensionPoint method callExtensionPoint.
@Override
public void callExtensionPoint(LogChannelInterface log, Object object) throws KettleException {
if (!(object instanceof JobExecutionExtension)) {
return;
}
JobExecutionExtension extension = (JobExecutionExtension) object;
Job job = extension.job;
JobMeta jobMeta = job.getJobMeta();
final EmbeddedMetaStore embeddedMetaStore = jobMeta.getEmbeddedMetaStore();
RunConfigurationManager embeddedRunConfigurationManager = EmbeddedRunConfigurationManager.build(embeddedMetaStore);
// will load and save to meta all run configurations
for (JobEntryTrans trans : job.getActiveJobEntryTransformations().values()) {
RunConfiguration loadedRunConfiguration = runConfigurationManager.load(jobMeta.environmentSubstitute(trans.getRunConfiguration()));
embeddedRunConfigurationManager.save(loadedRunConfiguration);
}
for (JobEntryJob subJob : job.getActiveJobEntryJobs().values()) {
RunConfiguration loadedRunConfiguration = runConfigurationManager.load(jobMeta.environmentSubstitute(subJob.getRunConfiguration()));
embeddedRunConfigurationManager.save(loadedRunConfiguration);
}
}
use of org.pentaho.di.core.attributes.metastore.EmbeddedMetaStore in project pentaho-kettle by pentaho.
the class RunConfigurationImportExtensionPoint method callExtensionPoint.
@Override
public void callExtensionPoint(LogChannelInterface logChannelInterface, Object o) throws KettleException {
AbstractMeta abstractMeta = (AbstractMeta) o;
final EmbeddedMetaStore embeddedMetaStore = abstractMeta.getEmbeddedMetaStore();
RunConfigurationManager embeddedRunConfigurationManager = EmbeddedRunConfigurationManager.build(embeddedMetaStore);
List<RunConfiguration> runConfigurationList = embeddedRunConfigurationManager.load();
List<String> runConfigurationNames = runConfigurationList.stream().map(RunConfiguration::getName).collect(Collectors.toList());
runConfigurationNames.addAll(runConfigurationManager.getNames());
runConfigurationList.addAll(createSlaveServerRunConfigurations(runConfigurationNames, abstractMeta));
for (RunConfiguration runConfiguration : runConfigurationList) {
if (!runConfiguration.getName().equals(DefaultRunConfigurationProvider.DEFAULT_CONFIG_NAME)) {
runConfigurationManager.save(runConfiguration);
}
}
}
use of org.pentaho.di.core.attributes.metastore.EmbeddedMetaStore in project pentaho-kettle by pentaho.
the class RunConfigurationRunExtensionPoint method callExtensionPoint.
@Override
public void callExtensionPoint(LogChannelInterface logChannelInterface, Object o) throws KettleException {
ExecutionConfiguration executionConfiguration = (ExecutionConfiguration) ((Object[]) o)[0];
AbstractMeta meta = (AbstractMeta) ((Object[]) o)[1];
VariableSpace variableSpace = (VariableSpace) ((Object[]) o)[2];
Repository repository = (Repository) ((Object[]) o)[3];
EmbeddedMetaStore embeddedMetaStore = meta.getEmbeddedMetaStore();
RunConfiguration runConfiguration = runConfigurationManager.load(executionConfiguration.getRunConfiguration());
if (runConfiguration == null) {
RunConfigurationManager embeddedRunConfigurationManager = EmbeddedRunConfigurationManager.build(embeddedMetaStore);
runConfiguration = embeddedRunConfigurationManager.load(executionConfiguration.getRunConfiguration());
}
if (runConfiguration != null) {
RunConfigurationExecutor runConfigurationExecutor = runConfigurationManager.getExecutor(runConfiguration.getType());
if (runConfigurationExecutor != null) {
runConfigurationExecutor.execute(runConfiguration, executionConfiguration, meta, variableSpace, repository);
}
} else {
String name = "";
if (variableSpace instanceof TransMeta) {
name = ((TransMeta) variableSpace).getFilename();
}
throw new KettleException(BaseMessages.getString(PKG, "RunConfigurationRunExtensionPoint.ConfigNotFound.Error", name, executionConfiguration.getRunConfiguration(), "{0}"));
}
}
Aggregations