public static byte toByteValue(Object o, byte defaultValue) {
	if (o instanceof Byte) return ((Byte) o).byteValue();
	if (o instanceof Character) return (byte) (((Character) o).charValue());
	else if (o instanceof Boolean) return (byte) ((((Boolean) o).booleanValue()) ? 1 : 0);
	else if (o instanceof Number) return (((Number) o).byteValue());
	else if (o instanceof String) return (byte) toDoubleValue(o.toString(), defaultValue);
	else if (o instanceof ObjectWrap) {
	    return toByteValue(((ObjectWrap) o).getEmbededObject(toByte(defaultValue)), defaultValue);
	}
	return defaultValue;
    }
public static byte toByteValue ( Object o , byte defaultValue ) { if ( o instanceof Byte ) return ( ( Byte ) o ) . byteValue ( ) ; if ( o instanceof Character ) return ( byte ) ( ( ( Character ) o ) . charValue ( ) ) ; else if ( o instanceof Boolean ) return ( byte ) ( ( ( ( Boolean ) o ) . booleanValue ( ) ) ? 1 : 0 ) ; else if ( o instanceof Number ) return ( ( ( Number ) o ) . byteValue ( ) ) ; else if ( o instanceof String ) return ( byte ) toDoubleValue ( o . toString ( ) , defaultValue ) ; else if ( o instanceof ObjectWrap ) { return toByteValue ( ( ( ObjectWrap ) o ) . getEmbededObject ( toByte ( defaultValue ) ) , defaultValue ) ; } return defaultValue ; }
cast a Object to a byte value (primitive value type)

@param o Object to cast
@param defaultValue
@return casted byte value