JPA Support

It is possible to use JPA for the persistence of flow instance information. This support is implemented using querydsl.

Setup

First you need an instance of brainslug.jdbc.Database :

new Database(entityManager, new HQLTemplates()); // adjust templates to your JPA provider

to create a the JPA TokenStore, JPA PropertyStore and JPA AsyncTriggerStore

new Database(entityManager, new HQLTemplates()); // adjust templates to your JPA provider

JpaTokenStore jpaTokenStore = new JpaTokenStore(...)
JpaAsyncTriggerStore jpaAsyncTriggerStore = new JpaAsyncTriggerStore(...)
JpaPropertyStore jpaPropertyStore = new JpaPropertyStore(...)

These can than be provided to the BrainslugContextBuilder:

new BrainslugContextBuilder()
  .withTokenStore(jpaTokenStore)
  .withAsyncTriggerStore(jpaAsyncTriggerStore)
  .withPropertyStore(jpaPropertyStore)
  .build()