com.google.appengine.api.datastore
Class DataTypeUtils

java.lang.Object
  extended by com.google.appengine.api.datastore.DataTypeUtils

public final class DataTypeUtils
extends java.lang.Object

DataTypeUtils presents a simpler interface that allows user-code to determine what Classes can safely be stored as properties in the data store. Currently this list includes:


Field Summary
static int MAX_LINK_PROPERTY_LENGTH
           
static int MAX_SHORT_BLOB_PROPERTY_LENGTH
          This is the maximum number of bytes that a ShortBlob property can contain.
static int MAX_STRING_PROPERTY_LENGTH
          This is the maximum number of characters that a string property can contain.
 
Method Summary
static void checkSupportedValue(java.lang.Object value)
          If the specified object cannot be used as the value for a Entity property, throw an exception with the appropriate explanation.
static void checkSupportedValue(java.lang.String name, java.lang.Object value)
          If the specified object cannot be used as the value for a Entity property, throw an exception with the appropriate explanation.
static java.util.Set<java.lang.Class<?>> getSupportedTypes()
          Returns an unmodifiable Set of supported Class objects.
static boolean isSupportedType(java.lang.Class<?> clazz)
          Returns true if and only if the supplied Class can be stored in the data store.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

MAX_STRING_PROPERTY_LENGTH

public static final int MAX_STRING_PROPERTY_LENGTH
This is the maximum number of characters that a string property can contain. If your string has more characters, you need to wrap it in a Text.

See Also:
Constant Field Values

MAX_SHORT_BLOB_PROPERTY_LENGTH

public static final int MAX_SHORT_BLOB_PROPERTY_LENGTH
This is the maximum number of bytes that a ShortBlob property can contain. If your data is larger, you need to use a Blob.

See Also:
Constant Field Values

MAX_LINK_PROPERTY_LENGTH

public static final int MAX_LINK_PROPERTY_LENGTH
See Also:
Constant Field Values
Method Detail

checkSupportedValue

public static void checkSupportedValue(java.lang.Object value)
If the specified object cannot be used as the value for a Entity property, throw an exception with the appropriate explanation.

Throws:
java.lang.NullPointerException - if the specified value is null
java.lang.IllegalArgumentException - if the type is not supported, or if the object is in some other way invalid.

checkSupportedValue

public static void checkSupportedValue(java.lang.String name,
                                       java.lang.Object value)
If the specified object cannot be used as the value for a Entity property, throw an exception with the appropriate explanation.

Throws:
java.lang.NullPointerException - if the specified value is null
java.lang.IllegalArgumentException - if the type is not supported, or if the object is in some other way invalid.

isSupportedType

public static boolean isSupportedType(java.lang.Class<?> clazz)
Returns true if and only if the supplied Class can be stored in the data store.


getSupportedTypes

public static java.util.Set<java.lang.Class<?>> getSupportedTypes()
Returns an unmodifiable Set of supported Class objects.