class JavaToValueConverter {

	public static Object convertValueType(Value value) {
		if (value == null) {
			return null;
		}
		
		if (value instanceof StringValue) {
			return ((StringValue) value).getValue();
		}
		else if (value instanceof IntValue) {
			return ((IntValue) value).getValue();
		}
		else if (value instanceof  LongValue) {
			return ((LongValue) value).getValue();
		}
		else if (value instanceof DoubleValue) {
			return ((DoubleValue) value).getValue();
		}
		else if (value instanceof FloatValue) {
			return ((FloatValue) value).getValue();
		}
		else if (value instanceof BooleanValue) {
			return ((BooleanValue) value).getValue();
		}
		else if (value instanceof ByteValue) {
			return ((ByteValue) value).getValue();
		}
		else if (value instanceof ShortValue) {
			return ((ShortValue) value).getValue();
		}
		else if (value instanceof CharValue) {
			return ((CharValue) value).getValue();
		}
		else {
			throw new IllegalArgumentException("Object is no primitive Java type.");
		}
	}

}