summaryrefslogtreecommitdiff
path: root/suds/wsse.py
diff options
context:
space:
mode:
Diffstat (limited to 'suds/wsse.py')
-rw-r--r--suds/wsse.py20
1 files changed, 13 insertions, 7 deletions
diff --git a/suds/wsse.py b/suds/wsse.py
index 0fc8301..2a697c1 100644
--- a/suds/wsse.py
+++ b/suds/wsse.py
@@ -22,6 +22,7 @@ from logging import getLogger
from suds import *
from suds.sudsobject import Object
from suds.sax.element import Element
+from suds.sax.date import UTC
from datetime import datetime, timedelta
try:
@@ -88,8 +89,13 @@ class Token(Object):
return datetime.now()
@classmethod
+ def utc(cls):
+ return datetime.utcnow()
+
+ @classmethod
def sysdate(cls):
- return cls.now().isoformat()
+ utc = UTC()
+ return str(utc)
def __init__(self):
Object.__init__(self)
@@ -144,11 +150,11 @@ class UsernameToken(Token):
"""
Set I{created}.
@param dt: The created date & time.
- Set as datetime.now() when I{None}.
+ Set as datetime.utc() when I{None}.
@type dt: L{datetime}
"""
if dt is None:
- self.created = Token.now()
+ self.created = Token.utc()
else:
self.created = dt
@@ -172,7 +178,7 @@ class UsernameToken(Token):
root.append(n)
if self.created is not None:
n = Element('Created', ns=wsuns)
- n.setText(self.created.isoformat())
+ n.setText(str(UTC(self.created)))
root.append(n)
return root
@@ -192,15 +198,15 @@ class Timestamp(Token):
@type validity: int
"""
Token.__init__(self)
- self.created = Token.now()
+ self.created = Token.utc()
self.expires = self.created + timedelta(seconds=validity)
def xml(self):
root = Element("Timestamp", ns=wsuns)
created = Element('Created', ns=wsuns)
- created.setText(self.created.isoformat())
+ created.setText(str(UTC(self.created)))
expires = Element('Expires', ns=wsuns)
- expires.setText(self.expires.isoformat())
+ expires.setText(str(UTC(self.expires)))
root.append(created)
root.append(expires)
return root \ No newline at end of file