com.googlecode.objectify.annotation.Unindexed Maven / Gradle / Ivy
Show all versions of objectify Show documentation
package com.googlecode.objectify.annotation;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
import com.googlecode.objectify.condition.If;
/**
* This annotation controls whether or not fields are indexed in the datastore.
*
* When placed on a simple field, the field will be not be indexed. If the field is
* an @Embedded class or a collection of @Embedded classes, the fields of those classes
* will be indexed as if the class had the @Unindexed annotation.
*
* When placed on an entity class or an embedded class, this sets the default
* for all fields to be unindexed. It can be overridden by field level annotations.
*
* If an embedded class field is annotated with @Unindexed, any @Indexed or @Unindexed
* annotation on the class itself is ignored.
*
* If passed one or more classes that implement the {@code If} interface, the
* value will be unindexed only if it tests positive for any of the conditions. This
* allows "partial indexing" of only some categories of values (ie, true but not false).
*
* @author Jeff Schnitzer
* @author Scott Hernandez >[] value() default { com.googlecode.objectify.condition.Always.class };
}