WIMS> Rewrite of broken ExecuteAction operation

WIMS> Rewrite of broken ExecuteAction operation

McDonald, Ira imcdonald at sharplabs.com
Wed Dec 7 17:09:44 EST 2005


Hi folks,                                    Wednesday (7 December 2005)

After a thorough review by Bill Wagner at today's WIMS telecon...


The Enterprise Management sequence diagram is broken - it shows both
Managers and Agents initiating operation _requests_ in the SAME session
- which is impossible - because HTTP is NOT a peer-to-peer protocol.

Further, the current WIMS ExecuteAction definition is broken - because
it REQUIRES that two sessions (in opposite directions) must be used to
complete a single immediate action - this design flaw is because we
tried to leverage the SendReports operation in the WIMS Agent Interface.


Therefore, below is a new simplified ExecuteAction operation.

While this solves the problem of two sessions (with serious firewall and
security constraints because of opposite directions), it also requires
a few global edits to sections 6.4, 6.5, or 6.6.  See below.

Cheers,
- Ira

PS - I'll revise my plaintext Enterprise Management sequence diagram
and the associated numbered notes based on this change.  I'll also have
to do a global edit for documentation in the Schedule XML Schema.


Ira McDonald (Musician / Software Architect)
Blue Roof Music / High North Inc
PO Box 221  Grand Marais, MI  49839
phone: +1-906-494-2434
email: imcdonald at sharplabs.com

------------------------------------------------------------------------

6.3.4 ExecuteAction

ExecuteAction (managerURI : URI, agentReference : AgentReference,
    action : Action) statusString : StatusString,
    unsupportedElements : UnsupportedElements,
    report : Report

Description:
    Sends an request to process a single WIMS action to a WIMS Agent.
    The receiving WIMS Agent:

    (a) MUST immediately validate this action request;
    (b) MUST immediately attempt to process any well-formed action;
    (c) MUST send a response with a Report of results from this action;
    (d) MUST NOT send any SendReports or SendAlerts due to this action
        (instead use 'statusString' in ExecuteAction response above).

Method Support:
    WIMS Agent - OPTIONAL to support
    WIMS Manager - OPTIONAL to support

------------------------------------------------------------------------

** WARNING:  Do not make these edits outside the specified sections. **

(1) In section 6.4 and 6.5 only:
    
    Change:
        SendReports operation
    To:
        SendReports request or ExecuteAction response

(2) In section 6.4 and 6.5 only:
    
    Change:
        a SendReports to
    To:
        a SendReports request or ExecuteAction response to

(3) One place in section 6.6 only:

    Change:
        WIMS SendAlerts operation only
    To:
        WIMS ExecuteAction response containing a Report or a
        WIMS SendAlerts request containing an Alert - only
                                                    ^
        [because the only is limited to the SendAlerts case - state
        changes are always confirmed by ExecuteAction now]

------------------------------------------------------------------------



More information about the Wims mailing list