1 17 18 package org.apache.avalon.cornerstone.blocks.masterstore; 19 20 import java.io.IOException ; 21 import java.io.InputStream ; 22 import java.io.ObjectInputStream ; 23 import java.io.ObjectStreamClass ; 24 import java.io.StreamCorruptedException ; 25 26 33 public class ClassLoaderObjectInputStream 34 extends ObjectInputStream 35 { 36 private ClassLoader m_classLoader; 37 38 public ClassLoaderObjectInputStream( final ClassLoader classLoader, 39 final InputStream inputStream ) 40 throws IOException , StreamCorruptedException 41 { 42 super( inputStream ); 43 m_classLoader = classLoader; 44 } 45 46 protected Class resolveClass( final ObjectStreamClass objectStreamClass ) 47 throws IOException , ClassNotFoundException 48 { 49 final Class clazz = 50 Class.forName( objectStreamClass.getName(), false, m_classLoader ); 51 52 if( null != clazz ) 53 { 54 return clazz; } 56 else 57 { 58 return super.resolveClass( objectStreamClass ); 60 } 61 } 62 } 63 | Popular Tags |