Skip to content

Commit

Permalink
Removed code duplication and prevents mutating passed in header_fields
Browse files Browse the repository at this point in the history
  • Loading branch information
ft-arnout committed Jun 2, 2013
1 parent 9ef8a00 commit 238ac5c
Showing 1 changed file with 8 additions and 9 deletions.
17 changes: 8 additions & 9 deletions itsdangerous.py
Expand Up @@ -734,6 +734,14 @@ def __init__(self, secret_key, expires_in=None, **kwargs):
expires_in = self.DEFAULT_EXPIRES_IN
self.expires_in = expires_in

def make_header(self, header_fields):
header = JSONWebSignatureSerializer.make_header(self, header_fields)
iat = self.now()
exp = iat + self.expires_in
header['iat'] = iat
header['exp'] = exp
return header

def loads(self, s, salt=None, return_header=False):
payload, header = JSONWebSignatureSerializer.loads(
self, s, salt, return_header=True)
Expand All @@ -754,15 +762,6 @@ def loads(self, s, salt=None, return_header=False):
return payload, header
return payload

def dumps(self, obj, salt=None, header_fields=None):
iat = self.now()
exp = iat + self.expires_in
if header_fields is None:
header_fields = {}
header_fields['iat'] = iat
header_fields['exp'] = exp
return JSONWebSignatureSerializer.dumps(self, obj, salt, header_fields)

def get_issue_date(self, header):
rv = header.get('iat')
if isinstance(rv, number_types):
Expand Down

0 comments on commit 238ac5c

Please sign in to comment.