Ignore:
Timestamp:
Sep 12, 2008 5:28:33 PM (16 years ago)
Author:
Ted Faber <faber@…>
Branches:
axis_example, compt_changes, info-ops, master, version-1.30, version-2.00, version-3.01, version-3.02
Children:
291423b
Parents:
27b6aea
Message:

add info and work with SEER attach

File:
1 edited

Legend:

Unmodified
Added
Removed
  • fedd/fedd_create_experiment.py

    r27b6aea rc52c48d  
    12781278                for tb in tbparams.keys() \
    12791279                    if tbparams[tb].has_key('federant') ],\
    1280                     'experiment': vtopo,\
     1280                    'vtopo': vtopo,\
     1281                    'vis' : vis,
     1282                    'experimentID' : [\
     1283                            { 'fedid': copy.copy(expid) }, \
     1284                            { 'localname': eid },\
     1285                        ],\
     1286                    'experimentAccess': { 'X509' : expcert },\
     1287                }
     1288       
     1289        self.state[expid] = { 'federant' : [ tbparams[tb]['federant'] \
     1290                for tb in tbparams.keys() \
     1291                    if tbparams[tb].has_key('federant') ],\
     1292                    'vtopo': vtopo,\
    12811293                    'vis' : vis,
    12821294                    'experimentID' : [\
    12831295                            { 'fedid': expid }, { 'localname': eid },\
    12841296                        ],\
    1285                     'experimentAccess': { 'X509' : expcert },\
    12861297                }
    1287        
    1288         self.state[expid] = {\
    1289                 'fedid': expid,
    1290                 'localname': eid,
    1291                 'federant': [ tbparams[tb]['federant'] \
    1292                     for tb in tbparams.keys() \
    1293                         if tbparams[tb].has_key('federant') ],\
    1294                 'vis': vis,\
    1295                 'vtopo': vtopo,\
    1296             }
    12971298        self.state[eid] = self.state[expid]
    12981299        return resp
     
    13501351            raise service_error(service_error.req, "No such experiment")
    13511352
     1353    def get_info(self, req, fid):
     1354
     1355        req = req.get('InfoRequestBody', None)
     1356        if not req:
     1357            raise service_error(service_error.req,
     1358                    "Bad request format (no VisRequestBody)")
     1359        exp = req.get('experiment', None)
     1360        if exp:
     1361            if exp.has_key('fedid'):
     1362                key = fedid(bits=exp['fedid'])
     1363                keytype = "fedid"
     1364            elif exp.has_key('localname'):
     1365                key = exp['localname']
     1366                keytype = "localname"
     1367            else:
     1368                raise service_error(service_error.req, "Unknown lookup type")
     1369        else:
     1370            raise service_error(service_error.req, "No request?")
     1371
     1372        # The state may be massaged by the service function that called
     1373        # get_info (e.g., encoded for XMLRPC transport) so send a copy of the
     1374        # state.
     1375        if self.state.has_key(key):
     1376            return copy.deepcopy(self.state[key])
     1377        else:
     1378            raise service_error(service_error.req, "No such experiment")
    13521379
    13531380if __name__ == '__main__':
Note: See TracChangeset for help on using the changeset viewer.