public void writeValue(DataOutputStream dos) throws Exception {
        if ((this.value instanceof Byte))
            dos.writeByte(((Byte) this.value).byteValue());
        else if ((this.value instanceof Short))
            dos.writeShort(((Short) this.value).shortValue());
        else if ((this.value instanceof Integer))
            dos.writeInt(((Integer) this.value).intValue());
        else if ((this.value instanceof Long))
            dos.writeLong(((Long) this.value).longValue());
        else if ((this.value instanceof Float))
            dos.writeFloat(((Float) this.value).floatValue());
        else if ((this.value instanceof Double))
            dos.writeDouble(((Double) this.value).doubleValue());
        else if ((this.value instanceof String)) {
            dos.writeUTF((String) value);
        } else
            throw new IllegalStateException();
    }