Uploaded image for project: 'HPCC'
  1. HPCC
  2. HPCC-16917

DESDL doc needs to provide information regarding configuration passthrough

    XMLWordPrintable

    Details

    • Type: Improvement
    • Status: Resolved
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: 6.2.0
    • Fix Version/s: 6.2.x
    • Component/s: Documentation, ESDL
    • Labels:
      None

      Description

      The Dynamic ESDL document should explain the process of configuring ESDL binding methods with Request Context information for Roxie query consumption.

      There are 3 instances where the current document discusses the configuration of Methods. All three of those instances should illustrate

      • Section "Publish the ESDL Service Definitions and Bind the ESDL Service" subsection 2
      • Section "esdl bind-service"
      • Section "esdl bind-method"
      • there might be other sections

      We need to explain that DESDL methods can provide context information to roxie (this includes things such as gateway information, urls, credentials, etc.).

      The way this information is configured, is by appending children elements to the Methods/Method portion of the ESDL Binding. For example, in the document we provide the following XML as a ESDL Binding example:

      <Methods>
          <Method name="AddThis" url="<RoxieIP>:9876" querytype="roxie" queryname="AddThis"/>
      </Methods>
      

      If the method AddThis needs to provide context information to roxie it would be added as follows:

      <Methods>
          <Method name="AddThis" url="<RoxieIP>:9876" querytype="roxie" queryname="AddThis">
          <Gateways><Gateway name="mygateway">
                              <URL>1.1.1.1:2222/someservice/somemethod</URL>
                              <Credentials>
      							<UserName>Kevin</UserName>
                              </Credentials>
           </Gateway></Gateways>
      </Method>
      </Methods>
      

      The DESDL ESP does not pose any restrictions on the layout of this information (as long as it is valid XML). This gives the product owner the flexibility to provide the information in any xml format the wish. This means the roxie query ECL developer needs to decide what information they will need from the ESP request and it is their responsibility to design how that information is to be laid-out in the ESP request and ESDL binding configuration.

      In this example, every "AddThis" request processed by the ESP and sent to roxie would contain the sample gateways information in the request context. Example:

      <?xml version="1.0" encoding="utf-8"?>
      <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
      <soap:Body>
        <roxie.AddThis>
         <Context>
          <Row>
           <Common>
            <ESP>
             <ServiceName>wsmath</ServiceName>
             <Config>
              <Method name="AddThis" url="<RoxieIP>:9876" querytype="roxie" queryname="AddThis">
          <Gateways><Gateway name="mygateway">
                              <URL>1.1.1.1:2222/someservice/somemethod</URL>
                              <Credentials>
      							<UserName>Kevin</UserName>
                              </Credentials>
           </Gateway></Gateways>        </Method>
             </Config>
            </ESP>
            <TransactionId>sometrxid</TransactionId>
           </Common>
          </Row>
         </Context>
         <AddThisRequest>
          <Row>
           <Number1>34</Number1>
           <Number2>232</Number2>
          </Row>
         </AddThisRequest>
        </roxie.AddThis>
      </soap:Body>
      </soap:Envelope>
      

      The ECL query consumes this information and is free to do whatever it needs to do with it. In some instances, if the query decides it needs to send a request to a gateway in order to properly process the current request, it can interrogate the context information for the appropriate gateway's connection information, and use that information to create the actual gateway request connection.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                g-pan Greg Panagiotatos
                Reporter:
                rpastrana Rodrigo Pastrana
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: