Changes between Version 13 and Version 14 of GAPI_AM_API_DRAFT


Ignore:
Timestamp:
10/24/11 09:09:19 (8 years ago)
Author:
Aaron Helsinger
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • GAPI_AM_API_DRAFT

    v13 v14  
    256256This change will modify all methods to return an XMLRPC struct (aka property list) on any application layer success, failure, and even on an error or for most exceptions. Note that a malformed XMLRPC request should still raise an XMLRPC Fault, and other Faults dictated by the XMLRPC specification should still be raised. This struct will contain the return value from the previous revision of the AM API as an entry. This struct will have 3 defined entries, and aggregates are free to include other entries to give more information to clients.
    257257
    258 The three required entries in the return structure are {{{code}}}, {{{value}}}, and {{{option}}}:
     258The three required entries in the return structure are {{{code}}}, {{{value}}}, and {{{output}}}:
    259259 * {{{code}}}: An error code: integer, non-zero on error.
    260260  * 0 = Success
     
    274274  * For !SliverStatus, the {{{value}}} is an XMLRPC struct
    275275  * For Shutdown, the {{{value}}} is a boolean
    276  * {{{option}}}: On failure or error, this is required. Optional on success. This is a String with a human readable message explaining the result. Specifically, this might include an error string, a stacktrace, or other useful messages to help the Experimenter resolve or report the failure or error. It is not defined on success, though aggregates are free to use it.
     276 * {{{output}}}: On failure or error, this is required. Optional on success. This is a String with a human readable message explaining the result. Specifically, this might include an error string, a stacktrace, or other useful messages to help the Experimenter resolve or report the failure or error. It is not defined on success, though aggregates are free to use it.
    277277
    278278Aggregates are encouraged to use {{{code}}} values and {{{output}}} messages that help experimenters and tools distinguish between bad input, other experimenter error, temporary server errors, or server bugs.
     
    301301}
    302302
    303   option: <none>
     303  output: <none>
    304304}
    305305}}}
     
    310310  code: 1
    311311  value: False
    312   option: 'No such slice here'
    313 }
    314 }}}
    315 (That code and option are merely examples.)
     312  output: 'No such slice here'
     313}
     314}}}
     315(That code and output are merely examples.)
    316316
    317317An exception:
     
    337337        <lots of other options follow>
    338338      }
    339   option = <None>
     339  output = <None>
    340340}
    341341
     
    345345   code=0
    346346   value= <GENI V3 Ad or Manifest RSpec string>
    347    option = <None>
     347   output = <None>
    348348}
    349349
     
    357357   code=0
    358358   value= <GENI V3 Manifest RSpec string>
    359    option = <None>
     359   output = <None>
    360360}
    361361
     
    365365   code=0
    366366   value= boolean
    367    option = <None>
     367   output = <None>
    368368}
    369369
     
    373373   code=0
    374374   value= struct (as defined in V1)
    375    option = <None>
     375   output = <None>
    376376}
    377377
     
    383383   code=0
    384384   value= boolean
    385    option = <None>
     385   output = <None>
    386386}
    387387
     
    391391   code=0
    392392   value= boolean
    393    option = <None>
     393   output = <None>
    394394}
    395395}}}
     
    426426   code=0
    427427   value= <GENI V3 Manifest RSpec string>
    428    option = <None>
     428   output = <None>
    429429}
    430430}}}