You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We need to be able to manage Janusgraph schema with incremental versioned updates. This should be done with help of JanusGraphManagement which provide Java API to manage schema. We already have a org.carlspring.strongbox.janusgraph.graph.schema.StrongboxSchema class that creates initial schema and within this task we should make it work using step-by-step change-sets. The change-sets will be stored as a constant list of StrongboxSchema class.
Tasks
The following tasks will need to be carried out:
Implement an interface which will represent single change-set, it should have the apply(JanusGraphManagement jgm) method and following attributes:
name (some meanable change-set name)
version (Semantic Versioning format)
Add DatabaseSchema vertex type which will represent current schema
Add ChangeSet vertex type which will represent applied change-sets
Add DatabaseSchema#ChangeSet edge type which will represent one-to-many relation between DatabaseSchema and ChangeSet (it should also have the applyDate property)
Implement the logic which will create DatabaseSchema vertex if it not exists
Implement the logic which will apply change-sets delta from current DatabaseSchema version.
implement StrongboxSchema.dropSchema method for test purpose which will be executed on Spring Application context shutdown.
Task Description
We need to be able to manage Janusgraph schema with incremental versioned updates. This should be done with help of
JanusGraphManagement
which provide Java API to manage schema. We already have aorg.carlspring.strongbox.janusgraph.graph.schema.StrongboxSchema
class that creates initial schema and within this task we should make it work using step-by-step change-sets. The change-sets will be stored as a constant list ofStrongboxSchema
class.Tasks
The following tasks will need to be carried out:
apply(JanusGraphManagement jgm)
method and following attributes:name
(some meanable change-set name)version
(Semantic Versioning format)DatabaseSchema
vertex type which will represent current schemaChangeSet
vertex type which will represent applied change-setsDatabaseSchema#ChangeSet
edge type which will represent one-to-many relation betweenDatabaseSchema
andChangeSet
(it should also have theapplyDate
property)DatabaseSchema
vertex if it not existsDatabaseSchema
version.StrongboxSchema.dropSchema
method for test purpose which will be executed on Spring Application context shutdown.Task Relationships
This task:
Useful Links
Help
The text was updated successfully, but these errors were encountered: