You are viewing a plain text version of this content. The canonical link for it is here.
Posted to axis-cvs@ws.apache.org by ba...@apache.org on 2008/03/29 23:42:04 UTC
svn commit: r642633 -
/webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/EndpointInterfaceDescriptionImpl.java
Author: barrettj
Date: Sat Mar 29 15:41:59 2008
New Revision: 642633
URL: http://svn.apache.org/viewvc?rev=642633&view=rev
Log:
Add sychronized block
Modified:
webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/EndpointInterfaceDescriptionImpl.java
Modified: webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/EndpointInterfaceDescriptionImpl.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/EndpointInterfaceDescriptionImpl.java?rev=642633&r1=642632&r2=642633&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/EndpointInterfaceDescriptionImpl.java (original)
+++ webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/EndpointInterfaceDescriptionImpl.java Sat Mar 29 15:41:59 2008
@@ -512,10 +512,14 @@
public OperationDescription[] getDispatchableOperations() {
OperationDescription[] returnOperations = null;
- if (dispatchableOperations == null) {
- initializeDispatchableOperationsList();
+ // REVIEW: Can this be synced at a more granular level? Can't sync on dispatchableOperations because
+ // it may be null, but also the initialization must finish before next thread sees
+ // dispatachableOperations != null
+ synchronized(this) {
+ if (dispatchableOperations == null) {
+ initializeDispatchableOperationsList();
+ }
}
-
Collection<List<OperationDescription>> dispatchableValues = dispatchableOperations.values();
Iterator<List<OperationDescription>> iteratorValues = dispatchableValues.iterator();
ArrayList<OperationDescription> allDispatchableOperations = new ArrayList<OperationDescription>();
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org