/* * Copyright (C) 2006-2016 DLR, Germany * * All rights reserved * * http://www.rcenvironment.de/ */ package de.rcenvironment.core.component.api; import java.util.ArrayList; import java.util.List; import de.rcenvironment.core.component.execution.api.Component; import de.rcenvironment.core.component.execution.api.ComponentState; import de.rcenvironment.core.component.model.api.ComponentColor; import de.rcenvironment.core.component.model.api.ComponentShape; import de.rcenvironment.core.component.model.api.ComponentSize; /** * Class holding component constants. * * @author Jens Ruehmkorf * @author Doreen Seider * @author Heinrich Wendel */ public final class ComponentConstants { /** * Prefix for component identifiers. */ public static final String COMPONENT_IDENTIFIER_PREFIX = "de.rcenvironment."; /** * Key to identify a created component controller instance at the service registry. */ public static final String COMP_INSTANCE_ID_KEY = "rce.component.controller.instance"; /** * Key to identify a created component context controller instance at the service registry. */ public static final String COMP_CONTEXT_INSTANCE_ID_KEY = "rce.component.workflow.instance"; /** * Separator used in component controller instance key. */ public static final String COMPONENT_ID_SEPARATOR = "_"; /** * Key for full component's identifier. */ public static final String COMPONENT_ID_KEY = "rce.component.id"; /** * Key for full qualified name of the component implementing class. */ public static final String COMPONENT_CLASS_KEY = "rce.component.class"; /** * Key for componentValidator id. */ public static final String COMPONENT_VALIDATOR_ID_KEY = "rce.component.validator.identifier"; /** Key for component's name. */ public static final String COMPONENT_NAME_KEY = "rce.component.name"; /** Key for component's group. */ public static final String COMPONENT_NAME_GROUP = "rce.component.group"; /** * Key used within the properties of the component to define its version. */ public static final String VERSION_DEF_KEY = "rce.component.version"; /** * Key that specifies the location of the 16x16px icon for the component to show in the GUI. */ public static final String ICON_16_KEY = "rce.component.icon-16"; /** * Key that specifies the location of the 24x24px icon for the component to show in the GUI. */ public static final String ICON_24_KEY = "rce.component.icon-24"; /** * Key that specifies the location of the 32x32px icon for the component to show in the GUI. */ public static final String ICON_32_KEY = "rce.component.icon-32"; /** * Key that specifies the bundle in which the icons can be found. This is an optional key. */ public static final String COMPONENT_ICON_BUNDLE_NAME_KEY = "rce.component.icon.bundlename"; /** * Key for component's indefinite data type behevior. */ public static final String COMPONENT_CAN_HANDLE_NAV_INPUT_DATA_TYPES = "rce.component.canHandleNotAValueDataTypes"; /** * Key for component's color. */ public static final String COMPONENT_COLOR_KEY = "rce.component.color"; /** * Key for component's shape. */ public static final String COMPONENT_SHAPE_KEY = "rce.component.shape"; /** * Key for component's size. */ public static final String COMPONENT_SIZE_KEY = "rce.component.size"; /** * Key that specifies if the component should be drawn small or not.. */ public static final String IS_SMALL_COMPONENT = "rce.component.small"; /** * Key used within the properties of the component to define inputs as a comma separated list. */ public static final String INPUTS_DEF_KEY = "rce.component.inputs"; /** * Key used within the properties of the component to define outputs as a comma separated list. */ public static final String OUTPUTS_DEF_KEY = "rce.component.outputs"; /** * Key used within the properties of the component to define possible configuration keys as a comma separated list. */ public static final String CONFIGURATION_DEF_KEY = "rce.component.configuration"; /** * The entry of the Manifest indicating that the bundle provides at least one integrated {@link Component}. */ public static final String MANIFEST_ENTRY_RCE_COMPONENT = "RCE-Component"; /** * Manifest header key for definition of additional (regarding to an existing component) configuration definitions. */ public static final String MANIFEST_ENTRY_RCE_COMPONENT_EXTENSION_CONFIGURATION = "RCE-ComponentExtension-Configuration"; /** * Manifest header key for definition of additional (regarding to an existing component) input meta data definitions. */ public static final String MANIFEST_ENTRY_RCE_COMPONENT_EXTENSION_INPUT_META_DATA = "RCE-ComponentExtension-InputMetaData"; /** * Manifest header key for definition of additional (regarding to an existing component) output meta data definitions. */ public static final String MANIFEST_ENTRY_RCE_COMPONENT_EXTENSION_OUTPUT_META_DATA = "RCE-ComponentExtension-OutputMetaData"; /** * Separator in notification ids. */ public static final String NOTIFICATION_ID_SEPARATOR = ":"; /** * Prefix for identifier of output notifications. */ public static final String OUTPUT_NOTIFICATION_ID_PREFIX = "rce.component.output:"; /** * Notification identifier for state notifications. */ public static final String STATE_NOTIFICATION_ID_PREFIX = "rce.component.state:"; /** * Notification identifier for notifications about number or runs. */ public static final String ITERATION_COUNT_NOTIFICATION_ID_PREFIX = "rce.component.noofruns:"; /** * Notification identifier for finshed state notifications. */ public static final String FINISHED_STATE_NOTIFICATION_ID_PREFIX = "rce.component.state.finished:"; /** * Notification identifier for falied state notifications. */ public static final String FAILED_STATE_NOTIFICATION_ID_PREFIX = "rce.component.state.failed:"; /** * Notification identifier for input values notifications. */ public static final String NOTIFICATION_ID_PREFIX_PROCESSED_INPUT = "rce.component.input:"; /** Substring of identifier of placeholder component used if a given one is not available. */ public static final String PLACEHOLDER_COMPONENT_IDENTIFIER_CLASS = "de.rcenvironment.rce.component.Placeholder_"; /** Group name for unknown components. */ public static final String COMPONENT_GROUP_UNKNOWN = "Other"; /** Group name for unknown components. */ public static final String COMPONENT_GROUP_TEST = "Test"; /** usage type 'required': input value must be provided by previous component. */ public static final String INPUT_USAGE_TYPE_REQUIRED = "required"; /** usage type 'initial': input value must be provided at least once by previous component. */ public static final String INPUT_USAGE_TYPE_INITIAL = "initial"; /** * usage type 'optional': input value can be provided by previous component but doesn't have to. */ public static final String INPUT_USAGE_TYPE_OPTIONAL = "optional"; /** usage types for dynamic inputs. */ public static final String[] INPUT_USAGE_TYPES = { INPUT_USAGE_TYPE_REQUIRED, INPUT_USAGE_TYPE_INITIAL, INPUT_USAGE_TYPE_OPTIONAL }; /** meta data key for defining usage of dynamic inputs. */ public static final String METADATAKEY_INPUT_USAGE = "usage"; /** meta data key for defining scheduling attribute. */ public static final String INPUT_METADATA_KEY_INPUT_DATUM_HANDLING = "inputHandling_73b1056e"; /** meta data key for defining scheduling attribute. */ public static final String INPUT_METADATA_KEY_INPUT_EXECUTION_CONSTRAINT = "inputExecutionConstraint_4aae3eea"; /** Constant. */ public static final String KEY_NAME = "name"; /** Constant. */ public static final String KEY_DATATYPE = "dataType"; /** Constant. */ public static final String KEY_DEFAULT_VALUE = "defaultValue"; /** Constant for ID separation. */ public static final String ID_SEPARATOR = "/"; /** Constant. */ public static final String CONFIG_KEY_ENABLE_INPUT_TAB = "enableDeprecatedInputTab"; /** Constant. */ public static final String CONFIG_KEY_STORE_DATA_ITEM = "storeComponentHistoryData"; /** Constant. */ public static final String COMPONENT_CONFIG_KEY_REQUIRES_OUTPUT_APPROVAL = "requiresOutputApproval"; /** Constant. */ public static final ComponentColor COMPONENT_COLOR_STANDARD = ComponentColor.YELLOW; /** Constant. */ public static final ComponentSize COMPONENT_SIZE_STANDARD = ComponentSize.MEDIUM; /** Constant. */ public static final ComponentShape COMPONENT_SHAPE_STANDARD = ComponentShape.SQUARE; /** Finished component states. */ public static final List<ComponentState> FININISHED_COMPONENT_STATES = new ArrayList<>(); /** Failed component states. */ public static final List<ComponentState> FAILED_COMPONENT_STATES = new ArrayList<>(); /** Final component states. */ public static final List<ComponentState> FINAL_COMPONENT_STATES = new ArrayList<>(); /** Final component states. */ public static final List<ComponentState> FINAL_COMPONENT_STATES_WITH_DISPOSED = new ArrayList<>(); static { FININISHED_COMPONENT_STATES.add(ComponentState.FINISHED); FININISHED_COMPONENT_STATES.add(ComponentState.FINISHED_WITHOUT_EXECUTION); FAILED_COMPONENT_STATES.add(ComponentState.FAILED); FAILED_COMPONENT_STATES.add(ComponentState.RESULTS_REJECTED); FINAL_COMPONENT_STATES.addAll(FININISHED_COMPONENT_STATES); FINAL_COMPONENT_STATES.addAll(FAILED_COMPONENT_STATES); FINAL_COMPONENT_STATES.add(ComponentState.CANCELED); FINAL_COMPONENT_STATES_WITH_DISPOSED.addAll(FINAL_COMPONENT_STATES); FINAL_COMPONENT_STATES_WITH_DISPOSED.add(ComponentState.DISPOSED); } /** Private Constructor. */ private ComponentConstants() { // NOP } }