DataTypeUtils (Google App Engine API for Java)

com.google.appengine.api.datastore

Class DataTypeUtils

  • java.lang.Object
    • 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:

    • String (but not StringBuffer),
    • All numeric primitive wrappers (Byte through Long, Float and Double, but not BigInteger or BigDecimal.
    • Key, for storing references to other Entity objects.
    • User, for storing references to users.
    • ShortBlob, for storing binary data small enough to be indexed. This means properties of this type, unlike Blob properties, can be filtered and sorted on in queries.
    • Blob, for storing unindexed binary data less than 1MB.
    • Text, for storing unindexed String data less than 1MB.
    • BlobKey, for storing references to user uploaded blobs (which may exceed 1MB).
    • Date.
    • Link.

    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method and Description
      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.
      static boolean isUnindexableType(java.lang.Class<?> clazz)
      Returns true if the supplied Class cannot be indexed.
      • 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 bytes that a string property can contain. If your string has more bytes, 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
      • 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.
      • isUnindexableType

        public static boolean isUnindexableType(java.lang.Class<?> clazz)
        Returns true if the supplied Class cannot be indexed.