diff options
Diffstat (limited to 'framework')
-rw-r--r-- | framework/bundles/org.eclipse.ecf/src/org/eclipse/ecf/core/util/ClassResolverObjectInputStream.java | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/framework/bundles/org.eclipse.ecf/src/org/eclipse/ecf/core/util/ClassResolverObjectInputStream.java b/framework/bundles/org.eclipse.ecf/src/org/eclipse/ecf/core/util/ClassResolverObjectInputStream.java index ae72f94e4..1a3cd27b0 100644 --- a/framework/bundles/org.eclipse.ecf/src/org/eclipse/ecf/core/util/ClassResolverObjectInputStream.java +++ b/framework/bundles/org.eclipse.ecf/src/org/eclipse/ecf/core/util/ClassResolverObjectInputStream.java @@ -32,18 +32,20 @@ public class ClassResolverObjectInputStream extends ObjectInputStream { primClasses.put("void", void.class); //$NON-NLS-1$ } - public static ObjectInputStream create(BundleContext ctxt, InputStream ins) throws IOException { + public static ObjectInputStream create(BundleContext ctxt, InputStream ins, String filter) throws IOException, SecurityException { if (ctxt == null) return new ObjectInputStream(ins); try { - return new ClassResolverObjectInputStream(ctxt, ins, "(" + IClassResolver.BUNDLE_PROP_NAME + "=" + ctxt.getBundle().getSymbolicName() + ")"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ - } catch (SecurityException e) { - throw new IOException("Could not create ClassResolverObjectInputStream", e); //$NON-NLS-1$ + return new ClassResolverObjectInputStream(ctxt, ins, filter); } catch (InvalidSyntaxException e) { - throw new IOException("Could not create ClassResolverObjectInputStream", e); //$NON-NLS-1$ + throw new IOException("Could not create ClassResolverObjectInputStream because of InvalidSyntaxException in filter=" + filter); //$NON-NLS-1$ } } + public static ObjectInputStream create(BundleContext ctxt, InputStream ins) throws IOException { + return create(ctxt, ins, null); + } + private final BundleContext bundleContext; private ServiceTracker<IClassResolver, IClassResolver> classResolverST; private final Object trackerLock = new Object(); |