public TransferObjectWrapper getObjectWrapper(TransferInputStream tins)
 {
     allTypeBean = new AllTypeBean();
     allTypeBean.setAboolean(tins.readBoolean());
     allTypeBean.setAbyte(tins.readByte());
     allTypeBean.setAshort(tins.readShort());
     allTypeBean.setAchar(tins.readChar());
     allTypeBean.setAint(tins.readInt());
     allTypeBean.setAlong(tins.readLong());
     allTypeBean.setAfloat(tins.readFloat());
     allTypeBean.setAdouble(tins.readDouble());
     allTypeBean.setAdate(tins.readDate());
     allTypeBean.setAstring(tins.readString());
     return(this);
 }
        // server call
        public override void setByteData(byte[] buf)
        {
            TransferInputStream tins = new TransferInputStream(buf);

            this.calleeClass  = tins.readString();
            this.calleeMethod = tins.readString();
            this.returnType   = tins.readByte();
            this.compress     = tins.readBoolean();

            while (!tins.isFinished())
            {
                byte type = tins.readByte();
                if (type == DATATYPE_BOOLEAN)
                {
                    putBoolean(tins.readBoolean());
                }
                else if (type == DATATYPE_BYTE)
                {
                    putByte(tins.readByte());
                }
                else if (type == DATATYPE_SHORT)
                {
                    putShort(tins.readShort());
                }
                else if (type == DATATYPE_CHAR)
                {
                    putChar(tins.readChar());
                }
                else if (type == DATATYPE_INT)
                {
                    putInt(tins.readInt());
                }
                else if (type == DATATYPE_LONG)
                {
                    putLong(tins.readLong());
                }
                else if (type == DATATYPE_FLOAT)
                {
                    putFloat(tins.readFloat());
                }
                else if (type == DATATYPE_DOUBLE)
                {
                    putDouble(tins.readDouble());
                }
                else if (type == DATATYPE_DATE)
                {
                    putDate(tins.readDate());
                }
                else if (type == DATATYPE_STRING)
                {
                    putString(tins.readString());
                }
                else if (type == DATATYPE_BYTEARRAY)
                {
                    putByteArray(tins.readByteArray());
                }
                else if (type == DATATYPE_INTARRAY)
                {
                    putIntArray(tins.readIntArray());
                }
                else if (type == DATATYPE_LONGARRAY)
                {
                    putLongArray(tins.readLongArray());
                }
                else if (type == DATATYPE_FLOATARRAY)
                {
                    putFloatArray(tins.readFloatArray());
                }
                else if (type == DATATYPE_DOUBLEARRAY)
                {
                    putDoubleArray(tins.readDoubleArray());
                }
                else if (type == DATATYPE_STRINGARRAY)
                {
                    putStringArray(tins.readStringArray());
                }
                else if (type == DATATYPE_WRAPPER)
                {
                    putWrapper(tins.readWrapper());
                }
            }
        }
        public static Object convertReturnByteArray(byte[] buf)
        {
            Object returnObject = null;

            TransferInputStream tins = new TransferInputStream(buf);
            byte returnType          = tins.readByte();

            if (returnType == DATATYPE_BOOLEAN)
            {
                returnObject = tins.readBoolean();
            }
            else if (returnType == DATATYPE_BYTE)
            {
                returnObject = tins.readByte();
            }
            else if (returnType == DATATYPE_SHORT)
            {
                returnObject = tins.readShort();
            }
            else if (returnType == DATATYPE_CHAR)
            {
                returnObject = tins.readChar();
            }
            else if (returnType == DATATYPE_INT)
            {
                returnObject = tins.readInt();
            }
            else if (returnType == DATATYPE_LONG)
            {
                returnObject = tins.readLong();
            }
            else if (returnType == DATATYPE_FLOAT)
            {
                returnObject = tins.readFloat();
            }
            else if (returnType == DATATYPE_DOUBLE)
            {
                returnObject = tins.readDouble();
            }
            else if (returnType == DATATYPE_DATE)
            {
                returnObject = tins.readDate();
            }
            else if (returnType == DATATYPE_STRING)
            {
                returnObject = tins.readString();
            }
            else if (returnType == DATATYPE_WRAPPER)
            {
                returnObject = (TransferObjectWrapper)tins.readWrapper();
            }
            else if (returnType == DATATYPE_VOID)
            {
                returnObject = null;
            }
            else if (returnType == DATATYPE_BYTEARRAY)
            {
                returnObject = tins.readByteArray();
            }
            else if (returnType == DATATYPE_INTARRAY)
            {
                returnObject = tins.readIntArray();
            }
            else if (returnType == DATATYPE_LONGARRAY)
            {
                returnObject = tins.readLongArray();
            }
            else if (returnType == DATATYPE_FLOATARRAY)
            {
                returnObject = tins.readFloatArray();
            }
            else if (returnType == DATATYPE_DOUBLEARRAY)
            {
                returnObject = tins.readDoubleArray();
            }
            else if (returnType == DATATYPE_STRINGARRAY)
            {
                returnObject = tins.readStringArray();
            }

            return(returnObject);
        }