public List<String> getDependencies() {
   List<String> dependencies = new ArrayList<String>();
   for (WorkFlowComponentConfiguration wfc : workFlowConfig.getComponents().values()) {
     dependencies.add(wfc.getComponentConfig().getComponent());
   }
   return dependencies;
 }
 @Override
 public int hashCode() {
   final int prime = 31;
   int result = super.hashCode();
   result = prime * result + ((localParameters == null) ? 0 : localParameters.hashCode());
   result = prime * result + ((workFlowConfig == null) ? 0 : workFlowConfig.hashCode());
   return result;
 }
 @Override
 public boolean equals(Object obj) {
   if (this == obj) return true;
   if (!super.equals(obj)) return false;
   if (getClass() != obj.getClass()) return false;
   WorkFlowDefinition other = (WorkFlowDefinition) obj;
   if (localParameters == null) {
     if (other.localParameters != null) return false;
   } else if (!localParameters.equals(other.localParameters)) return false;
   if (workFlowConfig == null) {
     if (other.workFlowConfig != null) return false;
   } else if (!workFlowConfig.equals(other.workFlowConfig)) return false;
   return true;
 }
 @Override
 public Map<String, List<String>> getPossibleValuesForExitParam() {
   Map<String, List<String>> resp = new LinkedHashMap<String, List<String>>();
   resp.put(WORKFLOW_EXIT_POINT_LABEL, workFlowConfig.getExitLabelsList());
   return resp;
 }