Repository Commands

Repository Commands are used to retrieve data from, write data to or delete data from the repository. A request XML document containing a command is presented to the repository. This document is processed and a response XML document is returned.

Repository Commands have the following format:

<ProLinga>
  <Repository Version="1.0">
    <Command Name="command" Mode="Request">
      <Object Application="appn" Type="type" Name="name">
         ....
         ....
      </Object>
    </Command>
  </Repository>
</ProLinga>

The following Repository Commands are available:

List

With the list command a list of object names can be retrieved, Wildcards can be used for the object name. This command is typically used whereby the user is given a selection of choices or for batch processing.

Example List Request:

<ProLinga>
  <Repository Version="1.0">
    <Command Name="List" Mode="Request">
      <Object Application="MyOrder" Type="Constant" Name="Sta*"/>
    </Command>
  </Repository>
</ProLinga>

Example List Response:

<ProLinga>
  <Repository Version="1.0">
    <Command Name="List" Mode="Response" Status="Ok">
      <Object Application="MyOrder" Type="Constant" Name="Standard"/>
      <Object Application="MyOrder" Type="Constant" Name="State"/>
      <Object Application="MyOrder" Type="Constant" Name="Static"/>
    </Command>
  </Repository>
</ProLinga>

List on Application or Type is not implemented as such. To achieve this you can introduce an object type "Application" and "Type" for instance.

Get

With the list command an XML document can be retrieved from the repository.

Example Get Request:

<ProLinga>
  <Repository Version="1.0">
    <Command Name="Get" Mode="Request">
      <Object Application="MyOrder" Type="Constant" Name="Standard"/>
    </Command>
  </Repository>
</ProLinga>

Example Get Response:

<ProLinga>
  <Repository Version="1.0">
    <Command Name="Get" Mode="Response" Status="Ok">
      <Object Application="MyOrder" Type="Constant" Name="Standard">
        <Constant>
          <Value>Standard</Value>
        </Constant>
      </Object>
    </Command>
  </Repository>
</ProLinga>

Wildcards can be used for "Name" to retrieve a series of XML documents with one single RC.

Put

With the put command an XML document can be written to the repository. The whole document needs to be presented, as no partial updates are possible.

Example Put Request:

<ProLinga>
  <Repository Version="1.0">
    <Command Name="Put" Mode="Request">
      <Object Application="MyOrder" Type="Constant" Name="Standard">
        <Constant>
          <Value>Standard</Value>
        </Constant>
      </Object>
    </Command>
  </Repository>
</ProLinga>

Example Put Response:

<ProLinga>
  <Repository Version="1.0">
    <Command Name="Put" Mode="Response" Status="Ok"/>
      <Object Application="MyOrder" Type="Constant" Name="Standard"/>
    </Command>
  </Repository>
</ProLinga>

Delete

With the list command an XML document can be removed from the repository.

Example Delete Request:

<ProLinga>
  <Repository Version="1.0">
    <Command Name="Delete" Mode="Request">
      <Object Application="MyOrder" Type="Constant" Name="Standard"/>
    </Command>
  </Repository>
</ProLinga>

Example Delete Response:

<ProLinga>
  <Repository Version="1.0">
    <Command Name="Delete" Mode="Response" Status="Ok">
      <Object Application="MyOrder" Type="Constant" Name="Standard"/>
    </Command>
  </Repository>
</ProLinga>

SysInfo

The SysInfo command can be used to retrieve system and enviroment details from the server where ProLinga-Repository is running.

Example SysInfo Request:

<ProLinga>
  <Repository Version="1.0">
    <Command Name="SysInfo" Mode="Request"/>
  </Repository>
</ProLinga>

Example SysInfo Response:

<ProLinga>
  <Repository Version="1.0">
    <Command Name="SysInfo" Mode="Response" Status="Ok">
      <ServiceId>Live Server Stock Admininstration</ServiceId>
      <ServerHost>M1</ServerHost>
      <ServerPort>8001</ServerPort>
      <SystemPath>/home/prolinga/prolinga/system</SystemPath>
      <NumberOfThreads>3</NumberOfThreads>
      <LogFile>/tmp/prolingarep.log</LogFile>
      <LogLevel>5</LogLevel>
      <ServerCompressionLevel>6</ServerCompressionLevel>
      <SystemHostName>M1</SystemHostName>
    </Command>
  </Repository>
</ProLinga>

Ping

The ping command can be used to test if a repository host is on-line and responding to requests.

Example Ping Request:

<ProLinga>
  <Repository Version="1.0">
    <Command Name="Ping" Mode="Request"/>
  </Repository>
</ProLinga>

Example Ping Response:

<ProLinga>
  <Repository Version="1.0">
    <Command Name="Ping" Mode="Response" Status="Ok"/>
  </Repository>
</ProLinga>

Additionial error information from the underlying SOAP layer will be presented as well in the response document in case of an error.