Changes between Version 31 and Version 32 of AaronHelsinger/GAPI_AM_API_DRAFT


Ignore:
Timestamp:
03/30/12 10:01:38 (12 years ago)
Author:
Aaron Helsinger
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • AaronHelsinger/GAPI_AM_API_DRAFT

    v31 v32  
    921921
    922922== Common Arguments and Returns ==
     923=== structs and optional arguments ===
     924Unless otherwise specified, all arguments and returns of type `struct` may include aggregate or resource-specific entries. As arguments, such options must be optional for the client to supply, with the aggregate providing a reasonable default.
     925
     926=== datetime data type ===
     927All datetime arguments and returns in this API shall conform to [http://tools.ietf.org/html/rfc3339 RFC 3339]. This represents a subset of the valid date/time strings permissible by the standard XML-RPC date/time data type, [http://xmlrpc.scripting.com/spec dateTime.iso8601].
     928
     929In the specification of this API, this is described as `dateTime.rfc3339`.
     930
     931=== RSpec data type ===
     932Throughout this API, multiple arguments and returns are labeled as an RSpec. These fields shall be understood as XML documents following one of the schemas advertised in the return from !GetVersion. All such RSpecs must pass an XML schema validator, must list all used schemas and namespaces within the document, using schemas that are publicly available. The !GetVersion return advertises schemas for advertisment and request RSpecs; the schemas for manifest RSpecs are assumed to be available at the same base URL, but using a corresponding manifest schema.
     933
     934A fully GENI AM API compliant aggregate will always support the GENI standard schemas for RSpecs, available at http://www.geni.net/resources/rspec. As of 4/2012, the current GENI RSpec version is '''3'''.
     935
     936In this API, such RSpec fields are labeled as type `geni.rspec`.
     937
    923938=== `credentials` ===
    924939Many methods take an array of credentials. This is an array of credential type, version, and string value.
     
    9881003    string version;
    9891004  };
    990   string geni_end_time;
     1005  dateTime.rfc3339 geni_end_time;
    9911006}
    9921007}}}
     
    10011016{{{
    10021017{
    1003    geni_rspec: <string, ad or Manifest - may be empty though)>
     1018   geni_rspec: <geni.rspec, ad or Manifest - may be empty though)>
    10041019   geni_urn: <string slice urn, as requested>
    10051020   geni_slivers: [
    10061021               {
    10071022                  geni_sliver_urn: <string sliver urn>
    1008                   geni_expires: <RFC3339 allocation expiration string, as in geni_expires from SliversStatus>,
     1023                  geni_expires: <dateTime.rfc3339 allocation expiration string, as in geni_expires from SliversStatus>,
    10091024                  geni_allocation_status: <string sliver state - allocated or ?? >,
    10101025                  geni_operational_status: <string sliver operational state>
     
    10241039struct CreateSlivers(string slice_urn,
    10251040                    struct credentials[],
    1026                     string rspec,
     1041                    geni.rspec rspec,
    10271042                    struct options)
    10281043}}}
     
    10331048{{{
    10341049{
    1035   [optional geni_end_time: <string datetime>]
     1050  [optional geni_end_time: <dateTime.rfc3339>]
    10361051}
    10371052}}}
     
    10401055{{{
    10411056{
    1042  geni_rspec: <string manifest>,
     1057 geni_rspec: <geni.rspec manifest>,
    10431058 geni_slivers: [
    10441059        {
    10451060                  geni_sliver_urn: <string sliver urn>
    1046                   geni_expires: <RFC3339 allocation expiration string, as in geni_expires from SliversStatus>,
     1061                  geni_expires: <dateTime.rfc3339 allocation expiration string, as in geni_expires from SliversStatus>,
    10471062                  geni_allocation_status: <string sliver state - allocated or ?? >
    10481063        },
     
    10611076struct Renew(string urn[],
    10621077                    struct credentials[],
    1063                     string expiration_time,
     1078                    dateTime.rfc3339 expiration_time,
    10641079                    struct options)
    10651080}}}
     
    10761091   geni_allocation_status: <string>,
    10771092   geni_operational_status: <string>,
    1078    geni_expires: <time when the sliver expires from its current state>,
     1093   geni_expires: <dateTime.rfc3339 when the sliver expires from its current state>,
    10791094   <others AM or method specific>
    10801095  },
     
    10941109
    10951110{{{
    1096 struct UpdateAllocations(string urn[], struct credentials[], string rspec,
     1111struct UpdateAllocations(string urn[], struct credentials[], geni.rspec rspec,
    10971112                                struct options)
    10981113}}}
     
    11051120{{{
    11061121{
    1107  geni_rspec: <string manifest>,
     1122 geni_rspec: <geni.rspec manifest>,
    11081123 geni_slivers: [
    11091124        {
    11101125                  geni_sliver_urn: <string sliver urn>
    1111                   geni_expires: <RFC3339 allocation expiration string, as in geni_expires from SliversStatus>,
     1126                  geni_expires: <dateTime.rfc3339 allocation expiration string, as in geni_expires from SliversStatus>,
    11121127                  geni_allocation_status: <string sliver state - allocated or ?? >
    11131128        },
     
    11521167Return struct:
    11531168{{{
    1154   geni_rspec: <string, RSpec manifest>,
     1169  geni_rspec: <geni.rspec, RSpec manifest>,
    11551170  geni_slivers:
    11561171  [
     
    11591174     geni_allocation_status: <string>,
    11601175     geni_operational_status: <string>,
    1161      geni_expires <time when the sliver expires from its current state>,
     1176     geni_expires <dateTime.rfc3339 when the sliver expires from its current state>,
    11621177     <others AM or resource specific>
    11631178    },
     
    11801195
    11811196{{{
    1182 struct UpdateSlivers(string urn[], struct credentials[], string rspec,
     1197struct UpdateSlivers(string urn[], struct credentials[], geni.rspec rspec,
    11831198                                                 struct options)
    11841199}}}
     
    12061221{{{
    12071222{
    1208  rspec: <string manifest>,
     1223 rspec: <geni.rspec manifest>,
    12091224 geni_slivers: [
    12101225        {
    12111226                  geni_sliver_urn: <string sliver urn>
    1212                   geni_expires: <RFC3339 allocation expiration string, as in geni_expires from SliversStatus>,
     1227                  geni_expires: <dateTime.rfc3339 allocation expiration string, as in geni_expires from SliversStatus>,
    12131228                  geni_allocation_status: <string sliver state - allocated or ?? >
    12141229        },
     
    12421257                      geni_allocation_status: <string, eg provisioned>
    12431258                      geni_operational_status: <string, eg ready>
    1244                       geni_expires: <datetime of individual sliver expiration>
     1259                      geni_expires: <dateTime.rfc3339 of individual sliver expiration>
    12451260                      geni_error: <string, eg ''>,
    12461261                      [optional: others AM/resource specific]
     
    12491264                      geni_allocation_status: <string, eg provisioned>
    12501265                      geni_operational_status: <string, eg ready>
    1251                       geni_expires: <datetime of individual sliver expiration>
     1266                      geni_expires: <dateTime.rfc3339 of individual sliver expiration>
    12521267                      geni_error: <string, eg ''>,
    12531268                      [optional: others AM/resource specific]
     
    12761291        geni_allocation_status: <string, eg provisioned>
    12771292        geni_operational_status : <string>,
    1278         geni_expires: <datetime of individual sliver expiration>
     1293        geni_expires: <dateTime.rfc3339 of individual sliver expiration>
    12791294        [optional: AM/resource specific]
    12801295        },
     
    13021317   geni_sliver_urn: <string>,
    13031318   geni_allocation_status: <string>,
    1304    geni_expires: <time when the sliver expires from its current state>,
     1319   geni_expires: <dateTime.rfc3339 when the sliver expires from its current state>,
    13051320   <others AM or method specific>
    13061321  },