You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ws.apache.org by co...@apache.org on 2017/03/13 14:53:16 UTC

svn commit: r1786702 - in /webservices/wss4j/trunk: ws-security-common/src/main/java/org/apache/wss4j/common/util/ ws-security-dom/src/main/java/org/apache/wss4j/dom/message/token/ ws-security-dom/src/test/java/org/apache/wss4j/dom/message/

Author: coheigea
Date: Mon Mar 13 14:53:16 2017
New Revision: 1786702

URL: http://svn.apache.org/viewvc?rev=1786702&view=rev
Log:
Fixing timezone issues

Modified:
    webservices/wss4j/trunk/ws-security-common/src/main/java/org/apache/wss4j/common/util/WSCurrentTimeSource.java
    webservices/wss4j/trunk/ws-security-common/src/main/java/org/apache/wss4j/common/util/WSTimeSource.java
    webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/message/token/Timestamp.java
    webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/message/token/UsernameToken.java
    webservices/wss4j/trunk/ws-security-dom/src/test/java/org/apache/wss4j/dom/message/TimestampTest.java
    webservices/wss4j/trunk/ws-security-dom/src/test/java/org/apache/wss4j/dom/message/UsernameTokenTest.java

Modified: webservices/wss4j/trunk/ws-security-common/src/main/java/org/apache/wss4j/common/util/WSCurrentTimeSource.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/ws-security-common/src/main/java/org/apache/wss4j/common/util/WSCurrentTimeSource.java?rev=1786702&r1=1786701&r2=1786702&view=diff
==============================================================================
--- webservices/wss4j/trunk/ws-security-common/src/main/java/org/apache/wss4j/common/util/WSCurrentTimeSource.java (original)
+++ webservices/wss4j/trunk/ws-security-common/src/main/java/org/apache/wss4j/common/util/WSCurrentTimeSource.java Mon Mar 13 14:53:16 2017
@@ -19,16 +19,17 @@
 
 package org.apache.wss4j.common.util;
 
-import java.time.LocalDateTime;
+import java.time.Instant;
+import java.time.ZonedDateTime;
 
 public class WSCurrentTimeSource implements WSTimeSource {
 
    /**
     * Get the current date time
-    * @return the current date/time as a LocalDateTime object
+    * @return the current date/time as a Instant object
     */
-   public LocalDateTime now() {
-       return LocalDateTime.now();
+   public Instant now() {
+       return ZonedDateTime.now().toInstant();
    }
 
 }
\ No newline at end of file

Modified: webservices/wss4j/trunk/ws-security-common/src/main/java/org/apache/wss4j/common/util/WSTimeSource.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/ws-security-common/src/main/java/org/apache/wss4j/common/util/WSTimeSource.java?rev=1786702&r1=1786701&r2=1786702&view=diff
==============================================================================
--- webservices/wss4j/trunk/ws-security-common/src/main/java/org/apache/wss4j/common/util/WSTimeSource.java (original)
+++ webservices/wss4j/trunk/ws-security-common/src/main/java/org/apache/wss4j/common/util/WSTimeSource.java Mon Mar 13 14:53:16 2017
@@ -19,7 +19,7 @@
 
 package org.apache.wss4j.common.util;
 
-import java.time.LocalDateTime;
+import java.time.Instant;
 
 /**
  * This interface allows the Time Source used to set dates and times to be
@@ -30,8 +30,8 @@ public interface WSTimeSource {
 
    /**
     * Get the current date time
-    * @return the current date/time as a LocalDateTime object
+    * @return the current date/time as a Instant object
     */
-    LocalDateTime now();
+    Instant now();
 
 }
\ No newline at end of file

Modified: webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/message/token/Timestamp.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/message/token/Timestamp.java?rev=1786702&r1=1786701&r2=1786702&view=diff
==============================================================================
--- webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/message/token/Timestamp.java (original)
+++ webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/message/token/Timestamp.java Mon Mar 13 14:53:16 2017
@@ -19,6 +19,7 @@
 
 package org.apache.wss4j.dom.message.token;
 
+import java.time.Instant;
 import java.time.ZoneOffset;
 import java.time.ZonedDateTime;
 import java.time.format.DateTimeFormatter;
@@ -181,11 +182,12 @@ public class Timestamp {
             doc.createElementNS(
                 WSConstants.WSU_NS, WSConstants.WSU_PREFIX + ":" + WSConstants.CREATED_LN
             );
-        createdDate = timeSource.now().atZone(ZoneOffset.UTC);
+        Instant now = timeSource.now();
+        createdDate = ZonedDateTime.ofInstant(now, ZoneOffset.UTC);
         
         DateTimeFormatter formatter = DateUtil.getDateTimeFormatter(milliseconds);
         elementCreated.appendChild(doc.createTextNode(createdDate.format(formatter)));
-
+        
         element.appendChild(elementCreated);
         if (ttl != 0) {
             expiresDate = createdDate.plusSeconds((long)ttl);

Modified: webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/message/token/UsernameToken.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/message/token/UsernameToken.java?rev=1786702&r1=1786701&r2=1786702&view=diff
==============================================================================
--- webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/message/token/UsernameToken.java (original)
+++ webservices/wss4j/trunk/ws-security-dom/src/main/java/org/apache/wss4j/dom/message/token/UsernameToken.java Mon Mar 13 14:53:16 2017
@@ -22,7 +22,7 @@ package org.apache.wss4j.dom.message.tok
 import java.io.IOException;
 import java.nio.charset.StandardCharsets;
 import java.security.Principal;
-import java.time.LocalDateTime;
+import java.time.Instant;
 import java.time.ZoneOffset;
 import java.time.ZonedDateTime;
 import java.time.format.DateTimeFormatter;
@@ -324,7 +324,7 @@ public class UsernameToken {
             doc.createElementNS(
                 WSConstants.WSU_NS, WSConstants.WSU_PREFIX + ":" + WSConstants.CREATED_LN
             );
-        LocalDateTime currentTime = timeSource.now();
+        Instant currentTime = timeSource.now();
         
         DateTimeFormatter formatter = DateUtil.getDateTimeFormatter(milliseconds);
         elementCreated.appendChild(doc.createTextNode(currentTime.atZone(ZoneOffset.UTC).format(formatter)));

Modified: webservices/wss4j/trunk/ws-security-dom/src/test/java/org/apache/wss4j/dom/message/TimestampTest.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/ws-security-dom/src/test/java/org/apache/wss4j/dom/message/TimestampTest.java?rev=1786702&r1=1786701&r2=1786702&view=diff
==============================================================================
--- webservices/wss4j/trunk/ws-security-dom/src/test/java/org/apache/wss4j/dom/message/TimestampTest.java (original)
+++ webservices/wss4j/trunk/ws-security-dom/src/test/java/org/apache/wss4j/dom/message/TimestampTest.java Mon Mar 13 14:53:16 2017
@@ -19,7 +19,7 @@
 
 package org.apache.wss4j.dom.message;
 
-import java.time.LocalDateTime;
+import java.time.Instant;
 import java.time.ZoneOffset;
 import java.time.ZonedDateTime;
 import java.util.ArrayList;
@@ -782,8 +782,8 @@ public class TimestampTest extends org.j
 
         WSTimeSource spoofedTimeSource = new WSTimeSource() {
 
-            public LocalDateTime now() {
-                return LocalDateTime.now().minusSeconds(500L);
+            public Instant now() {
+                return ZonedDateTime.now().minusSeconds(500L).toInstant();
             }
 
         };

Modified: webservices/wss4j/trunk/ws-security-dom/src/test/java/org/apache/wss4j/dom/message/UsernameTokenTest.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/ws-security-dom/src/test/java/org/apache/wss4j/dom/message/UsernameTokenTest.java?rev=1786702&r1=1786701&r2=1786702&view=diff
==============================================================================
--- webservices/wss4j/trunk/ws-security-dom/src/test/java/org/apache/wss4j/dom/message/UsernameTokenTest.java (original)
+++ webservices/wss4j/trunk/ws-security-dom/src/test/java/org/apache/wss4j/dom/message/UsernameTokenTest.java Mon Mar 13 14:53:16 2017
@@ -22,7 +22,7 @@ package org.apache.wss4j.dom.message;
 import java.io.IOException;
 import java.nio.charset.StandardCharsets;
 import java.security.MessageDigest;
-import java.time.LocalDateTime;
+import java.time.Instant;
 import java.time.ZoneOffset;
 import java.time.ZonedDateTime;
 import java.util.Base64;
@@ -1117,8 +1117,8 @@ public class UsernameTokenTest extends o
 
         WSTimeSource spoofedTimeSource = new WSTimeSource() {
 
-            public LocalDateTime now() {
-                return LocalDateTime.now().minusSeconds(500L);
+            public Instant now() {
+                return ZonedDateTime.now().minusSeconds(500L).toInstant();
             }
 
         };