public class ConfigurableObjectInputStream extends ObjectInputStreamSE
CodebaseAwareObjectInputStream
の基本クラスとして機能します。ObjectInputStream.GetFieldSE
baseWireHandleSE, PROTOCOL_VERSION_1SE, PROTOCOL_VERSION_2SE, SC_BLOCK_DATASE, SC_ENUMSE, SC_EXTERNALIZABLESE, SC_SERIALIZABLESE, SC_WRITE_METHODSE, STREAM_MAGICSE, STREAM_VERSIONSE, SUBCLASS_IMPLEMENTATION_PERMISSIONSE, SUBSTITUTION_PERMISSIONSE, TC_ARRAYSE, TC_BASESE, TC_BLOCKDATASE, TC_BLOCKDATALONGSE, TC_CLASSSE, TC_CLASSDESCSE, TC_ENDBLOCKDATASE, TC_ENUMSE, TC_EXCEPTIONSE, TC_LONGSTRINGSE, TC_MAXSE, TC_NULLSE, TC_OBJECTSE, TC_PROXYCLASSDESCSE, TC_REFERENCESE, TC_RESETSE, TC_STRINGSE
コンストラクターと説明 |
---|
ConfigurableObjectInputStream(InputStreamSE in, ClassLoaderSE classLoader) 指定された InputStream および ClassLoader の新しい ConfigurableObjectInputStream を作成します。 |
ConfigurableObjectInputStream(InputStreamSE in, ClassLoaderSE classLoader, boolean acceptProxyClasses) 指定された InputStream および ClassLoader の新しい ConfigurableObjectInputStream を作成します。 |
修飾子と型 | メソッドと説明 |
---|---|
protected ClassLoaderSE | getFallbackClassLoader() ClassLoader が指定されておらず、ObjectInputStream 自身のデフォルトクラスローダーが失敗した場合に使用するフォールバック ClassLoader を返します。 |
protected ClassSE<?> | resolveClass(ObjectStreamClassSE classDesc) |
protected ClassSE<?> | resolveFallbackIfPossible(StringSE className, ClassNotFoundExceptionSE ex) フォールバッククラスローダーに対して指定されたクラス名を解決します。 |
protected ClassSE<?> | resolveProxyClass(StringSE[] interfaces) |
availableSE, closeSE, defaultReadObjectSE, enableResolveObjectSE, readSE, readSE, readBooleanSE, readByteSE, readCharSE, readClassDescriptorSE, readDoubleSE, readFieldsSE, readFloatSE, readFullySE, readFullySE, readIntSE, readLineSE, readLongSE, readObjectSE, readObjectOverrideSE, readShortSE, readStreamHeaderSE, readUnsharedSE, readUnsignedByteSE, readUnsignedShortSE, readUTFSE, registerValidationSE, resolveObjectSE, skipBytesSE
markSE, markSupportedSE, readSE, resetSE, skipSE
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSE
readSE, skipSE
public ConfigurableObjectInputStream(InputStreamSE in, @Nullable ClassLoaderSE classLoader) throws IOExceptionSE
in
- 読み込み元の InputStreamclassLoader
- ローカルクラスのロードに使用する ClassLoaderIOExceptionSE
ObjectInputStream(java.io.InputStream)
SEpublic ConfigurableObjectInputStream(InputStreamSE in, @Nullable ClassLoaderSE classLoader, boolean acceptProxyClasses) throws IOExceptionSE
in
- 読み込み元の InputStreamclassLoader
- ローカルクラスのロードに使用する ClassLoaderacceptProxyClasses
- プロキシクラスの逆直列化を受け入れるかどうか (セキュリティ対策として無効にすることができます)IOExceptionSE
ObjectInputStream(java.io.InputStream)
SEprotected ClassSE<?> resolveClass(ObjectStreamClassSE classDesc) throws IOExceptionSE, ClassNotFoundExceptionSE
ObjectInputStreamSE
の resolveClassSE
IOExceptionSE
ClassNotFoundExceptionSE
protected ClassSE<?> resolveProxyClass(StringSE[] interfaces) throws IOExceptionSE, ClassNotFoundExceptionSE
ObjectInputStreamSE
の resolveProxyClassSE
IOExceptionSE
ClassNotFoundExceptionSE
protected ClassSE<?> resolveFallbackIfPossible(StringSE className, ClassNotFoundExceptionSE ex) throws IOExceptionSE, ClassNotFoundExceptionSE
デフォルトの実装では、利用可能なフォールバックがないため、元の例外が単に再スローされます。
className
- 解決するクラス名 ex
- クラスをロードしようとしたときにスローされた元の例外 null
)IOExceptionSE
ClassNotFoundExceptionSE
@Nullable protected ClassLoaderSE getFallbackClassLoader() throws IOExceptionSE
デフォルトの実装は null
を返すだけで、特定のフォールバックが利用できないことを示します。