magicobjectinputstream.java
来自「JGRoups源码」· Java 代码 · 共 52 行
JAVA
52 行
package org.jgroups.util;import org.apache.commons.logging.Log;import org.apache.commons.logging.LogFactory;import org.jgroups.ChannelException;import org.jgroups.conf.ClassConfigurator;import java.io.IOException;import java.io.InputStream;import java.io.ObjectStreamClass;/** * Uses magic numbers for class descriptors * @author Bela Ban * @version $Id: MagicObjectInputStream.java,v 1.5 2006/02/27 14:13:30 belaban Exp $ */public class MagicObjectInputStream extends ContextObjectInputStream { static volatile ClassConfigurator conf=null; static final Log log=LogFactory.getLog(MagicObjectInputStream.class); public MagicObjectInputStream(InputStream is) throws IOException { super(is); if(conf == null) { try { conf=ClassConfigurator.getInstance(false); } catch(ChannelException e) { log.error("ClassConfigurator could not be instantiated", e); } } } protected ObjectStreamClass readClassDescriptor() throws IOException, ClassNotFoundException { ObjectStreamClass retval; int magic_num=super.readInt(); if(conf == null || magic_num == -1) { return super.readClassDescriptor(); } retval=conf.getObjectStreamClassFromMagicNumber(magic_num); if(retval == null) throw new ClassNotFoundException("failed fetching class descriptor for magic number " + magic_num); //if(log.isTraceEnabled()) //log.trace("reading descriptor (from " + magic_num + "): " + retval.getName()); return retval; }}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?