SAMP â Simple Application Messag- ing Protocol Version 1.11 - IVOA
SAMP â Simple Application Messag- ing Protocol Version 1.11 - IVOA
SAMP â Simple Application Messag- ing Protocol Version 1.11 - IVOA
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
4.1 Data Type Mapp<strong>ing</strong>sThe <strong>SAMP</strong> argument and return value data types described in Section 3.3map straightforwardly onto XML-RPC data types as follows:<strong>SAMP</strong> type XML-RPC elementstr<strong>ing</strong> — list — map — The children of and elements themselves containchildren of type , or .Note that other XML-RPC scalar types (, double etc) are not used;even where the semantic sense of a value matches one of those types it MUSTbe encoded as an XML-RPC .4.2 API Mapp<strong>ing</strong>sThe operation names in the <strong>SAMP</strong> hub and client abstract APIs (Sections3.11 and 3.12) very nearly have a one to one mapp<strong>ing</strong> with those in theStandard Profile XML-RPC APIs. The Standard Profile API MUST beimplemented as described in Sections 3.11 and 3.12 with the follow<strong>ing</strong> RE-QUIRED adjustments:1. The XML-RPC method names (i.e. the contents of the XML-RPC elements) are formed by prefix<strong>ing</strong> the hub and clientabstract API operation names with “samp.hub.” or “samp.client.”respectively.2. The register() operation takes the follow<strong>ing</strong> form:• map reg-info = register(str<strong>ing</strong> samp-secret)The argument is the samp-secret value read from the lockfile (seeSection 4.3). The returned reg-info map contains an additional entrywith key samp.private-key whose value is a str<strong>ing</strong> generated by thehub.3. All other hub and client methods take the private-key as their firstargument.4. A new method, setXmlrpcCallback() is added to the hub API.• setXmlrpcCallback(str<strong>ing</strong> private-key, str<strong>ing</strong> url)This informs the hub of the XML-RPC endpoint on which the client islisten<strong>ing</strong> for calls from the hub. The client is not considered Callableunless and until it has invoked this method.25