Changes between Version 31 and Version 32 of AaronHelsinger/GAPI_AM_API_DRAFT
- Timestamp:
- 03/30/12 10:01:38 (12 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
AaronHelsinger/GAPI_AM_API_DRAFT
v31 v32 921 921 922 922 == Common Arguments and Returns == 923 === structs and optional arguments === 924 Unless 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 === 927 All 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 929 In the specification of this API, this is described as `dateTime.rfc3339`. 930 931 === RSpec data type === 932 Throughout 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 934 A 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 936 In this API, such RSpec fields are labeled as type `geni.rspec`. 937 923 938 === `credentials` === 924 939 Many methods take an array of credentials. This is an array of credential type, version, and string value. … … 988 1003 string version; 989 1004 }; 990 stringgeni_end_time;1005 dateTime.rfc3339 geni_end_time; 991 1006 } 992 1007 }}} … … 1001 1016 {{{ 1002 1017 { 1003 geni_rspec: < string, ad or Manifest - may be empty though)>1018 geni_rspec: <geni.rspec, ad or Manifest - may be empty though)> 1004 1019 geni_urn: <string slice urn, as requested> 1005 1020 geni_slivers: [ 1006 1021 { 1007 1022 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>, 1009 1024 geni_allocation_status: <string sliver state - allocated or ?? >, 1010 1025 geni_operational_status: <string sliver operational state> … … 1024 1039 struct CreateSlivers(string slice_urn, 1025 1040 struct credentials[], 1026 stringrspec,1041 geni.rspec rspec, 1027 1042 struct options) 1028 1043 }}} … … 1033 1048 {{{ 1034 1049 { 1035 [optional geni_end_time: < string datetime>]1050 [optional geni_end_time: <dateTime.rfc3339>] 1036 1051 } 1037 1052 }}} … … 1040 1055 {{{ 1041 1056 { 1042 geni_rspec: < stringmanifest>,1057 geni_rspec: <geni.rspec manifest>, 1043 1058 geni_slivers: [ 1044 1059 { 1045 1060 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>, 1047 1062 geni_allocation_status: <string sliver state - allocated or ?? > 1048 1063 }, … … 1061 1076 struct Renew(string urn[], 1062 1077 struct credentials[], 1063 stringexpiration_time,1078 dateTime.rfc3339 expiration_time, 1064 1079 struct options) 1065 1080 }}} … … 1076 1091 geni_allocation_status: <string>, 1077 1092 geni_operational_status: <string>, 1078 geni_expires: < timewhen the sliver expires from its current state>,1093 geni_expires: <dateTime.rfc3339 when the sliver expires from its current state>, 1079 1094 <others AM or method specific> 1080 1095 }, … … 1094 1109 1095 1110 {{{ 1096 struct UpdateAllocations(string urn[], struct credentials[], stringrspec,1111 struct UpdateAllocations(string urn[], struct credentials[], geni.rspec rspec, 1097 1112 struct options) 1098 1113 }}} … … 1105 1120 {{{ 1106 1121 { 1107 geni_rspec: < stringmanifest>,1122 geni_rspec: <geni.rspec manifest>, 1108 1123 geni_slivers: [ 1109 1124 { 1110 1125 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>, 1112 1127 geni_allocation_status: <string sliver state - allocated or ?? > 1113 1128 }, … … 1152 1167 Return struct: 1153 1168 {{{ 1154 geni_rspec: < string, RSpec manifest>,1169 geni_rspec: <geni.rspec, RSpec manifest>, 1155 1170 geni_slivers: 1156 1171 [ … … 1159 1174 geni_allocation_status: <string>, 1160 1175 geni_operational_status: <string>, 1161 geni_expires < timewhen the sliver expires from its current state>,1176 geni_expires <dateTime.rfc3339 when the sliver expires from its current state>, 1162 1177 <others AM or resource specific> 1163 1178 }, … … 1180 1195 1181 1196 {{{ 1182 struct UpdateSlivers(string urn[], struct credentials[], stringrspec,1197 struct UpdateSlivers(string urn[], struct credentials[], geni.rspec rspec, 1183 1198 struct options) 1184 1199 }}} … … 1206 1221 {{{ 1207 1222 { 1208 rspec: < stringmanifest>,1223 rspec: <geni.rspec manifest>, 1209 1224 geni_slivers: [ 1210 1225 { 1211 1226 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>, 1213 1228 geni_allocation_status: <string sliver state - allocated or ?? > 1214 1229 }, … … 1242 1257 geni_allocation_status: <string, eg provisioned> 1243 1258 geni_operational_status: <string, eg ready> 1244 geni_expires: <date timeof individual sliver expiration>1259 geni_expires: <dateTime.rfc3339 of individual sliver expiration> 1245 1260 geni_error: <string, eg ''>, 1246 1261 [optional: others AM/resource specific] … … 1249 1264 geni_allocation_status: <string, eg provisioned> 1250 1265 geni_operational_status: <string, eg ready> 1251 geni_expires: <date timeof individual sliver expiration>1266 geni_expires: <dateTime.rfc3339 of individual sliver expiration> 1252 1267 geni_error: <string, eg ''>, 1253 1268 [optional: others AM/resource specific] … … 1276 1291 geni_allocation_status: <string, eg provisioned> 1277 1292 geni_operational_status : <string>, 1278 geni_expires: <date timeof individual sliver expiration>1293 geni_expires: <dateTime.rfc3339 of individual sliver expiration> 1279 1294 [optional: AM/resource specific] 1280 1295 }, … … 1302 1317 geni_sliver_urn: <string>, 1303 1318 geni_allocation_status: <string>, 1304 geni_expires: < timewhen the sliver expires from its current state>,1319 geni_expires: <dateTime.rfc3339 when the sliver expires from its current state>, 1305 1320 <others AM or method specific> 1306 1321 },