Skip to content

Releases: sai-pullabhotla/catatumbo

0.4.0

02 Sep 01:58
Compare
Choose a tag to compare
  • Added support for persisting inherited fields.
    • Added a new annotation MappedSuperClass
    • Entities can extend a class that is tagged as MappedSuperClass.
    • A MappedSuperClass can extend another MappedSuperClass.
    • MappedSuperClass can have fields of primitive type and/or Embedded objects
    • Ability to override property definitions from the super class using PropertyOverrides and PropertyOverride annotations.
  • Added support for Optimistic Locking
    • Added a new annotation named Version
    • Version annotation can be applied on any field of type long (primitive)
    • When updating an entity, the EntityManager ensures that the version of the entity being updated matches with the version of the entity in the Cloud Datastore. The update will succeed if the versions match, otherwise an exception will be thrown. Version property is automatically incremented during each update.
  • Updated the Unmarshaller to not always create a new instance of Embeddable, instead if the Embedded object is already initialized (e.g. during Entity instantiation), use it.
  • Upgraded to the latest version (0.3.0) of Google Cloud Java Client for Datastore API (formerly known as gcloud-java-datastore).

0.3.0

01 Sep 22:53
Compare
Choose a tag to compare
  • Added support for mapping and persistence of embedded objects. Two new annotations, Embeddable and Embedded, were introduced to support this feature.
  • Added two new annotations, PropertyOverrides and PropertyOverride to override the properties defined in the Embeddable where needed.
  • Enhanced QueryRequest interfaces/classes to support literals in the query.
  • Enhanced the support for Array properties. Array properties now support the following data types, in addition to the previously supported (Long and String):
    • Keys
    • Double
    • Boolean
  • Updated the version of gcloud-java-datastore API to 0.2.7.

0.2.0

01 Sep 23:04
Compare
Choose a tag to compare
  • Added support for Projection queries.
  • Added support for Key-only queries.
  • Optimized the deleteAll method by deleting entities in chunks of 100.
  • Added support for retrieving a list of entities given a list of identifiers or keys.
  • Added support for UPSERT (Update or Insert) entities.
  • Added support for GeoLocation data type.
  • Fixed an issue where the Ignore annotation had no effect and still persisting the field.
  • Fixed an issue where String Identifiers are auto generated during update operations.

0.1.0

02 Sep 00:42
Compare
Choose a tag to compare

First Release

  • Automatic mapping of model classes (POJOs) to Cloud Datastore Entities and vice versa
    • Ability to map an Object to a an Entity of specified Kind
    • Ability to map POJO fields to a property
    • Ability to specify whether or not a field (or property) should be indexed
    • Ability to ignore certain fields from mapping and persistence
  • Automatic generation of Identifiers (for both Numeric and String types)
  • Support for a variety of Data Types:
    • boolean, Boolean
    • char, Character
    • short, Short
    • int, Integer
    • long, Long
    • float, Float
    • double, Double
    • String
    • Byte Arrays
    • Char Arrays
    • Date
    • Calendar
    • Keys, Parent Keys and Key References
    • List Values
    • Null
  • Create, Retrieve, Update, Delete, Upsert (update or insert)
  • Support for executing GQL Queries (Entity Queries Only)
    • Pagination of query results through the use of Cursors
    • Support for positional and named bindings in the queries
  • Transaction Support
  • Support for Namespaces (for multi-tenant databases)
  • Lightweight, easy to use and fully documented API