120 lines
4.2 KiB
Java
120 lines
4.2 KiB
Java
package eu.dnetlib.manager.wf.workflows.util;
|
|
|
|
import java.util.ArrayList;
|
|
import java.util.HashMap;
|
|
import java.util.List;
|
|
import java.util.Map;
|
|
|
|
import org.springframework.beans.factory.annotation.Required;
|
|
|
|
import com.google.gson.Gson;
|
|
|
|
public class WorkflowsConstants {
|
|
|
|
public static final String DATASOURCE_PREFIX = "datasource:";
|
|
|
|
public static final String LOG_WF_NAME = "system:wfName";
|
|
public static final String LOG_WF_ID = "system:wfId";
|
|
public static final String LOG_WF_INSTANCE_ID = "system:wfInstanceId";
|
|
|
|
public static final String LOG_WF_FAMILY = "system:family";
|
|
public static final String LOG_WF_PRIORITY = "system:priority";
|
|
public static final String LOG_WF_PROCESS_ID = "system:processId";
|
|
public static final String LOG_WF_PROCESS_STATUS = "system:processStatus";
|
|
public static final String LOG_WF_PROCESS_START_DATE = "system:startDate";
|
|
public static final String LOG_WF_PROCESS_END_DATE = "system:endDate";
|
|
public static final String LOG_WF_PARENT = "system:parentProfileId";
|
|
|
|
public static final String LOG_SYSTEM_ERROR = "system:error";
|
|
public static final String LOG_SYSTEM_ERROR_STACKTRACE = "system:error:stacktrace";
|
|
|
|
public static final String LOG_DATASOURCE_NAME = WorkflowsConstants.DATASOURCE_PREFIX + "name";
|
|
public static final String LOG_DATASOURCE_ID = WorkflowsConstants.DATASOURCE_PREFIX + "id";
|
|
public static final String LOG_DATASOURCE_INTERFACE = WorkflowsConstants.DATASOURCE_PREFIX + "interface";
|
|
|
|
public static final String BLACKBOARD_IS_BLACKBOARD = "blackboard:isBlackboard";
|
|
public static final String BLACKBOARD_JOB = "blackboard:job";
|
|
public static final String BLACKBOARD_SERVICE_ID = "blackboard:serviceId";
|
|
public static final String BLACKBOARD_IS_GOING = "blackboard:isOngoing";
|
|
public static final String BLACKBOARD_PARAM_PREFIX = "blackboard:param:";
|
|
|
|
// public static final String DATASOURCE_ACRONYM = WorkflowsConstants.DATASOURCE_PREFIX + "acronym";
|
|
// public static final String DATASOURCE_URL = WorkflowsConstants.DATASOURCE_PREFIX + "url";
|
|
|
|
public static final int MIN_WF_PRIORITY = 0;
|
|
public static final int MAX_WF_PRIORITY = 100;
|
|
public static final int DEFAULT_WF_PRIORITY = 50;
|
|
public static final int MAX_PENDING_PROCS_SIZE = 100;
|
|
public static final int MAX_RUNNING_PROCS_SIZE = 100;
|
|
|
|
public static final String MAIN_LOG_PREFIX = "mainlog:";
|
|
|
|
private String datasourceProtocolsJson;
|
|
private String datasourceTypologiesJson;
|
|
private List<Map<String, String>> datasourceProtocols;
|
|
private List<Map<String, String>> datasourceTypologies;
|
|
private List<Map<String, String>> datasourceWorkflowStatuses;
|
|
|
|
@SuppressWarnings("unchecked")
|
|
public void init() {
|
|
final Gson gson = new Gson();
|
|
datasourceProtocols = gson.fromJson(datasourceProtocolsJson, List.class);
|
|
datasourceTypologies = gson.fromJson(datasourceTypologiesJson, List.class);
|
|
datasourceWorkflowStatuses = new ArrayList<>();
|
|
for (final WorkflowStatus s : WorkflowStatus.values()) {
|
|
final Map<String, String> map = new HashMap<>();
|
|
map.put("name", s.displayName);
|
|
map.put("icon", s.icon);
|
|
map.put("value", s.toString());
|
|
datasourceWorkflowStatuses.add(map);
|
|
}
|
|
}
|
|
|
|
public String getDatasourceProtocolsJson() {
|
|
return datasourceProtocolsJson;
|
|
}
|
|
|
|
@Required
|
|
public void setDatasourceProtocolsJson(final String datasourceProtocolsJson) {
|
|
this.datasourceProtocolsJson = datasourceProtocolsJson;
|
|
}
|
|
|
|
public String getDatasourceTypologiesJson() {
|
|
return datasourceTypologiesJson;
|
|
}
|
|
|
|
@Required
|
|
public void setDatasourceTypologiesJson(final String datasourceTypologiesJson) {
|
|
this.datasourceTypologiesJson = datasourceTypologiesJson;
|
|
}
|
|
|
|
public List<Map<String, String>> getDatasourceProtocols() {
|
|
return datasourceProtocols;
|
|
}
|
|
|
|
public List<Map<String, String>> getDatasourceTypologies() {
|
|
return datasourceTypologies;
|
|
}
|
|
|
|
public List<Map<String, String>> getDatasourceWorkflowStatuses() {
|
|
return datasourceWorkflowStatuses;
|
|
}
|
|
|
|
public enum WorkflowStatus {
|
|
|
|
EXECUTABLE("Executable", "icon-ok"),
|
|
WAIT_USER_SETTINGS("Waiting user settings", "icon-edit"),
|
|
WAIT_SYS_SETTINGS("Waiting system settings",
|
|
"icon-refresh");
|
|
|
|
public String displayName;
|
|
public String icon;
|
|
|
|
WorkflowStatus(final String displayName, final String icon) {
|
|
this.displayName = displayName;
|
|
this.icon = icon;
|
|
}
|
|
}
|
|
|
|
}
|