X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=sfa%2Frspecs%2Frspec.py;h=7d7d007a05b90520d1bc4adfff7e07b4782fff11;hb=3519c849835dcc5ca47a2e03db24284017254ce6;hp=a17b7d673e7f4fdb0bb4f220da63c81b04bdeda1;hpb=3ae1605fb3d0594364b684b595eb21a81717d9ad;p=sfa.git diff --git a/sfa/rspecs/rspec.py b/sfa/rspecs/rspec.py index a17b7d67..7d7d007a 100755 --- a/sfa/rspecs/rspec.py +++ b/sfa/rspecs/rspec.py @@ -9,13 +9,14 @@ from sfa.rspecs.version_manager import VersionManager class RSpec: - def __init__(self, rspec="", version=None, user_options={}): + def __init__(self, rspec="", version=None, user_options={}, ttl=60): self.header = '\n' self.template = """""" self.version = None self.xml = XML() self.version_manager = VersionManager() self.user_options = user_options + self.ttl = ttl self.elements = {} if rspec: if version: @@ -28,9 +29,10 @@ class RSpec: else: raise InvalidRSpec("No RSpec or version specified. Must specify a valid rspec string or a valid version") - def create(self, version=None): + def create(self, version=None, ttl=60): """ Create root element + ttl: time to live in minutes, this will determine the expires tag of the RSpec """ self.version = self.version_manager.get_version(version) self.namespaces = self.version.namespaces @@ -39,7 +41,7 @@ class RSpec: date_format = '%Y-%m-%dT%H:%M:%SZ' now = datetime.utcnow() generated_ts = now.strftime(date_format) - expires_ts = (now + timedelta(hours=1)).strftime(date_format) + expires_ts = (now + timedelta(minutes=self.ttl)).strftime(date_format) self.xml.set('expires', expires_ts) self.xml.set('generated', generated_ts)