com.caucho.quercus.marshal
Class JavaMarshal

java.lang.Object
  extended by com.caucho.quercus.marshal.Marshal
      extended by com.caucho.quercus.marshal.JavaMarshal
Direct Known Subclasses:
JavaCollectionMarshal, JavaListMarshal, JavaMapMarshal, ProJavaMarshal

public class JavaMarshal
extends Marshal

Code for marshaling arguments.


Field Summary
protected  JavaClassDef _def
           
protected  boolean _isNotNull
           
protected  boolean _isUnmarshalNullAsFalse
           
 
Fields inherited from class com.caucho.quercus.marshal.Marshal
BINARY_BINARY_VALUE_COST, BINARY_BYTE_ARRAY_COST, BINARY_BYTE_OBJECT_ARRAY_COST, BINARY_CHARACTER_ARRAY_COST, BINARY_CHARACTER_OBJECT_ARRAY_COST, BINARY_STRING_COST, BINARY_STRING_VALUE_COST, COST_BINARY_TO_BYTE, COST_BINARY_TO_STRING, COST_EQUAL, COST_FROM_NULL, COST_IDENTICAL, COST_INCOMPATIBLE, COST_NUMERIC_LOSSLESS, COST_NUMERIC_LOSSY, COST_STRING_TO_BINARY, COST_STRING_TO_BYTE, COST_STRING_TO_CHAR, COST_STRING_TO_CHAR_ARRAY, COST_TO_BOOLEAN, COST_TO_BYTE_ARRAY, COST_TO_CHAR, COST_TO_CHAR_ARRAY, COST_TO_JAVA_OBJECT, COST_TO_STRING, COST_VALUE, DOUBLE_CONVERTIBLE_BYTE_COST, DOUBLE_CONVERTIBLE_BYTE_OBJECT_COST, DOUBLE_CONVERTIBLE_DOUBLE_COST, DOUBLE_CONVERTIBLE_DOUBLE_OBJECT_COST, DOUBLE_CONVERTIBLE_DOUBLE_VALUE_COST, DOUBLE_CONVERTIBLE_FLOAT_COST, DOUBLE_CONVERTIBLE_FLOAT_OBJECT_COST, DOUBLE_CONVERTIBLE_INTEGER_COST, DOUBLE_CONVERTIBLE_INTEGER_OBJECT_COST, DOUBLE_CONVERTIBLE_LONG_COST, DOUBLE_CONVERTIBLE_LONG_OBJECT_COST, DOUBLE_CONVERTIBLE_LONG_VALUE_COST, FOUR, LONG_CONVERTIBLE_BYTE_COST, LONG_CONVERTIBLE_BYTE_OBJECT_COST, LONG_CONVERTIBLE_DOUBLE_COST, LONG_CONVERTIBLE_DOUBLE_OBJECT_COST, LONG_CONVERTIBLE_DOUBLE_VALUE_COST, LONG_CONVERTIBLE_FLOAT_COST, LONG_CONVERTIBLE_FLOAT_OBJECT_COST, LONG_CONVERTIBLE_INTEGER_COST, LONG_CONVERTIBLE_INTEGER_OBJECT_COST, LONG_CONVERTIBLE_LONG_COST, LONG_CONVERTIBLE_LONG_OBJECT_COST, LONG_CONVERTIBLE_LONG_VALUE_COST, MAX, ONE, PHP5_BINARY_VALUE_COST, PHP5_BYTE_ARRAY_COST, PHP5_BYTE_OBJECT_ARRAY_COST, PHP5_CHARACTER_ARRAY_COST, PHP5_CHARACTER_OBJECT_ARRAY_COST, PHP5_STRING_COST, PHP5_STRING_VALUE_COST, THREE, TWO, UNICODE_BINARY_VALUE_COST, UNICODE_BYTE_ARRAY_COST, UNICODE_BYTE_OBJECT_ARRAY_COST, UNICODE_CHARACTER_ARRAY_COST, UNICODE_CHARACTER_OBJECT_ARRAY_COST, UNICODE_STRING_COST, UNICODE_STRING_VALUE_COST, ZERO
 
Constructor Summary
JavaMarshal(JavaClassDef def, boolean isNotNull)
           
JavaMarshal(JavaClassDef def, boolean isNotNull, boolean isUnmarshalNullAsFalse)
           
 
Method Summary
 java.lang.Class getExpectedClass()
           
protected  int getMarshalingCostImpl(Value argValue)
           
 java.lang.Object marshal(Env env, Expr expr, java.lang.Class argClass)
           
 java.lang.Object marshal(Env env, Value value, java.lang.Class argClass)
           
protected static java.lang.String shortName(java.lang.Class cl)
           
 Value unmarshal(Env env, java.lang.Object value)
           
 
Methods inherited from class com.caucho.quercus.marshal.Marshal
getMarshalingCost, getMarshalingCost, isBoolean, isDouble, isLong, isReadOnly, isReference, isString, isValue
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

_def

protected final JavaClassDef _def

_isNotNull

protected final boolean _isNotNull

_isUnmarshalNullAsFalse

protected final boolean _isUnmarshalNullAsFalse
Constructor Detail

JavaMarshal

public JavaMarshal(JavaClassDef def,
                   boolean isNotNull)

JavaMarshal

public JavaMarshal(JavaClassDef def,
                   boolean isNotNull,
                   boolean isUnmarshalNullAsFalse)
Method Detail

marshal

public java.lang.Object marshal(Env env,
                                Expr expr,
                                java.lang.Class argClass)
Specified by:
marshal in class Marshal

marshal

public java.lang.Object marshal(Env env,
                                Value value,
                                java.lang.Class argClass)
Overrides:
marshal in class Marshal

unmarshal

public Value unmarshal(Env env,
                       java.lang.Object value)
Overrides:
unmarshal in class Marshal

shortName

protected static final java.lang.String shortName(java.lang.Class cl)

getMarshalingCostImpl

protected int getMarshalingCostImpl(Value argValue)
Overrides:
getMarshalingCostImpl in class Marshal

getExpectedClass

public final java.lang.Class getExpectedClass()
Overrides:
getExpectedClass in class Marshal