ALMAS 1.1 RTF Avatar
  1. OMG Issue

ALMAS11 — Efficient use of dynamic data

  • Key: ALMAS11-11
  • Status: closed  
  • Source: BAE SYSTEMS ( Mr. Simon Mettrick)
  • Summary:

    The goal of templates and dynamic data, i.e. encapsulating HCI design time information outside of code and then just supplying runtime variant data - e.g. track or other object identifiers - is undermined by the methods available. The only way to supply dynamic data allows everything to be overridden, which is intended to be the abnormal case. An in-between method that just allows dynamic data to be supplied would be a much more friendly interface for alert producers.

  • Reported: ALMAS 1.0 — Mon, 24 Sep 2018 19:14 GMT
  • Disposition: Resolved — ALMAS 1.1
  • Disposition Summary:

    Create a RaiseAlertWithDynamicData operation

    Add operation RaiseAlertWithDynamicData to class ALMASProducer in the Management PIM package - see updated diagram attached
    7.3.5 p17 change first two sentences of paragraph 2 from
    "Three mechanisms by which alerts can be raised are provided by the ALMASProducer interface class. Two variants RaiseAlertFromTemplate and RaiseAlertFromOverrides allow the system to raise an alert by simply specifying the alert ID, template ID and their own ProducerID, one of these also allows the over-ride of any placeholders that may be present in the ‘Message’ attribute of the alert data class associated with that template."
    to
    "Four mechanisms by which alerts can be raised are provided by the ALMASProducer interface class. Three variants RaiseAlertFromTemplate, RaiseAlertWithDynamicData and RaiseAlertFromOverrides allow the system to raise an alert by simply specifying the alert ID, template ID and their own ProducerID; with dynamic data allows the specification of the intentionally variable data to supplement the template alert definition; from overrides also allows the over-ride of any placeholders that may be present in the ‘Message’ attribute of the alert data class associated with that template."

    7.3.5.1 p18 insert a new 3rd row to the table
    Name: RaiseAlertWithDynamicData(String, int, int, StringSet)
    Type: public CallStatus[Parameters]ProducerID: String,TemplateID: int,out AlertID: int, DynamicMessageDataSet: StringSet,
    Summary: This will cause an alert based on a known alert template
    to be created and raised, whilst only specifying the dynamic data content that differs from the template definition. All parameters are mandatory. Return parameter indicates success or failure reason.

    9.4 p45
    insert after declaration of RaiseAlertFromOverrides
    ALMAS_DataModel::ALMAS_CallStatus RaiseAlertFromOverrides (
    in string ProducerID,
    in ALMAS_DataModel::ALMAS_TemplateIDType TemplateID,
    in ALMAS_DataModel::ALMAS_DynamicMessageDataTypeSet DynamicMessageData,
    out ALMAS_DataModel::ALMAS_AlertIDType AlertID);

    10.3.2 p53
    insert after declaration of RaiseAlertFromOverrides
    struct ALMAS_RaiseAlertWithDynamicData

    { long request_id; string ProducerID; ALMAS_DataModel::ALMAS_TemplateIDType TemplateID; ALMAS_DataModel:: ALMAS_DynamicMessageDataType; }

    ;
    #pragma keylist ALMAS_RaiseAlertWithDynamicData request_id

    10.4.2 p58
    insert after declaration of RaiseAlertFromOverrides
    ALMAS_DataModel::ALMAS_CallStatus RaiseAlertFromOverrides (
    in string ProducerID,
    in ALMAS_DataModel::ALMAS_TemplateIDType TemplateID,
    in ALMAS_DataModel:: ALMAS_DynamicMessageDataType,
    out ALMAS_DataModel::ALMAS_AlertIDType AlertID);

    11.4 p67
    insert after declaration of RaiseAlertFromOverrides
    HRESULT RaiseAlertFromOverrides (
    [out] ALMAS_AlertIDType *AlertID,
    [in] BSTR ProducerID,
    [in] ALMAS_TemplateIDType TemplateID,
    [in] SAFEARRAY(ALMAS_DynamicMessageDataType) DynamicMessageData,
    [out] ALMAS_CallStatus *CallStatus);

  • Updated: Wed, 13 May 2020 16:36 GMT
  • Attachments: