ws-scout-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From tcunn...@apache.org
Subject svn commit: r818152 - in /webservices/scout/trunk/src/main/java/org/apache/ws/scout/registry: JAXBContextUtil.java RegistryImpl.java RegistryV3Impl.java
Date Wed, 23 Sep 2009 16:12:52 GMT
Author: tcunning
Date: Wed Sep 23 16:12:52 2009
New Revision: 818152

URL: http://svn.apache.org/viewvc?rev=818152&view=rev
Log:
SCOUT-91
Cache the JAXBContext in a hash and pass it out rather than getting a 
newInstance every time.

Added:
    webservices/scout/trunk/src/main/java/org/apache/ws/scout/registry/JAXBContextUtil.java
Modified:
    webservices/scout/trunk/src/main/java/org/apache/ws/scout/registry/RegistryImpl.java
    webservices/scout/trunk/src/main/java/org/apache/ws/scout/registry/RegistryV3Impl.java

Added: webservices/scout/trunk/src/main/java/org/apache/ws/scout/registry/JAXBContextUtil.java
URL: http://svn.apache.org/viewvc/webservices/scout/trunk/src/main/java/org/apache/ws/scout/registry/JAXBContextUtil.java?rev=818152&view=auto
==============================================================================
--- webservices/scout/trunk/src/main/java/org/apache/ws/scout/registry/JAXBContextUtil.java
(added)
+++ webservices/scout/trunk/src/main/java/org/apache/ws/scout/registry/JAXBContextUtil.java
Wed Sep 23 16:12:52 2009
@@ -0,0 +1,34 @@
+package org.apache.ws.scout.registry;
+
+import javax.xml.bind.JAXBContext;
+import javax.xml.bind.JAXBElement;
+import javax.xml.bind.JAXBException;
+import java.util.HashMap;
+import java.util.Map;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
+public class JAXBContextUtil {
+
+	public static final String UDDI_V2_VERSION = "2.0";
+	public static final String UDDI_V3_VERSION = "3.0";
+	
+	private static Log log = LogFactory.getLog(JAXBContextUtil.class);
+	private static final Map<String, JAXBContext> JAXBContexts = new HashMap<String,
JAXBContext>();
+
+	static {
+		try {
+			JAXBContexts.put(UDDI_V2_VERSION, JAXBContext.newInstance(new Class[] {org.apache.ws.scout.model.uddi.v2.ObjectFactory.class}));
+			JAXBContexts.put(UDDI_V3_VERSION, JAXBContext.newInstance(new Class[] {org.uddi.api_v3.ObjectFactory.class}));
+		} catch (JAXBException e) {
+			log.error("Initialization of JAXBMarshaller failed:" + e, e);
+			throw new ExceptionInInitializerError(e);
+		}
+	}
+	
+	public static JAXBContext getContext(String uddiVersion) {
+		return JAXBContexts.get(uddiVersion);
+	}
+	
+}

Modified: webservices/scout/trunk/src/main/java/org/apache/ws/scout/registry/RegistryImpl.java
URL: http://svn.apache.org/viewvc/webservices/scout/trunk/src/main/java/org/apache/ws/scout/registry/RegistryImpl.java?rev=818152&r1=818151&r2=818152&view=diff
==============================================================================
--- webservices/scout/trunk/src/main/java/org/apache/ws/scout/registry/RegistryImpl.java (original)
+++ webservices/scout/trunk/src/main/java/org/apache/ws/scout/registry/RegistryImpl.java Wed
Sep 23 16:12:52 2009
@@ -226,8 +226,8 @@
 		
 		try
 		{
-			JAXBContext context = JAXBContext.newInstance(new Class[] {ObjectFactory.class});
-			JAXBContext v3context = JAXBContext.newInstance(new Class[] {org.uddi.api_v3.ObjectFactory.class});
+			JAXBContext context = JAXBContextUtil.getContext(JAXBContextUtil.UDDI_V2_VERSION);
+			JAXBContext v3context = JAXBContextUtil.getContext(JAXBContextUtil.UDDI_V3_VERSION);
 			if ("3.0".equals(uddiVer)) { 
 				this.unmarshaller = v3context.createUnmarshaller(); 
 			} else {

Modified: webservices/scout/trunk/src/main/java/org/apache/ws/scout/registry/RegistryV3Impl.java
URL: http://svn.apache.org/viewvc/webservices/scout/trunk/src/main/java/org/apache/ws/scout/registry/RegistryV3Impl.java?rev=818152&r1=818151&r2=818152&view=diff
==============================================================================
--- webservices/scout/trunk/src/main/java/org/apache/ws/scout/registry/RegistryV3Impl.java
(original)
+++ webservices/scout/trunk/src/main/java/org/apache/ws/scout/registry/RegistryV3Impl.java
Wed Sep 23 16:12:52 2009
@@ -186,8 +186,8 @@
 		
 		try
 		{
-			JAXBContext context = JAXBContext.newInstance(new Class[] {ObjectFactory.class});
-			JAXBContext v3context = JAXBContext.newInstance(new Class[] {org.uddi.api_v3.ObjectFactory.class});
+			JAXBContext context = JAXBContextUtil.getContext(JAXBContextUtil.UDDI_V2_VERSION);
+			JAXBContext v3context = JAXBContextUtil.getContext(JAXBContextUtil.UDDI_V3_VERSION);
 			if ("3.0".equals(uddiVer)) { 
 				this.unmarshaller = v3context.createUnmarshaller(); 
 			} else {



---------------------------------------------------------------------
To unsubscribe, e-mail: scout-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: scout-dev-help@ws.apache.org


Mime
View raw message