- CPS-1034Getting issue details... STATUS
# | Issue | Notes/Jira | Decision |
---|---|---|---|
1 |
Implementation Proposal
Problem Statement :
To publish the NcmpEvent when there is a change in the cmHandleState ( state transition )
Scenarios to keep in mind
- We have to introduce a detail field in the NcmpEvent payload which can contain the previous state and other details.
- We have to publish an event on public properties update ( even though we dont have any state change ???? )
Potential Solutions
- Use code triggers
- Any other solution ? Common State Handler
Solution #1 : Code Triggers
- Identify all the possible cm handle state transitions.
State Transition Event | previousState | targetState |
---|---|---|
NOTHING_TO_ADVISED | NOTHING | ADVISED |
ADVISED_TO_LOCKED | ADVISED | LOCKED |
LOCKED_TO_ADVISED | LOCKED | ADVISED |
ADVISED_TO_READY | ADVISED | READY |
READY_TO_LOCKED | READY | LOCKED |
LOCKED_TO_READY | LOCKED | READY |
ADVISED_TO_DELETING | ADVISED | DELETING |
READY_TO_DELETING | READY | DELETING |
LOCKED_TO_DELETING | LOCKED | DELETING |
DELETING_TO_DELETED | DELETING | DELETED |
- Create a cmHandleState handler which takes in the cmHandleState transition event
-- Responsible for identifying the state transition
-- Based on state transition call the relevant methods to create the NcmpEvent accordingly. - Identify the trigger points in the code where the actual state transitioning is happening and call the handler from there and provide the type of transition.
Overview
2.
References :
CPS-799 Spike: Define states and state handling for CM handle
CPS-858 Define Notifications on CM Handle Add (Ready) & Delete