public ProcessConfig addProcedureNodes(String... procedureNodes) {
		if (procedureNodes != null) {
			for (String node : procedureNodes) {
				if (node != null) {
					ProcessNode pn = null;
					String realNodeName = node;
					if(node.startsWith("fork:")){
						realNodeName = node.replaceFirst("fork:", "");
						pn = new ForkNode(realNodeName);
					}
					else if(node.startsWith("join:")){
						realNodeName = node.replaceFirst("join:", "");
						pn = new JoinNode(realNodeName);
					}
					else if(node.startsWith("multiple:")){
						realNodeName = node.replaceFirst("multiple:", "");
						pn = new MultipleNode(realNodeName);
					}
					else if(node.startsWith("multiple_step:")){
						realNodeName = node.replaceFirst("multiple_step:", "");
						pn = new MultipleStepNode(realNodeName);
					}
					else
						pn = new ProcessNode(realNodeName);
					if(pn!=null)
						this.procedureNodes.put(realNodeName, pn);
				}
			}
		}
		return this;
	}