# implements SFA tickets
#
-import xmlrpclib
+from __future__ import print_function
from sfa.trust.certificate import Certificate
from sfa.trust.gid import GID
+from sfa.util.py23 import xmlrpc_client
+
# Ticket is tuple:
# (gidCaller, gidObject, attributes, rspec, delegate)
#
# attributes = slice attributes (keys, vref, instantiation, etc)
# rspec = resources
+
class SfaTicket(Certificate):
gidCaller = None
gidObject = None
"rspec": self.rspec,
"delegate": self.delegate}
if self.gidCaller:
- dict["gidCaller"] = self.gidCaller.save_to_string(save_parents=True)
+ dict["gidCaller"] = self.gidCaller.save_to_string(
+ save_parents=True)
if self.gidObject:
- dict["gidObject"] = self.gidObject.save_to_string(save_parents=True)
- str = "URI:" + xmlrpclib.dumps((dict,), allow_none=True)
+ dict["gidObject"] = self.gidObject.save_to_string(
+ save_parents=True)
+ str = "URI:" + xmlrpc_client.dumps((dict,), allow_none=True)
self.set_data(str)
def decode(self):
data = self.get_data()
if data:
- dict = xmlrpclib.loads(self.get_data()[4:])[0][0]
+ dict = xmlrpc_client.loads(self.get_data()[4:])[0][0]
else:
dict = {}
self.gidObject = None
def dump(self, dump_parents=False):
- print "TICKET", self.get_subject()
+ print("TICKET", self.get_subject())
- print " gidCaller:"
+ print(" gidCaller:")
gidCaller = self.get_gid_caller()
if gidCaller:
gidCaller.dump(8, dump_parents)
- print " gidObject:"
+ print(" gidObject:")
gidObject = self.get_gid_object()
if gidObject:
gidObject.dump(8, dump_parents)
- print " attributes:"
+ print(" attributes:")
for attrname in self.get_attributes().keys():
- print " ", attrname, self.get_attributes()[attrname]
+ print(" ", attrname, self.get_attributes()[attrname])
- print " rspec:"
- print " ", self.get_rspec()
+ print(" rspec:")
+ print(" ", self.get_rspec())
if self.parent and dump_parents:
- print "PARENT",
- self.parent.dump(dump_parents)
+ print("PARENT", end=' ')
+ self.parent.dump(dump_parents)