dev-guide:add-object-as-node-production
Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
dev-guide:add-object-as-node-production [2025/01/08 11:50] – created gaetan | dev-guide:add-object-as-node-production [2025/01/08 16:33] (current) – [ProducingNode interface] gaetan | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== Includes object in production ====== | ====== Includes object in production ====== | ||
- | XL rules can include a [[: | + | XL rules can include a [[: |
+ | |||
+ | The production statement is managed by a [[https:// | ||
+ | By default, RGG files use a [[https:// | ||
+ | |||
+ | ===== RGG producer ===== | ||
+ | |||
+ | By default, all java objects that extends [[https:// | ||
+ | |||
+ | Java objects that do not extend Node, can still be added in a production statement, but they will be wrapped in a [[https:// | ||
+ | |||
+ | It is possible to provide a specific way to add a java object in the graph in a production statement using either: toNode() method, or by implementing the | ||
+ | [[https:// | ||
+ | |||
+ | ==== toNode method ==== | ||
+ | |||
+ | The RGGProducer is testing if a java object that do not extend Node have a | ||
+ | <code java> | ||
+ | public Node toNode() { // return a Node } | ||
+ | </ | ||
+ | method. | ||
+ | |||
+ | If it is the case it uses that method to create the Node to be added in the graph. The Node can have edges toward other Nodes (in the graph or not). Additional nodes will be set persistent. | ||
+ | |||
+ | ==== ProducingNode interface ==== | ||
+ | |||
+ | The toNode() method works well but requires a class. When working on bigger projects you might want to create interfaces that includes the knowledge that all implementation classes should have a " | ||
+ | Then, instead of using " | ||
+ | |||
+ | <code java> | ||
+ | public Node produceNode() { //return a Node } | ||
+ | </ | ||
- | ===== P |
dev-guide/add-object-as-node-production.1736333419.txt.gz · Last modified: 2025/01/08 11:50 by gaetan