Changes between Initial Version and Version 1 of GAPI_CH_API


Ignore:
Timestamp:
03/09/10 11:25:40 (12 years ago)
Author:
tmitchel@bbn.com
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • GAPI_CH_API

    v1 v1  
     1[[PageOutline]]
     2
     3= GENI Clearinghouse API =
     4
     5The GENI Clearinghouse API defines the operations that are available to an Aggregate Manager.
     6
     7This interface does not describe the API that a Researcher Client would use to communicate with a GENI Clearinghouse. For GENI Spiral 2, the API between Researcher Clients and Clearinghouses is specific to the Clearinghouse and not standardized.
     8
     9See Also:
     10 * [http://svn.planet-lab.org/attachment/wiki/WikiStart/sfa.pdf Slice-based Facility Architecture (SFA) specification]
     11 * [http://svn.planet-lab.org/attachment/wiki/WikiStart/sfa-impl.pdf PlanetLab Implementation of the Slice-Based Facility Architecture]
     12 * [http://www.protogeni.net/trac/protogeni/wiki/ClearingHouseAPI2 ProtoGENI Clearinghouse API revision 2]
     13
     14-----
     15== !GetVersion ==
     16Return the version of the GENI Clearinghouse API supported by this clearinghouse.
     17
     18{{{
     19struct GetVersion()
     20}}}
     21
     22The result is a struct with at least the following members:
     23
     24{{{
     25{
     26  int geni_api;
     27}
     28}}}
     29
     30 `geni_api`::
     31    An integer indicating the revision of the Aggregate Manager API that an aggregate supports. The current version of the API is 1 (one).
     32
     33Implementations can add additional members to the struct as desired. The prefix {{{geni_}}} is reserved for members that are part of this API specification. Implementation should choose an appropriate prefix to avoid conflicts.
     34
     35This operation is similar to ProtoGENI's Clearinghouse [http://www.protogeni.net/trac/protogeni/wiki/ClearinghouseAPI2#GetVersion GetVersion] operation. The [http://svn.planet-lab.org/attachment/wiki/WikiStart/sfa.pdf SFA] specification does not include this operation.
     36
     37
     38-----
     39== Resolve ==
     40Lookup a URN and return information about the corresponding object.
     41
     42{{{
     43struct Resolve(string urn)
     44}}}
     45
     46 `urn`::
     47    The URN to be resolved.
     48
     49Returns a struct with fields appropriate to the type of the object being resolved.
     50
     51If the object being resolved is a slice, the returned struct should contain at least the following:
     52
     53{{{
     54{
     55  geni_urn: <slice URN>;
     56  geni_creator: <user URN>;
     57}
     58}}}
     59
     60 `geni_urn`::
     61    The URN of the slice being resolved as a string.
     62
     63 `geni_creator`::
     64    The URN of the creator of the slice as a string.
     65
     66If the object being resolved is a user, the returned struct should contain at least the following:
     67
     68{{{
     69{
     70  geni_urn: <user URN>;
     71  geni_certificate: <X.509 certificate of user>;
     72}
     73}}}
     74
     75 `geni_urn`::
     76    The URN of the slice being resolved as a string.
     77
     78 `geni_certificate`::
     79    The certificate of the user as a base 64 encoded string.
     80
     81
     82This operation is similar to ProtoGENI's Clearinghouse [http://www.protogeni.net/trac/protogeni/wiki/ClearinghouseAPI2#Resolve Resolve] operation and to the [http://svn.planet-lab.org/attachment/wiki/WikiStart/sfa.pdf SFA]'s Resolve operation (sec. 6.1).