⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 serializeinetaddress.java

📁 High performance DB query
💻 JAVA
字号:
/* * @(#)$Id: SerializeInetAddress.java,v 1.6 2004/07/02 23:59:22 huebsch Exp $ * * Copyright (c) 2001-2004 Regents of the University of California. * All rights reserved. * * This file is distributed under the terms in the attached BERKELEY-LICENSE * file. If you do not find these files, copies can be found by writing to: * Computer Science Division, Database Group, Universite of California, * 617 Soda Hall #1776, Berkeley, CA 94720-1776. Attention: Berkeley License * * Copyright (c) 2003-2004 Intel Corporation. All rights reserved. * * This file is distributed under the terms in the attached INTEL-LICENSE file. * If you do not find these files, copies can be found by writing to: * Intel Research Berkeley, 2150 Shattuck Avenue, Suite 1300, * Berkeley, CA, 94704.  Attention:  Intel License Inquiry. */package util.network.serialization;import java.net.InetAddress;import java.net.UnknownHostException;/** * Class SerializeInetAddress * */public class SerializeInetAddress {    public static final byte[] NULL_VALUE = {0, 0, 0, 0};    /**     * Method serialize     *     * @param outputBuffer     * @param value     */    public static void serialize(GenericByteBuffer outputBuffer,                                 InetAddress value) {        byte theData[] = null;        if (value == null) {            theData = NULL_VALUE;        } else {            theData = value.getAddress();        }        for (int i = 0; i < theData.length; i++) {            outputBuffer.put(theData[i]);        }    }    /**     * Method serializeHostname     *     * @param outputBuffer     * @param value     */    public static void serializeHostname(GenericByteBuffer outputBuffer,                                         InetAddress value) {        if (value == null) {            SerializeString.serializeUTF8(outputBuffer, null);        } else {            SerializeString.serializeUTF8(outputBuffer,                                          value.getCanonicalHostName());        }    }    /**     * Method deSerialize     *     * @param inputBuffer     * @param bytes     * @return     */    public static InetAddress deSerialize(GenericByteBuffer inputBuffer,                                          int bytes) {        byte theData[] = new byte[bytes];        for (int i = 0; i < bytes; i++) {            theData[i] = inputBuffer.get();        }        if (theData == NULL_VALUE) {            return null;        }        try {            return InetAddress.getByAddress(theData);        } catch (UnknownHostException exception) {            throw new RuntimeException(                "SerializationManager: Unable to deserialize InetAddress:"                + theData + ", ERROR:" + exception.getClass().getName() + ": "                + exception.getMessage());        }    }    /**     * Method deSerializeHostname     *     * @param inputBuffer     * @return     */    public static InetAddress deSerializeHostname(            GenericByteBuffer inputBuffer) {        String theData = SerializeString.deSerializeUTF8(inputBuffer);        try {            return InetAddress.getByName(theData);        } catch (UnknownHostException exception) {            throw new RuntimeException(                "SerializationManager: Unable to deserialize InetAddress:"                + theData + ", ERROR:" + exception.getClass().getName() + ": "                + exception.getMessage());        }    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -