Class UpdateExecutableBusinessProcess

java.lang.Object
de.aristaflow.adept2.core.changeoperations.UpdateExecutableBusinessProcess

public class UpdateExecutableBusinessProcess extends Object
Change Operation to update the properties of an executable business process. Call isPossible first to check if the update is valid, than call perform operation to execute the change. TODO Refactor; use a common interface for change operations. TODO Check concept: Which properties are changeable?
  • Field Details

    • logger

      protected static final Logger logger
      a Logger
  • Constructor Details

    • UpdateExecutableBusinessProcess

      public UpdateExecutableBusinessProcess()
  • Method Details

    • isPossible

      public static boolean isPossible(Template template, int nodeID, ExecutableBusinessProcess ebp, ProcessConstants.ExecutableBusinessProcessProperty... ebpProperties)
      Tests if it is valid (concerning structural correctness) to change the executable business process properties given by ebpProperties in the template. The following attributes / properties may be updated and must therefore be tested:
      • TODO Check which properties are changeable
      Parameters:
      template - the template where the method is performed on
      nodeID - the id of the node where the the EBP is assigned to
      ebp - the EBP whose properties are to be changed
      ebpProperties - the properties which are to be changed
      Returns:
      true if the change of the given properties are valid
    • isPossible

      public static boolean isPossible(Template template, int nodeID, ExecutableBusinessProcess ebp, CheckReport checkReport, ProcessConstants.ExecutableBusinessProcessProperty... ebpProperties)
      Tests if it is valid (concerning structural correctness) to change the executable business process properties given by ebpProperties in the template. The following attributes / properties may be updated and must therefore be tested:
      • TODO Check which properties are changeable
      If it is not possible the reasons are stored in the checkReport.
      Parameters:
      template - the template where the method is performed on
      nodeID - the id of the node where the the EBP is assigned to
      ebp - the EBP whose properties are to be changed
      checkReport - a checkReport object which can be filled with the reason why the isPossible failed (i.e. in the case the method returns false), may be null
      ebpProperties - the properties which are to be changed
      Returns:
      true if the change of the given properties are valid
    • isPossible

      public static boolean isPossible(ChangeableInstance instance, int nodeID, ExecutableBusinessProcess ebp, ProcessConstants.ExecutableBusinessProcessProperty... ebpProperties)
      Tests if it is valid (concerning structural and state-based correctness) to change the executable business process properties given by ebpProperties in the instance. The following attributes / properties may be updated and must therefore be tested:
      • TODO Check which properties are changeable
      Parameters:
      instance - the changeable instance where the method is performed on
      nodeID - the id of the node where the the EBP is assigned to
      ebp - the EBP whose properties are to be changed
      ebpProperties - the properties which are to be changed
      Returns:
      true if the change of the given properties are valid
    • isPossible

      public static boolean isPossible(ChangeableInstance instance, int nodeID, ExecutableBusinessProcess ebp, CheckReport checkReport, ProcessConstants.ExecutableBusinessProcessProperty... ebpProperties)
      Tests if it is valid (concerning structural and state-based correctness) to change the executable business process properties given by ebpProperties in the instance. The following attributes / properties may be updated and must therefore be tested:
      • TODO Check which properties are changeable
      If it is not possible the reasons are stored in the checkReport.
      Parameters:
      instance - the changeable instance where the method is performed on
      nodeID - the id of the node where the the EBP is assigned to
      ebp - the EBP whose properties are to be changed
      checkReport - a checkReport object which can be filled with the reason why the isPossible failed (i.e. in the case the method returns false), may be null
      ebpProperties - the properties which are to be changed
      Returns:
      true if the change of the given properties are valid
    • performOperation

      public static void performOperation(ChangeableTemplate template, int nodeID, ExecutableBusinessProcess ebp, ProcessConstants.ExecutableBusinessProcessProperty... ebpProperties)
      TODO maybe there are a lot of more attributes which have to be changeable Updates the Executable Business Process of the node with the given ID, using the values of the given EBP object in the given template. The EBP object is used as an container only. The following attributes / properties of the EBP may be updated (depending on the type of the EBP, i.e. an Activity or an LWP):
      • NAME
      • STAFF_ASSIGNMENT_RULE (Activity)
      • EXECUTABLE_COMPONENT_NAME (Activity)
      • CONFIGURATION (Activity)
      • TEST_CONFIGURATION (Activity)
      The EBP will not be replaced by the given EBP object (use updateNode with property EXECUTABLE_BUSINESS_PROCESS instead).
      Parameters:
      template - the template where the method is performed on
      nodeID - the id of the node where the the EBP is assigned to
      ebp - the EBP whose properties are to be changed
      ebpProperties - the properties which are to be changed
    • performOperation

      public static void performOperation(ChangeableTemplate template, int nodeID, ExecutableBusinessProcess ebp, UpdateManager updateManager, ProcessConstants.ExecutableBusinessProcessProperty... ebpProperties)
      TODO maybe there are a lot of more attributes which have to be changeable Updates the Executable Business Process of the node with the given ID, using the values of the given EBP object in the given template. The EBP object is used as an container only. (Method with updateManager) The following attributes / properties of the EBP may be updated (depending on the type of the EBP, i.e. an Activity or an LWP):
      • NAME
      • EXECUTABLE_COMPONENT_NAME (Activity)
      • CONFIGURATION (Activity)
      • TEST_CONFIGURATION (Activity)
      The EBP will not be replaced by the given EBP object (use updateNode with property EXECUTABLE_BUSINESS_PROCESS instead).
      Parameters:
      template - the template where the method is performed on
      nodeID - the id of the node where the the EBP is assigned to
      ebp - the EBP whose properties are to be changed
      updateManager - The UpdateManager where modifications are logged, may be null
      ebpProperties - the properties which are to be changed
    • performOperation

      public static void performOperation(ChangeableInstance instance, int nodeID, ExecutableBusinessProcess ebp, ProcessConstants.ExecutableBusinessProcessProperty... ebpProperties)
      TODO maybe there are a lot of more attributes which have to be changeable Updates the Executable Business Process of the node with the given ID, using the values of the given EBP object in the given instance. The EBP object is used as a container only. The following attributes / properties of the EBP may be updated (depending on the type of the EBP, i.e. an Activity or an LWP):
      • NAME
      • STAFF_ASSIGNMENT_RULE (Activity)
      • EXECUTABLE_COMPONENT_NAME (Activity)
      • CONFIGURATION (Activity)
      • TEST_CONFIGURATION (Activity)
      The EBP will not be replaced by the given EBP object (use updateNode with property EXECUTABLE_BUSINESS_PROCESS instead).
      Parameters:
      instance - the changeable instance where the method is performed on
      nodeID - the id of the node where the the EBP is assigned to
      ebp - the EBP whose properties are to be changed
      ebpProperties - the properties which are to be changed
    • performOperation

      public static void performOperation(ChangeableInstance instance, int nodeID, ExecutableBusinessProcess ebp, UpdateManager updateManager, ProcessConstants.ExecutableBusinessProcessProperty... ebpProperties)
      TODO maybe there are a lot of more attributes which have to be changeable Updates the Executable Business Process of the node with the given ID, using the values of the given EBP object in the given instance. The EBP object is used as an container only. (Method with updateManager) The following attributes / properties of the EBP may be updated (depending on the type of the EBP, i.e. an Activity or an LWP):
      • NAME
      • EXECUTABLE_COMPONENT_NAME (Activity)
      • CONFIGURATION (Activity)
      • TEST_CONFIGURATION (Activity)
      The EBP will not be replaced by the given EBP object (use updateNode with property EXECUTABLE_BUSINESS_PROCESS instead).
      Parameters:
      instance - the changeable instance where the method is performed on
      nodeID - the id of the node where the the EBP is assigned to
      ebp - the EBP whose properties are to be changed
      updateManager - The UpdateManager where modifications are logged, may be null
      ebpProperties - the properties which are to be changed
    • performOperation

      protected static void performOperation(ChangePrimitives processGraph, int nodeID, ExecutableBusinessProcess ebp, UpdateManager updateManager, ProcessConstants.ExecutableBusinessProcessProperty... ebpProperties)
      Worker method to do the structural changes for both changeable templates and changeable instances.
      Parameters:
      processGraph - an instance of type ChangeableTemplate or ChangeableInstance
      nodeID - the id of the node where the the EBP is assigned to
      ebp - the EBP whose properties are to be changed
      updateManager - The UpdateManager where modifications are logged, may be null
      ebpProperties - the properties which are to be changed