@Override public void pluginLoaded(GoPluginDescriptor descriptor) { loadTaskConfigIntoPreferenceStore(descriptor); }
public ValidationResult validate(String pluginId, TaskConfig taskConfig) { JsonBasedPluggableTask task = new JsonBasedPluggableTask(pluginId, pluginRequestHelper, messageHandlerMap); return task.validate(taskConfig); }
@Override public TaskExecutor executor() { return new JsonBasedTaskExecutor(pluginId, pluginRequestHelper, handlerMap); }
private void loadTaskConfigIntoPreferenceStore(GoPluginDescriptor descriptor) { if (taskExtension.canHandlePlugin(descriptor.id())) { taskExtension.doOnTask(descriptor.id(), (task, pluginDescriptor) -> PluggableTaskConfigStore.store().setPreferenceFor(pluginDescriptor.id(), new TaskPreference(task))); } }
private void cleanupTaskPreferences() { Set<String> plugins = PluggableTaskConfigStore.store().pluginIds(); for (String pluginId : plugins) { PluggableTaskConfigStore.store().removePreferenceFor(pluginId); } }
@Override public void pluginUnLoaded(GoPluginDescriptor descriptor) { PluggableTaskConfigStore.store().removePreferenceFor(descriptor.id()); } }
private TaskPreference taskPreference() { return PluggableTaskConfigStore.store().preferenceFor(pluginConfiguration.getId()); }
@Deprecated // only for test usage public void clear() { Set<String> plugins = pluginIds(); for (String pluginId : plugins) { removePreferenceFor(pluginId); } }
@Override public void build(final DefaultGoPublisher publisher, final EnvironmentVariableContext environmentVariableContext, TaskExtension taskExtension, ArtifactExtension artifactExtension, PluginRequestProcessorRegistry pluginRequestProcessorRegistry, String consoleLogCharset) throws CruiseControlException { ExecutionResult executionResult = null; try { executionResult = taskExtension.execute(pluginId, (task, pluginDescriptor) -> executeTask(task, publisher, environmentVariableContext, consoleLogCharset)); } catch (Exception e) { logException(publisher, e); } finally { JobConsoleLoggerInternal.unsetContext(); } if (executionResult == null) { logError(publisher, "ExecutionResult cannot be null. Please return a success or a failure response."); } if (!executionResult.isSuccessful()) { logError(publisher, executionResult.getMessagesForDisplay()); } }
@Autowired public PluggableTaskMetadataLoader(PluginManager pluginManager, PluggableTaskPluginInfoBuilder builder, TaskExtension extension) { this(pluginManager, PluggableTaskMetadataStore.instance(), builder, extension); }
@After public void teardown() { JobConsoleLoggerInternal.unsetContext(); }
@Override public ExecutionResult onSuccess(String responseBody, Map<String, String> responseHeaders, String resolvedExtensionVersion) { return handlerMap.get(resolvedExtensionVersion).toExecutionResult(responseBody); } });
@Override public TaskView onSuccess(String responseBody, Map<String, String> responseHeaders, String resolvedExtensionVersion) { return handlerMap.get(resolvedExtensionVersion).toTaskView(responseBody); } });
@Override public ValidationResult onSuccess(String responseBody, Map<String, String> responseHeaders, String resolvedExtensionVersion) { return handlerMap.get(resolvedExtensionVersion).toValidationResult(responseBody); } });
@Override public TaskConfig onSuccess(String responseBody, Map<String, String> responseHeaders, String resolvedExtensionVersion) { return handlerMap.get(resolvedExtensionVersion).convertJsonToTaskConfig(responseBody); } });
@Override public String requestBody(String resolvedExtensionVersion) { return handlerMap.get(resolvedExtensionVersion).getTaskExecutionBody(config, taskExecutionContext); }
@Override public String requestBody(String resolvedExtensionVersion) { return handlerMap.get(resolvedExtensionVersion).convertTaskConfigToJson(configuration); }
@Override public String convertTaskConfigToJson(TaskConfig taskConfig) { return new Gson().toJson(configPropertiesAsMap(taskConfig)); }
@After public void teardown() { for (String pluginId : PluggableTaskConfigStore.store().pluginIds()) { PluggableTaskConfigStore.store().removePreferenceFor(pluginId); } }