Class ClassPopulator<P>

java.lang.Object
com.googlecode.objectify.impl.translate.ClassPopulator<P>
All Implemented Interfaces:
Populator<P>

public class ClassPopulator<P> extends Object implements Populator<P>

Used by translators to populate properties between POJO and PropertiesContainer. Unlike translators, this does not create the POJO or container, it just copies translated properties between them.

Always excludes the key fields, @Id and @Parent.

Author:
Jeff Schnitzer invalid input: '<'[email protected]>
  • Constructor Details

  • Method Details

    • load

      public void load(com.google.cloud.datastore.FullEntity<?> node, LoadContext ctx, Path path, P into)
      Description copied from interface: Populator

      Loads the content of the specified datastore node into an existing POJO.

      Specified by:
      load in interface Populator<P>
      Parameters:
      node - is the part of the native datastore entity tree we are transforming.
      ctx - holds state information during an entity load.
      path - is the current path to this POJO
    • save

      public void save(P pojo, boolean index, SaveContext ctx, Path path, com.google.cloud.datastore.FullEntity.Builder<?> into)
      Description copied from interface: Populator
      Saves data from the POJO into the entity builder.
      Specified by:
      save in interface Populator<P>
      Parameters:
      pojo - is an object from the pojo entity graph; possibly the whole graph or possibly just a leaf field.
      index - is whether the instruction so far is to index or not index property values
      path - is the path that we have taken to get here, which could be long due to re-entrant translators (ie, an embedded pojo that also has a reference to the same class).
    • getKeyMetadata

      public KeyMetadata<P> getKeyMetadata()
      Gets the key metadata but only if this was an @Entity annotated class. Should not be called if not.