This documentation is for WSO2 Governance Registry 5.1.0. View documentation for the latest release.
Skip to end of metadata
Go to start of metadata

The configuration model of the WSO2 Governance Registry lifecycles gives users the ability to define custom behavior to a registry lifecycle operation. This model is capable of defining the following custom behaviors:

  • Define permissions for each check item
  • Define custom validations for each check item
  • Define a set of check items for each state transition
  • Define a custom colour for the current lifecycle state
  • Define permissions for each state transition
  • Define custom validations for each state transition
  • Define state duration in the dd:hh:mm:ss format for each lifecycle state
  • Define programmable executions for each state transition
  • Define custom UIs accepting user input for each state transition
  • Define a lifecycle approval for state transition

Configuration Model

<aspect name="SampleLifeCycle" class="org.wso2.carbon.governance.registry.extensions.aspects.DefaultLifeCycle">
    <configuration type="literal">
            <scxml xmlns=""
                <state id="Development">
                        <data name="checkItems">
                            <item name="Code Completed" forEvent="">
                                    <permission roles=""/>
                                    <validation forEvent="" class="">
                                        <parameter name="" value=""/>
                            <item name="WSDL, Schema Created" forEvent="">
                            <item name="QoS Created" forEvent="">
                        <!--<data name="transitionValidation">
                            <validation forEvent="" class="">
                                <parameter name="" value=""/>
                        <data name="transitionPermission">
                            <permission forEvent="" roles=""/>
                        <data name="transitionScripts">
                            <js forEvent="">
                                <console function="">
                                    <script type="text/javascript">
                                <server function="">
                                    <script type="text/javascript"></script>
                        <data name="transitionApproval">
                            <approval forEvent="Promote" roles="" votes="2"/>
                    <transition event="Promote" target="Tested"/>                  
                           <checkpoint id="DevelopmentOne" durationColour="green">
                               <boundary min="0d:0h:0m:0s" max="1d:0h:00m:20s"/>
                           <checkpoint id="DevelopmentTwo" durationColour="red">
                               <boundary min="1d:0h:00m:20s" max="23d:2h:5m:52s"/>
                <state id="Tested">
                        <data name="checkItems">
                            <item name="Effective Inspection Completed" forEvent="">
                            <item name="Test Cases Passed" forEvent="">
                            <item name="Smoke Test Passed" forEvent="">
                    <transition event="Promote" target="Production"/>
                    <transition event="Demote" target="Development"/>
                <state id="Production">  
                    <transition event="Demote" target="Tested"/>

For details of each element of the configuration, see Lifecycle Configuration Elements. For a sample of lifecycle configurations in actions, see the Lifecycle Sample.

  • No labels