
## Appendix 1——Example of signal sending
```
//Method: com.horizon.wf.expand.signal

Signal signal = new Signal();
signal.setSignalPara(Signal content);
signal.setIdentifier(Data source ID);
SignalListenerUtil.sendSignal(signal);
```
## Appendix 2——WorkflowOperator Summary of Process Operation Class Methods
```
/**
*Create Process Instance
*@param workParaBean, Parameter objects required for creating instances
*@return ,Instance related data
*/
IWorkResult create(WorkParaBean workParaBean)

/**
*Close Instance
*@param workid ,Instance ID
*@param trackid ,Track ID
* @param userid ,User ID
*/
void close(String workid,String trackid,String userid)

/**
*Open Process Instance
*@param workParaBean , Parameter objects required for creating instances
*@return  ,Instance related data
*/
IWorkResult open(WorkParaBean workParaBean)

/**
*Operating process instance, passing in different parameters, completing different operations
*@param workParaBean , Parameter objects required for creating instances
*@return  ,Instance related data
*/
IWorkResult operator(WorkParaBean workParaBean)

/**
*Obtain process history record
*@param workid ，Instance ID　
*@return ,Instance log 
*/
List getHistory(String workid, String identifier)
```
## Appendix 3——Result return value in WorkBean
```
//===============Instance initialization return value ==start=======================
	/**
	 * Initialization Result
	 * Init_Success 	= 100
	 * Normal,
	 */
	public static final int  Init_Success 	= 100; 
	/**
	 * Init_ReadMsg 	= 110
	 * Read-only 
	 */
	public static final int  Init_ReadMsg 	= 110;
	/**
	 * Init_Locked 	= 120
	 * Locked by others
	 */
	public static final int  Init_Locked 	= 120;
	/**
	 * Init_Cluster =130
	 * The instance is currently processed in another engine
	 */
	public static final int  Init_Cluster	= 130;
	
	/**
	 * When the current person is at multiple active nodes
	 */
	public static final int Init_SelectNode = 140;
	
	/**
	 * license validation failed
	 */
	public static final int Init_License 	= 200;
	
	/**
	 * Init_NoRole  		= 210
	 * No permissions
	 */
	public static final int  Init_NoRole  	= 210;
	
	/**
	 * Init_Failed=290
	 * Other failures
	 */
	public static final int  Init_Failed 	= 290; 
	
	
	//Other failures（Obtain error information from the backMsg field in WorkBean）
	//================Instance initialization return value==end===========================

	//================Instance operation return value==start===========================
	/**
	 * Operation return type definition
	 * F_STATUS_Success=0.
	 * Success
	 */
	public static final int F_STATUS_Success 		= 0;
	/**
	 * F_STATUS_NoFound =1
	 * Unable to obtain the next node
	 */
	public static final int F_STATUS_NoFound 		= 1; 
	/**
	 * F_STATUS_SelectNode=2
	 * Prompt to select nodes
	 */
	public static final int F_STATUS_SelectNode 	= 2;
	/**
	 * F_STATUS_NoAuthor=3
	 * Prompt that the operator is empty
	 */
	public static final int F_STATUS_NoAuthor 		= 3; 
	/**
	 * F_STATUS_SelectAuthor=4
	 * Prompt to select nodes
	 */
	public static final int F_STATUS_SelectAuthor	= 4; 
	/**
	 * F_STATUS_FlowEnd=5
	 * End of process
	 */
	public static final int F_STATUS_FlowEnd 		= 5; 
	/**
	 * F_STATUS_SubFlowNoEnd=6
	 * Sub process not ended
	 */
	public static final int F_STATUS_SubFlowNoEnd	= 6; 
	/**
	 * F_STATUS_FlowPause=7
	 * Process pause
	 */
	public static final int F_STATUS_FlowPause    = 7; 
	/**
	 * F_STATUS_FlowErrorEnd=8
	 * Process abnormal termination
	 */
	public static final int F_STATUS_FlowErrorEnd	= 8; 	
	/**
	 * F_STATUS_OtherError=9
	 * Other error prompts
	 */
	public static final int F_STATUS_OtherError  = 9;

    /**
	 * F_STATUS_SecondSubmit=16
	 * Submitted by the assistant
	 */
    public static final int F_STATUS_SecondSubmit  = 16;
    /**
	 * F_STATUS_UnitSubmit=17
	 * Does not meet the leaving rule for merged nodes
	 */
    public static final int F_STATUS_UnitSubmit  = 17;
 
    /**
	 * F_STATUS_EntryRule_Error=22
	 * Node enter rule invoking error
	 */
     public static final int F_STATUS_EntryRule_Error  = 22;
     /**
	 * F_STATUS_LeaveRule_Error=23
	 * Node leave rule invoking error
	 */
     public static final int F_STATUS_LeaveRule_Error  = 23;
     
    /**
	 * F_STATUS_Not_Operator_Nodetype =24
	 *This node type does not support the corresponding operation - Multi-Operator and Add Reviewer
	 */    
	public static final int F_STATUS_Not_Operator_Nodetype = 24;
     /**
	 * F_STATUS_StartRule_Error=25
	 * Enable rule invoking error
	 */
     public static final int F_STATUS_StartRule_Error  = 25;
     /**
	 * F_STATUS_Active_Track_Error = 26;
     *Node activation failed
	 */
	public static final int F_STATUS_Active_Track_Error = 26;

```