You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by dk...@apache.org on 2012/12/19 17:30:14 UTC
svn commit: r1423926 -
/cxf/trunk/rt/core/src/main/java/org/apache/cxf/catalog/OASISCatalogManager.java
Author: dkulp
Date: Wed Dec 19 16:30:14 2012
New Revision: 1423926
URL: http://svn.apache.org/viewvc?rev=1423926&view=rev
Log:
[CXF-4707] Just use the String form of the URL for the cache. Simpler and less error prone.
Also use the concurrent set instead of a synchronized HashSet.
Modified:
cxf/trunk/rt/core/src/main/java/org/apache/cxf/catalog/OASISCatalogManager.java
Modified: cxf/trunk/rt/core/src/main/java/org/apache/cxf/catalog/OASISCatalogManager.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/core/src/main/java/org/apache/cxf/catalog/OASISCatalogManager.java?rev=1423926&r1=1423925&r2=1423926&view=diff
==============================================================================
--- cxf/trunk/rt/core/src/main/java/org/apache/cxf/catalog/OASISCatalogManager.java (original)
+++ cxf/trunk/rt/core/src/main/java/org/apache/cxf/catalog/OASISCatalogManager.java Wed Dec 19 16:30:14 2012
@@ -22,13 +22,11 @@ import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.net.MalformedURLException;
-import java.net.URI;
import java.net.URISyntaxException;
import java.net.URL;
-import java.util.Collections;
import java.util.Enumeration;
-import java.util.HashSet;
import java.util.Set;
+import java.util.concurrent.CopyOnWriteArraySet;
import java.util.logging.Level;
import java.util.logging.Logger;
@@ -58,7 +56,7 @@ public class OASISCatalogManager {
private EntityResolver resolver;
private Object catalog;
- private Set<URI> loadedCatalogs = Collections.synchronizedSet(new HashSet<URI>());
+ private Set<String> loadedCatalogs = new CopyOnWriteArraySet<String>();
private Bus bus;
public OASISCatalogManager() {
@@ -144,15 +142,15 @@ public class OASISCatalogManager {
Enumeration<URL> catalogs = classLoader.getResources(name);
while (catalogs.hasMoreElements()) {
URL catalogURL = catalogs.nextElement();
- if (!loadedCatalogs.contains(URI.create(replaceWhitespace(catalogURL.toString())))) {
+ if (!loadedCatalogs.contains(catalogURL.toString())) {
((Catalog)catalog).parseCatalog(catalogURL);
- loadedCatalogs.add(URI.create(replaceWhitespace(catalogURL.toString())));
+ loadedCatalogs.add(catalogURL.toString());
}
}
}
public final void loadCatalog(URL catalogURL) throws IOException {
- if (!loadedCatalogs.contains(URI.create(replaceWhitespace(catalogURL.toString()))) && catalog != null) {
+ if (!loadedCatalogs.contains(catalogURL.toString()) && catalog != null) {
if ("file".equals(catalogURL.getProtocol())) {
try {
File file = new File(catalogURL.toURI());
@@ -166,17 +164,10 @@ public class OASISCatalogManager {
((Catalog)catalog).parseCatalog(catalogURL);
- loadedCatalogs.add(URI.create(replaceWhitespace(catalogURL.toString())));
+ loadedCatalogs.add(catalogURL.toString());
}
}
- private String replaceWhitespace(String str) {
- if (str.contains(" ")) {
- str = str.replace(" ", "%20");
- }
- return str;
- }
-
private static OASISCatalogManager getContextCatalog() {
try {
OASISCatalogManager oasisCatalog = new OASISCatalogManager();