I Use This!
Activity Not Available
Analyzed 6 months ago. based on code collected 6 months ago.

Project Summary

Twig - Making the Datastore more manageableTwig is an object persistence interface built on Google App Engine's low-level datastore which overcomes many of JDO-GAEs limitations including full support for inheritance, polymorphism and generic types. You can easily configure, modify or extend Twigs behaviour by implementing your own strategies or overriding extension points in pure Java code.

Twig is the only datastore interface to support:

Parallel Asynchronous Commands Plain old Java object data models with no datastore dependencies Merged OR queries on multiple properties

Read the documentation to get started

Visit the Twig Discussion Group

Show me some codeThe central interface you will use is ObjectDatastore which has an implementation AnnotationTypesafeDatastore

// stateful session configured with annotations
ObjectDatastore datastore = new AnnotationObjectDatastore();

// create a complex object graph
Band ledzep = createClassicRockband();

// store the instance and all other reachable instances
Key key = datastore.store(ledzep);

// converted into a query by kind with a key name
Band result = datastore.find(Band.class, "Led Zeppelin");

// the identical instance is always returned from same datastore
assert result == ledzep;

// modernize the classic rock band
ledzep.name = "White Stripes";

// call update on changed instances

// no need to deal with Keys

// run a find command
Iterator punkBands = datastore.find()
.addFilter("genre", EQUAL, Genre.PUNK)

A common sentimentA message from the App Engine Java group:

"It seems alarming to me that these basic relations are difficult to code. Lets face it, applications are full of these relations...it seems to me that too much developer time is required in the Persistence layer of GAE apps. The Persistence and Presentation layers needs to be a "no brainer", so more focus can be where it needs to be - the business layer. Does anyone feel the same?" - Diana Cruise

Twig is named after the super thin sixties model Twiggy - or it could be something like Typesafe Wrapper in GAE

In a Nutshell, twig-persist...

This Project has No vulnerabilities Reported Against it

Did You Know...

  • ...
    Black Duck offers a free tool to discover if there are open source vulnerabilities in your code
  • ...
    learn about Open Hub updates and features on the Open Hub blog
  • ...
    65% of companies leverage OSS to speed application development in 2016
  • ...
    data presented on the Open Hub is available through our API


2 Other

30 Day Summary

Apr 10 2016 — May 10 2016

12 Month Summary

May 10 2015 — May 10 2016


Be the first to rate this project
Click to add your rating
   Spinner f6ecff617ec2ba7f559e6f535cad9b70a3f91120737535dab4d4548a6c83576c
Review this Project!