com.google.appengine.api.datastore
Class KeyFactory.Builder

java.lang.Object
  extended by com.google.appengine.api.datastore.KeyFactory.Builder
Enclosing class:
KeyFactory

public static final class KeyFactory.Builder
extends java.lang.Object

Helper class that aids in the construction of Keys with ancestors. Initialize the Builder with the topmost ancestor in your key path and then add children using the addChild(java.lang.String, java.lang.String) overload that best suits your needs. When finished adding children, call getKey() to retrieve your Key or getString() to retrieve your Key encoded as a websafe String. Examples:

 import com.google.appengine.api.datastore.KeyFactory.Builder;

 ...

 Key key = new Builder("Person", 88).addChild("Address", 24).getKey();
 String keyStr = new Builder("Photo Album", "Vacation").addChild("Photo", 1424).getString();

 


Constructor Summary
KeyFactory.Builder(Key key)
          Create a Builder, establishing the provided Key as the topmost ancestor.
KeyFactory.Builder(java.lang.String kind, long id)
          Create a Builder, establishing a Key constructed from the provided kind and id as the topmost ancestor.
KeyFactory.Builder(java.lang.String kind, java.lang.String name)
          Create a Builder, establishing a Key constructed from the provided kind and name as the topmost ancestor.
 
Method Summary
 KeyFactory.Builder addChild(java.lang.String kind, long id)
          Add a Key constructed from the provided kind and id as the child of the Key most recently added to the Builder.
 KeyFactory.Builder addChild(java.lang.String kind, java.lang.String name)
          Add a Key constructed from the provided kind and name as the child of the Key most recently added to the Builder.
 Key getKey()
           
 java.lang.String getString()
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

KeyFactory.Builder

public KeyFactory.Builder(java.lang.String kind,
                          java.lang.String name)
Create a Builder, establishing a Key constructed from the provided kind and name as the topmost ancestor.

Parameters:
kind - the kind of the topmost ancestor
name - the name of the topmost ancestor in kind, as an arbitrary string unique across root entities of this kind

KeyFactory.Builder

public KeyFactory.Builder(java.lang.String kind,
                          long id)
Create a Builder, establishing a Key constructed from the provided kind and id as the topmost ancestor.

Parameters:
kind - the kind of the topmost ancestor
id - the numeric identifier of the topmost ancestor in kind, unique across root entities of this kind, must not be zero

KeyFactory.Builder

public KeyFactory.Builder(Key key)
Create a Builder, establishing the provided Key as the topmost ancestor.

Parameters:
key - the topmost ancestor
Method Detail

addChild

public KeyFactory.Builder addChild(java.lang.String kind,
                                   java.lang.String name)
Add a Key constructed from the provided kind and name as the child of the Key most recently added to the Builder.

Parameters:
kind - the kind of the child
name - the name of the child in kind, as an arbitrary string unique across entities of this kind with the same parent
Returns:
this

addChild

public KeyFactory.Builder addChild(java.lang.String kind,
                                   long id)
Add a Key constructed from the provided kind and id as the child of the Key most recently added to the Builder.

Parameters:
kind - the kind of the child
id - the numeric identifier of the child in kind, unique across entities of this kind with the same parent, must not be zero
Returns:
this

getKey

public Key getKey()
Returns:
The most recently added Key.

getString

public java.lang.String getString()
Returns:
The most recently added Key, encoded as a websafe String.