diff options
author | slewis | 2015-11-24 00:19:37 +0000 |
---|---|---|
committer | slewis | 2015-11-24 00:19:37 +0000 |
commit | 767a509a09ab3c446dc08e95448e3014310510a6 (patch) | |
tree | 4c1e63666b2813c3c4a465a2a31076e20cca06f0 /framework | |
parent | 87609c0fa5f1d9eb1d10c12c994f0dda5a5e0db1 (diff) | |
download | org.eclipse.ecf-767a509a09ab3c446dc08e95448e3014310510a6.tar.gz org.eclipse.ecf-767a509a09ab3c446dc08e95448e3014310510a6.tar.xz org.eclipse.ecf-767a509a09ab3c446dc08e95448e3014310510a6.zip |
Added static create method.
Change-Id: I0bafdae446f40d4b9ccbf6260018d0d459336ae9
Diffstat (limited to 'framework')
-rw-r--r-- | framework/bundles/org.eclipse.ecf/src/org/eclipse/ecf/core/util/ClassResolverObjectInputStream.java | 12 |
1 files changed, 12 insertions, 0 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 1da33bf64..ae72f94e4 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,6 +32,18 @@ public class ClassResolverObjectInputStream extends ObjectInputStream { primClasses.put("void", void.class); //$NON-NLS-1$ } + public static ObjectInputStream create(BundleContext ctxt, InputStream ins) throws IOException { + 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$ + } catch (InvalidSyntaxException e) { + throw new IOException("Could not create ClassResolverObjectInputStream", e); //$NON-NLS-1$ + } + } + private final BundleContext bundleContext; private ServiceTracker<IClassResolver, IClassResolver> classResolverST; private final Object trackerLock = new Object(); |