Class 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 Detail

      • logger

        protected static final Logger logger
        a Logger
    • Constructor Detail

      • UpdateExecutableBusinessProcess

        public UpdateExecutableBusinessProcess()
    • Method Detail

      • 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