From do-not-reply at jboss.org Fri Oct 22 12:32:16 2010
Content-Type: multipart/mixed; boundary="===============4483252169698134098=="
MIME-Version: 1.0
From: do-not-reply at jboss.org
To: gatein-commits at lists.jboss.org
Subject: [gatein-commits] gatein SVN: r4776 -
components/wsrp/trunk/consumer/src/main/java/org/gatein/wsrp/services.
Date: Fri, 22 Oct 2010 12:32:16 -0400
Message-ID: <201010221632.o9MGWGDI032132@svn01.web.mwc.hst.phx2.redhat.com>
--===============4483252169698134098==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: quoted-printable
Author: chris.laprun(a)jboss.com
Date: 2010-10-22 12:32:16 -0400 (Fri, 22 Oct 2010)
New Revision: 4776
Modified:
components/wsrp/trunk/consumer/src/main/java/org/gatein/wsrp/services/SO=
APServiceFactory.java
Log:
- GTNWSRP-107: Port handling was not thread-safe.
Modified: components/wsrp/trunk/consumer/src/main/java/org/gatein/wsrp/serv=
ices/SOAPServiceFactory.java
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- components/wsrp/trunk/consumer/src/main/java/org/gatein/wsrp/services/S=
OAPServiceFactory.java 2010-10-22 16:32:04 UTC (rev 4775)
+++ components/wsrp/trunk/consumer/src/main/java/org/gatein/wsrp/services/S=
OAPServiceFactory.java 2010-10-22 16:32:16 UTC (rev 4776)
@@ -56,7 +56,6 @@
import java.net.URI;
import java.net.URL;
import java.util.Map;
-import java.util.concurrent.ConcurrentHashMap;
=
/**
* @author Chris Laprun
@@ -69,13 +68,13 @@
private String wsdlDefinitionURL;
=
private boolean isV2 =3D false;
+ private Service wsService;
=
private static final String WSRP_V1_URN =3D "urn:oasis:names:tc:wsrp:v1=
:wsdl";
private static final String WSRP_V1_BINDING =3D "urn:oasis:names:tc:wsr=
p:v1:bind";
private static final String WSRP_V2_URN =3D "urn:oasis:names:tc:wsrp:v2=
:wsdl";
private static final String WSRP_V2_BINDING =3D "urn:oasis:names:tc:wsr=
p:v2:bind";
=
- private Map services =3D new ConcurrentHashMap();
private String markupURL;
private String serviceDescriptionURL;
private String portletManagementURL;
@@ -99,7 +98,7 @@
start();
}
=
- Object service =3D services.get(clazz);
+ Object service =3D wsService.getPort(clazz);
=
//
String portAddress =3D null;
@@ -233,25 +232,20 @@
// try to get v2 of service if possible, first
QName wsrp2 =3D wsdlInfo.getWSRP2ServiceQName();
QName wsrp1 =3D wsdlInfo.getWSRP1ServiceQName();
- Service service;
if (wsrp2 !=3D null)
{
- service =3D Service.create(wsdlURL, wsrp2);
+ wsService =3D Service.create(wsdlURL, wsrp2);
=
- WSRPV2MarkupPortType markupPortType =3D service.getPort(WSRPV2=
MarkupPortType.class);
- services.put(WSRPV2MarkupPortType.class, markupPortType);
+ WSRPV2MarkupPortType markupPortType =3D wsService.getPort(WSRP=
V2MarkupPortType.class);
markupURL =3D (String)((BindingProvider)markupPortType).getReq=
uestContext().get(BindingProvider.ENDPOINT_ADDRESS_PROPERTY);
=
- WSRPV2ServiceDescriptionPortType sdPort =3D service.getPort(WS=
RPV2ServiceDescriptionPortType.class);
- services.put(WSRPV2ServiceDescriptionPortType.class, sdPort);
+ WSRPV2ServiceDescriptionPortType sdPort =3D wsService.getPort(=
WSRPV2ServiceDescriptionPortType.class);
serviceDescriptionURL =3D (String)((BindingProvider)sdPort).ge=
tRequestContext().get(BindingProvider.ENDPOINT_ADDRESS_PROPERTY);
=
- WSRPV2PortletManagementPortType managementPortType =3D service=
.getPort(WSRPV2PortletManagementPortType.class);
- services.put(WSRPV2PortletManagementPortType.class, management=
PortType);
+ WSRPV2PortletManagementPortType managementPortType =3D wsServi=
ce.getPort(WSRPV2PortletManagementPortType.class);
portletManagementURL =3D (String)((BindingProvider)managementP=
ortType).getRequestContext().get(BindingProvider.ENDPOINT_ADDRESS_PROPERTY);
=
- WSRPV2RegistrationPortType registrationPortType =3D service.ge=
tPort(WSRPV2RegistrationPortType.class);
- services.put(WSRPV2RegistrationPortType.class, registrationPor=
tType);
+ WSRPV2RegistrationPortType registrationPortType =3D wsService.=
getPort(WSRPV2RegistrationPortType.class);
registrationURL =3D (String)((BindingProvider)registrationPort=
Type).getRequestContext().get(BindingProvider.ENDPOINT_ADDRESS_PROPERTY);
=
setFailed(false);
@@ -260,22 +254,18 @@
}
else if (wsrp1 !=3D null)
{
- service =3D Service.create(wsdlURL, wsrp1);
+ wsService =3D Service.create(wsdlURL, wsrp1);
=
- WSRPV1MarkupPortType markupPortType =3D service.getPort(WSRPV1=
MarkupPortType.class);
- services.put(WSRPV1MarkupPortType.class, markupPortType);
+ WSRPV1MarkupPortType markupPortType =3D wsService.getPort(WSRP=
V1MarkupPortType.class);
markupURL =3D (String)((BindingProvider)markupPortType).getReq=
uestContext().get(BindingProvider.ENDPOINT_ADDRESS_PROPERTY);
=
- WSRPV1ServiceDescriptionPortType sdPort =3D service.getPort(WS=
RPV1ServiceDescriptionPortType.class);
- services.put(WSRPV1ServiceDescriptionPortType.class, sdPort);
+ WSRPV1ServiceDescriptionPortType sdPort =3D wsService.getPort(=
WSRPV1ServiceDescriptionPortType.class);
serviceDescriptionURL =3D (String)((BindingProvider)sdPort).ge=
tRequestContext().get(BindingProvider.ENDPOINT_ADDRESS_PROPERTY);
=
- WSRPV1PortletManagementPortType managementPortType =3D service=
.getPort(WSRPV1PortletManagementPortType.class);
- services.put(WSRPV1PortletManagementPortType.class, management=
PortType);
+ WSRPV1PortletManagementPortType managementPortType =3D wsServi=
ce.getPort(WSRPV1PortletManagementPortType.class);
portletManagementURL =3D (String)((BindingProvider)managementP=
ortType).getRequestContext().get(BindingProvider.ENDPOINT_ADDRESS_PROPERTY);
=
- WSRPV1RegistrationPortType registrationPortType =3D service.ge=
tPort(WSRPV1RegistrationPortType.class);
- services.put(WSRPV1RegistrationPortType.class, registrationPor=
tType);
+ WSRPV1RegistrationPortType registrationPortType =3D wsService.=
getPort(WSRPV1RegistrationPortType.class);
registrationURL =3D (String)((BindingProvider)registrationPort=
Type).getRequestContext().get(BindingProvider.ENDPOINT_ADDRESS_PROPERTY);
=
setFailed(false);
--===============4483252169698134098==--