001
014
015 package com.liferay.portal.kernel.io;
016
017 import com.liferay.portal.kernel.util.ClassLoaderPool;
018 import com.liferay.portal.kernel.util.ClassResolverUtil;
019
020 import java.io.IOException;
021 import java.io.InputStream;
022 import java.io.ObjectInputStream;
023 import java.io.ObjectStreamClass;
024
025
028 public class AnnotatedObjectInputStream extends ObjectInputStream {
029
030 public AnnotatedObjectInputStream(InputStream inputStream)
031 throws IOException {
032
033 super(inputStream);
034 }
035
036 @Override
037 protected Class<?> resolveClass(ObjectStreamClass objectStreamClass)
038 throws ClassNotFoundException, IOException {
039
040 String contextName = readUTF();
041
042 ClassLoader classLoader = ClassLoaderPool.getClassLoader(contextName);
043
044 String className = objectStreamClass.getName();
045
046 return ClassResolverUtil.resolve(className, classLoader);
047 }
048
049 }