You are viewing a plain text version of this content. The canonical link for it is here.
Posted to wss4j-dev@ws.apache.org by dk...@apache.org on 2009/04/14 17:15:11 UTC
svn commit: r764823 - in
/webservices/wss4j/branches/1_5_x-fixes/src/org/apache/ws/security:
WSSConfig.java util/UUIDGenerator.java
Author: dkulp
Date: Tue Apr 14 15:15:09 2009
New Revision: 764823
URL: http://svn.apache.org/viewvc?rev=764823&view=rev
Log:
Make the default wsu:Id allocator a static so changes to interceptors/handlers won't be needed if they are chained .
Modified:
webservices/wss4j/branches/1_5_x-fixes/src/org/apache/ws/security/WSSConfig.java
webservices/wss4j/branches/1_5_x-fixes/src/org/apache/ws/security/util/UUIDGenerator.java
Modified: webservices/wss4j/branches/1_5_x-fixes/src/org/apache/ws/security/WSSConfig.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/branches/1_5_x-fixes/src/org/apache/ws/security/WSSConfig.java?rev=764823&r1=764822&r2=764823&view=diff
==============================================================================
--- webservices/wss4j/branches/1_5_x-fixes/src/org/apache/ws/security/WSSConfig.java (original)
+++ webservices/wss4j/branches/1_5_x-fixes/src/org/apache/ws/security/WSSConfig.java Tue Apr 14 15:15:09 2009
@@ -196,7 +196,12 @@
*/
protected boolean handleCustomPasswordTypes = false;
- protected WsuIdAllocator idAllocator = new WsuIdAllocator() {
+
+ /**
+ * The default wsu:Id allocator is a simple "start at 1 and increment up"
+ * thing that is very fast.
+ */
+ public static WsuIdAllocator DEFAULT_ID_ALLOCATOR = new WsuIdAllocator() {
int i;
private synchronized String next() {
return Integer.toString(++i);
@@ -215,7 +220,8 @@
return prefix + UUIDGenerator.getUUID();
}
};
-
+ protected WsuIdAllocator idAllocator = DEFAULT_ID_ALLOCATOR;
+
protected HashMap jceProvider = new HashMap(10);
/**
Modified: webservices/wss4j/branches/1_5_x-fixes/src/org/apache/ws/security/util/UUIDGenerator.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/branches/1_5_x-fixes/src/org/apache/ws/security/util/UUIDGenerator.java?rev=764823&r1=764822&r2=764823&view=diff
==============================================================================
--- webservices/wss4j/branches/1_5_x-fixes/src/org/apache/ws/security/util/UUIDGenerator.java (original)
+++ webservices/wss4j/branches/1_5_x-fixes/src/org/apache/ws/security/util/UUIDGenerator.java Tue Apr 14 15:15:09 2009
@@ -46,7 +46,7 @@
*/
public static String getUUID() {
if (baseUUID == null) {
- baseUUID = getInitialUUID();
+ getInitialUUID();
}
long i = ++incrementingValue;
if(i >= Long.MAX_VALUE || i < 0){
@@ -56,7 +56,10 @@
return baseUUID + System.currentTimeMillis() + i;
}
- protected static String getInitialUUID() {
+ protected static synchronized void getInitialUUID() {
+ if (baseUUID != null) {
+ return;
+ }
if (myRand == null) {
myRand = new Random();
}
@@ -90,7 +93,7 @@
int begin = myRand.nextInt();
if (begin < 0) begin = begin * -1;
begin = begin % 8;
- return sb2.toString().substring(begin, begin + 18).toUpperCase();
+ baseUUID = sb2.toString().substring(begin, begin + 18).toUpperCase();
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: wss4j-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: wss4j-dev-help@ws.apache.org