Changes between Version 68 and Version 69 of UniformClearinghouseAPI


Ignore:
Timestamp:
09/25/13 10:41:24 (6 years ago)
Author:
mbrinn@bbn.com
Comment:

Change formatting of Service Registry API as test

Legend:

Unmodified
Added
Removed
Modified
  • UniformClearinghouseAPI

    v68 v69  
    5555These API’s are provided in pseudo-code (i.e. language independent) format, with inputs and outputs (optional and required) described by comments, e.g.
    5656
    57 
    58 /*
    59 
    60 ''Perform method ‘fed_func’''
    61 
    62 '''Arguments:'''
    63 [[BR]]   argl : ...
    64 [[BR]]   credentials : list of {type : credential} tuples representing credentials provided by caller to support AuthZ on method call.
    65 [[BR]]  [NB: This argument will be omitted in descriptions below. ]
    66 [[BR]]  options : … [ Recognized options: ….]
    67 
    68 ''' Return: '''
    69 [[BR]]E.g. a list of dictionaries with these fields mandatory (…) and these fields optional (…)
    70 [[BR]]*/
    71 [[BR]]''function '''fed_func''' (arg1, arg2, credentials, options)''
     57{{{
     58/*
     59Perform method fed_func
     60
     61Arguments:
     62  argl : ...
     63  credentials : list of {type : credential} tuples representing credentials provided by caller to support AuthZ on method call.
     64      [NB: This argument will be omitted in descriptions below. ]
     65  options : … [ Recognized options: ….]
     66
     67Return:
     68  E.g. a list of dictionaries with these fields mandatory (…) and these fields optional (…)
     69*/
     70function fed_func (arg1, arg2, credentials, options)
     71
     72}}}
    7273
    7374
     
    106107“SERVICES”: [“SLICE”, “PROJECT”, “SLICE_MEMBER”, “PROJECT_MEMBER”],
    107108
    108 "OBJECTS": ["PROJECT"],
    109 
    110 “CREDENTIAL_TYPES”: {“SFA”: ["1"]}, “ABAC” : ["1", "2"]},
     109"OBJECTS": [ "PROJECT" ],
     110
     111“CREDENTIAL_TYPES”: {“SFA”: [ "1" ]}, “ABAC” : ["1", "2"]},
    111112
    112113“ROLES” : [“LEAD”, “ADMIN”, “MEMBER”, “AUDITOR”, “OPERATOR” ],
     
    134135      "SERVICES": ["MEMBER", "KEY"],
    135136
    136       "OBJECTS": ["KEY"],
     137      "OBJECTS": [ "KEY" ],
    137138
    138139      “FIELDS”: {
     
    351352|| SERVICE_DESCRIPTION || String || Descriptive name of service ||
    352353
    353 
    354 /*
    355 
     354{{{
     355/*
    356356Provide a structure detailing the version information as well as details of accepted options for Registry API calls.
    357357
    358 '''Arguments:'''
    359 
    360 None
    361 
    362 '''Return:'''
    363 
    364 get_version structure information as described above
    365 
    366 */
    367 
    368 function '''get_version()'''
    369 
     358Arguments:
     359   None
     360
     361Return:
     362   get_version structure information as described above
     363
     364*/
     365
     366function get_version()
     367}}}
     368
     369{{{
    370370/*
    371371
    372372Return information about all aggregates associated with the Federation
    373373
    374 '''Arguments:'''
    375 
    376 options: 'match' and 'filter' options   as described in standard lookup methods
    377 
    378 '''Return:'''
    379 
    380 List of dictionaries of name/value pairs for each returned AM
    381 
    382 */
    383 
    384 function '''lookup_aggregates'''(options)
    385 
     374Arguments:
     375   options: 'match' and 'filter' options   as described in standard lookup methods
     376
     377Return:
     378   List of dictionaries of name/value pairs for each returned AM
     379
     380*/
     381function lookup_aggregates(options)
     382}}}
     383
     384{{{
    386385/*
    387386
    388387Return information about all MA’s associated with the Federation
    389388
    390 '''Arguments:'''
    391 
    392 options: 'match' and 'filter' options   as described in standard lookup methods
    393 
    394 '''Return:'''
    395 
    396 List of dictionaries of name/value pairs for each returned MA
    397 
    398 */
    399 
    400 function '''lookup_member_authorities'''(options)
    401 
     389Arguments:
     390  options: 'match' and 'filter' options   as described in standard lookup methods
     391
     392Return:
     393  List of dictionaries of name/value pairs for each returned MA
     394
     395*/
     396function lookup_member_authorities(options)
     397}}}
     398
     399{{{
    402400/*
    403401
    404402Return information about all SA’s associated with the Federation
    405403
    406 '''Arguments:'''
    407 
    408 options: 'match' and 'filter' options   as described in standard lookup methods
    409 
    410 '''Return:'''
    411 
    412 List of dictionaries of name/value pairs for each returned SA
    413 
    414 */
    415 
    416 function '''lookup_slice_authorities'''(options)
    417 
    418 /*
    419 
    420 Lookup the authorities for a given URNs
    421 
    422 There should be at most one (potentially none) per URN.
    423 
    424 This requires extracting the authority from the URN and then looking up the authority in the Registry's set of services.
    425 
    426 Note that the transformation from the URN's of objects (e.g. slice, project, member) to the URN's of their authority is a simple one, for example:
     404Arguments:
     405   options: 'match' and 'filter' options   as described in standard lookup methods
     406
     407Return:
     408   List of dictionaries of name/value pairs for each returned SA
     409
     410*/
     411function lookup_slice_authorities(options)
     412}}}
     413
     414
     415The following method maps object URN's to authority URN's. Note that the transformation from the URN's of objects (e.g. slice, project, member) to the URN's of their authority is a simple one, for example:
    427416
    428417|| '''Type''' || '''Object URN''' || '''Authority URN''' ||
     
    430419|| Member || urn:publicid:IDN+ma_name+user+user_name || urn:publicid:IDN+ma_name+authority+ma ||
    431420
    432 '''Arguments:'''
    433 
    434 urns: URNs of entities for which the authority is requested
    435 
    436 '''Return:'''
    437 
    438 List of dictionaries {urn : url} mapping URLs of Authorities to given URN's
    439 
    440 */
    441 
    442 function '''lookup_authorities_for_urns'''(urns)
    443 
     421{{{
     422/*
     423
     424Lookup the authorities for a given URNs
     425
     426There should be at most one (potentially none) per URN.
     427
     428This requires extracting the authority from the URN and then looking up the authority in the Registry's set of services.
     429
     430
     431Arguments:
     432   urns: URNs of entities for which the authority is requested
     433
     434Return:
     435   List of dictionaries {urn : url} mapping URLs of Authorities to given URN's
     436
     437*/
     438function lookup_authorities_for_urns(urns)
     439}}}
     440
     441{{{
    444442/*
    445443
     
    448446Often this is a concatenatation of the trust roots of the included authorities.
    449447
    450 '''Arguments:'''
    451 
    452 None
    453 
    454 '''Return:'''
    455 
    456 List of certificates representing trust roots of this Federation.
    457 
    458 */
    459 
    460 function '''get_trust_roots'''()
     448Arguments:
     449   None
     450
     451Return:
     452   List of certificates representing trust roots of this Federation.
     453
     454*/
     455function get_trust_roots()
     456}}}
    461457
    462458== Slice Authority API ==