4.5.4.1States
All user side state tables use the same set of states. The main states are identical to those defined in the CCSDS Recommended Standards for SLE transfer services. Sub-states have been added to allow presentation of further details related to the interactions with the application and the proxy. The states are defined as follows.
UNBOUND:UNBOUND The user is not bound to the service instance.
UNBOUND:BIND PEND A BIND invocation has been issued, the service provider has not yet responded.
READY:BOUND A BIND return with a positive result has been received and no START invocation has been sent, or a STOP operation has been completed.
READY:START PEND A START invocation has been issued, the service provider has not yet responded.
READY:UNBIND PEND An UNBIND invocation has been issued, the service provider has not yet responded.
ACTIVE:ACTIVE A START return with a positive result has been received.
ACTIVE:STOP PEND A STOP invocation has been issued, the service provider has not yet responded.
4.5.4.2Common State Table—User Initiated Binding 4.5.4.2.1Events 4.5.4.2.1.1Events received from the Application Interface (ISLE_ServiceInitiate)
BindInv call to InitiateOpInvoke() with a Bind operation
UnbindInv call to InitiateOpInvoke() with a Unbind operation
GetPrmInv call to InitiateOpInvoke() with a get parameter operation
ScheduleStatRepInv call to InitiateOpInvoke() with a schedule status-report operation
PeerAbortInv call to InitiateOpInvoke() with a Peer Abort operation
4.5.4.2.1.2Events sent to the Application Interface (ISLE_ServiceInform)
BindRet call to InformOpReturn() with a BIND operation
UnbindRet call to InformOpReturn() with a Unbind operation
GetPrmRet call to InformOpReturn() with a get parameter operation
ScheduleStatRepRet call to InformOpReturn() with a schedule status-report operation
StatusReportInv call to InformOpInvoke() with a status report operation
PeerAbortInv call to InformOpInvoke() with a PEER-ABORT operation
ProtocolAbort call to ProtocolAbort()
4.5.4.2.1.3Events received from the Proxy Interface (ISLE_SrvProxyInform)
BindRet call to InformOpReturn() with a BIND operation
UnbindRet call to InformOpReturn() with a UNBIND operation
GetPrmRet call to InformOpReturn() with a GET-PARAMETER operation
ScheduleStatRepRet call to InformOpReturn() with a SCHEDULE-STATUS-REPORT operation
StatusReportInv call to InformOpInvoke() with a status report operation
PeerAbortInv call to InformOpInvoke() with a PEER-ABORT operation
ProtocolAbort call to ProtocolAbort()
4.5.4.2.1.4Events sent to the Proxy Interface (ISLE_SrvProxyInitiate)
BindInv call to InitiateOpInvoke() with a BIND operation
UnbindInv call to InitiateOpInvoke() with a UNBIND operation
GetPrmInv call to InitiateOpInvoke() with a GET-PARAMETER operation
ScheduleStatRepInv call to InitiateOpInvoke() with a SCHEDULE-STATUS-REPORT operation
PeerAbortInv call to InitiateOpInvoke() with a PEER-ABORT operation
4.5.4.2.1.5Internal Events
Peer Abort peer abort event generated by a pre-processing function or a post-processing function
Return timeout the time to wait for a specific return-PDU has elapsed
4.5.4.2.2Predicates
result = positive The result parameter in the PDU indicates ‘positive result’.
result = negative The result parameter in the PDU indicates ‘negative result’.
4.5.4.2.3Actions 4.5.4.2.3.1Discrete Actions
/reject(reason) Reject the event by returning an error code to the function invoking the event.
/clear local returns Clear the list of pending local returns and release operation objects.
4.5.4.2.3.2Compound Actions
/ABORT
Abort processing is forward/return-service specific (see /ABORT in 4.5.4.3 and 4.5.4.4).
/CLEANUP
Cleanup processing is forward/return-service specific (see /CLEANUP in 4.5.4.3 and 4.5.4.4).
4.5.4.2.4Common State Table—User Side
|
1 UNBOUND
|
2 READY
|
3 ACTIVE
|
1.1 UNBOUND
|
1.2 BIND PEND
|
2.1 BOUND
|
2.2 START PEND
|
2.3 UNBIND PEND
|
AIF:
BindInv
|
^PIF.BindInv
1.2
|
/reject(protocol error)
|
PIF:
BindRet
|
/reject(protocol error)
|
^AIF.BindRet
[result = positive]
2.1
[result = negative]
1.1
|
/reject(protocol error)
|
AIF:
UnbindInv
|
/reject(protocol error)
|
^PIF.UnbindInv
/clear local returns
2.3
|
/reject(protocol error)
|
PIF:
UnbindRet
|
/reject(protocol error)
|
^AIF.UnbindRet
/CLEANUP
1.1
|
/reject(protocol error)
|
AIF:
GetPrmInv
|
/reject(protocol error)
|
^PIF.GetPrmInv
|
/reject(protocol err)
|
^PIF.GetPrmInv
|
PIF:
GetPrmRet
|
/reject(protocol error)
|
^AIF.GetPrmRet {1}
|
AIF: ScheduleStatRepInv
|
reject(protocol error)
|
^PIF.ScheduleStatRepInv
|
/reject(protocol err)
|
^PIF.ScheduleStatRepInv
|
PIF: ScheduleStatRepRet
|
/reject(protocol error)
|
^AIF.ScheduleStatRepRet {1}
|
PIF:
StatusReportInv
|
/reject(protocol error)
|
^AIF.StatusReportInv {2}
|
PIF:
PeerAbortInv
|
/reject(protocol error)
|
^AIF.PeerAbortInv
/CLEANUP
1.1
|
AIF:
PeerAbortInv
|
/reject(protocol error)
|
^PIF.PeerAbortInv
/CLEANUP
1.1
|
PIF:
ProtocolAbort
|
/reject(protocol error)
|
^AIF.ProtoclAbortInv
/CLEANUP
1.1
|
INT:
Return timeout
|
N/A
|
/ABORT (return timeout)
1.1
|
INT:
PeerAbort(reason)
|
N/A
|
/ABORT(reason)
1.1
|
NOTES
-
In the state UNBIND-PENDING, returns can still be received from the peer.
-
In the state UNBIND-PENDING, no further invocations should be sent by the peer. However, the peer may not yet have seen the UNBIND invocation. Therefore all invocations are passed to the application. The application should no longer respond.
Share with your friends: |