com.google.appengine.api.datastore.dev
Class LocalDatastoreService

java.lang.Object
  extended by AbstractLocalRpcService
      extended by com.google.appengine.api.datastore.dev.LocalDatastoreService

@ServiceProvider(value=)
public final class LocalDatastoreService
extends AbstractLocalRpcService

A local implementation of the Datastore service interface. This is a memory-based implementation which can persist itself to disk through a batch operation. TODO(tobyr) Improve this implementation such that it's backed by something like Derby (which is bundled with the JDK), perhaps in "iteration 2".


Field Summary
static java.lang.String BACKING_STORE_PROPERTY
          Where to read/store the datastore from/to.
static java.lang.String HIGH_REP_JOB_POLICY_CLASS_PROPERTY
          The fully-qualifed name of a class that implements HighRepJobPolicy and has a no-arg constructor.
static java.lang.String MAX_QUERY_LIFETIME_PROPERTY
          How long a query can stay "live" before we expire it.
static java.lang.String MAX_TRANSACTION_LIFETIME_PROPERTY
          How long a transaction can stay "live" before we expire it.
static java.lang.String NO_INDEX_AUTO_GEN_PROP
          True to prevent the datastore from writing com.google.apphosting.utils.config.IndexesXmlReader#GENERATED_INDEX_FILENAME.
static java.lang.String NO_STORAGE_PROPERTY
          True to put the datastore into "memory-only" mode.
static java.lang.String PACKAGE
          The package name for this service.
static java.lang.String STORE_DELAY_PROPERTY
          How long to wait before updating the persistent store in milliseconds.
 
Constructor Summary
LocalDatastoreService()
           
 
Method Summary
 VoidProto addActions(Status status, TaskQueueBulkAddRequest request)
          
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

PACKAGE

public static final java.lang.String PACKAGE
The package name for this service.

See Also:
Constant Field Values

MAX_QUERY_LIFETIME_PROPERTY

public static final java.lang.String MAX_QUERY_LIFETIME_PROPERTY
How long a query can stay "live" before we expire it.

See Also:
Constant Field Values

MAX_TRANSACTION_LIFETIME_PROPERTY

public static final java.lang.String MAX_TRANSACTION_LIFETIME_PROPERTY
How long a transaction can stay "live" before we expire it.

See Also:
Constant Field Values

STORE_DELAY_PROPERTY

public static final java.lang.String STORE_DELAY_PROPERTY
How long to wait before updating the persistent store in milliseconds.

See Also:
Constant Field Values

BACKING_STORE_PROPERTY

public static final java.lang.String BACKING_STORE_PROPERTY
Where to read/store the datastore from/to.

See Also:
Constant Field Values

NO_INDEX_AUTO_GEN_PROP

public static final java.lang.String NO_INDEX_AUTO_GEN_PROP
True to prevent the datastore from writing com.google.apphosting.utils.config.IndexesXmlReader#GENERATED_INDEX_FILENAME.

See Also:
Constant Field Values

NO_STORAGE_PROPERTY

public static final java.lang.String NO_STORAGE_PROPERTY
True to put the datastore into "memory-only" mode.

See Also:
Constant Field Values

HIGH_REP_JOB_POLICY_CLASS_PROPERTY

public static final java.lang.String HIGH_REP_JOB_POLICY_CLASS_PROPERTY
The fully-qualifed name of a class that implements HighRepJobPolicy and has a no-arg constructor. If not provided we use a DefaultHighRepJobPolicy. See the javadoc for this class for information on its configurable properties.

See Also:
Constant Field Values
Constructor Detail

LocalDatastoreService

public LocalDatastoreService()
Method Detail

clearProfiles

public void clearProfiles()
Clear out the in-memory datastore. Note that this does not clear out any data that has been persisted on disk.


init

public void init(LocalServiceContext context,
                 java.util.Map<java.lang.String,java.lang.String> properties)

start

public void start()

stop

public void stop()

setMaxQueryLifetime

public void setMaxQueryLifetime(int milliseconds)

setMaxTransactionLifetime

public void setMaxTransactionLifetime(int milliseconds)

setBackingStore

public void setBackingStore(java.lang.String backingStore)

setStoreDelay

public void setStoreDelay(int delayMs)

setNoStorage

public void setNoStorage(boolean noStorage)

getPackage

public java.lang.String getPackage()

get


put


putImpl

public PutResponse putImpl(Status status,
                           PutRequest request)

delete


addActions


deleteImpl

public DeleteResponse deleteImpl(Status status,
                                 DeleteRequest request)

runQuery


next


count

public Integer64Proto count(Status status,
                            Query request)

deleteCursor

public VoidProto deleteCursor(Status status,
                              Cursor request)

beginTransaction


commit


rollback


createIndex

public Integer64Proto createIndex(Status status,
                                  CompositeIndex req)

updateIndex

public VoidProto updateIndex(Status status,
                             CompositeIndex req)

getIndices

public CompositeIndices getIndices(Status status,
                                   StringProto req)

deleteIndex

public VoidProto deleteIndex(Status status,
                             CompositeIndex req)

allocateIds


getDefaultDeadline

public java.lang.Double getDefaultDeadline(boolean isOfflineRequest)

getMaximumDeadline

public java.lang.Double getMaximumDeadline(boolean isOfflineRequest)