ChiralBehaviors / Ultrastructure

Ultrastructure as a Service
GNU Affero General Public License v3.0
6 stars 2 forks source link

Phantasm edge attributes #224

Closed Hellblazer closed 7 years ago

Hellblazer commented 7 years ago

Extend the phantasm model to support attributes on network edges as "Bob" intended. Expose phantasm.java model for the network edge attributes.

Refactored and simplified the underlying Phantasm meta model. Chucked the visitor model and simplified much of the graphql schema generation logic. The schema gen logic could use another pass or two, but it's a more maintainable model than before. Phantasmagoria now provides the high level access meta model for a facet.

Added support for exposing network attributes on the phantasm.graphql. This model is a bit different than the java model, as I want to be able to grab network edge attributes as I'm traversing them in the hierarchical grapnel query. I didn't want to use the same motif in the java model, where I'd have to make a separate graphql query to get the edge attributes. It's a little ugly because I have to use a union, but I did manage to maintain the edge traversal state and expose it through graphql in a usable syntax (if a bit awkward). Phantasm.qraphql is untested, but generates correct schemas and tests are green.

Hellblazer commented 7 years ago

Issue: https://github.com/ChiralBehaviors/Ultrastructure/issues/218, network attributes added to PhantasmCRUD