Class HAtomReference

java.lang.Object
io.aeon.experiment.shape.HAtomReference
All Implemented Interfaces:
io.horizon.specification.modeler.HReference

public class HAtomReference extends Object implements io.horizon.specification.meta.modeler.HReference
## Reference Calculation ### 1. Intro Reference Calculation based on configuration in each attribute, `serviceReference` field. ### 2. Dao Mode Here are three dao mode in MetaReference 1. Dynamic Dao: HDao, based on `M_MODEL` definition. 2. Static Dao: directly mapped to single table. 3. Static Dao with Join: mapped to more than on table. ### 3. Dao Map Here are following hash map rules to store component references: 1. Each `key = value` pair refer to `source = RQuote`. 2. `references` stored `source = RQuote` hash map. 3. For 「Static」 mode, each RQuote stored `condition = RDao`. The example is as following: ``` //

     source1: res.employee            ( type = io.vertx.up.experiment.reference.RQuote )
          conditionA = RDao           |-- ( type = io.vertx.up.experiment.reference.RDao )
              -- supportAName
              -- supportGroup
              -- supportSection
          conditionB = RDao           |-- ( type = io.vertx.up.experiment.reference.RDao )
              -- supportBName
     source2: rl.device.relation      ( type = io.vertx.up.experiment.reference.RQuote )
          conditionC = AoDao          |-- ( type = io.vertx.up.experiment.reference.RDao )
              -- up
          conditionD = AoDao          |-- ( type = io.vertx.up.experiment.reference.RDao )
              -- down
 // 
``` > `conditionX` could be calculated by `key` ( include "" default value ) ### 4. Result Map Here are following hash map rules to store component result: 1. Each `key = value` pair refer to `field = RResult`. 2. `result` stored `source = RResult` hash map and refer to `RDao`. The example is as following: ``` //

     ( type = io.vertx.up.experiment.reference.RResult )
     supportAName = RResult
     supportBName = RResult
     supportGroup = RResult
     supportSection = RResult
     up = RResult
     down = RResult
 // 
```
Author:
Lang
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected final io.horizon.atom.app.KApp
     
    protected final io.vertx.up.uca.cache.Cc<String, io.aeon.experiment.reference.RDao>
     
    protected final io.vertx.up.uca.cache.Cc<String, io.aeon.experiment.reference.RQuery>
     
    protected final io.vertx.up.uca.cache.Cc<String, io.aeon.experiment.reference.RQuote>
    The hash map to store `source = RQuote`.
    protected final io.vertx.up.uca.cache.Cc<String, io.aeon.experiment.reference.RResult>
    The hash map to store `field = RResult`.
  • Constructor Summary

    Constructors
    Constructor
    Description
    HAtomReference (io.horizon.atom.app.KApp app)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected void
    initializeReference (io.aeon.experiment.mu.KReference input, io.horizon.specification.meta.modeler.HAttribute hAttribute)
     
    io.aeon.experiment.mu.KReference
    refData (String name)
     
    ConcurrentMap<String, io.aeon.experiment.reference.RQuote>
     
    ConcurrentMap<String, io.aeon.experiment.reference.RResult>
     
    ConcurrentMap<String, io.aeon.experiment.reference.RQuery>
     
    protected io.horizon.specification.modeler.HAtom
    toAtom (String identifier)
     
    protected io.horizon.specification.modeler.HDao
    toDao (io.horizon.specification.meta.modeler.HAtom atom)
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • ccDao

      protected final transient io.vertx.up.uca.cache.Cc<String,io.aeon.experiment.reference.RDao> ccDao
    • ccReference

      protected final transient io.vertx.up.uca.cache.Cc<String,io.aeon.experiment.reference.RQuote> ccReference
      The hash map to store `source = RQuote`.
    • ccResult

      protected final transient io.vertx.up.uca.cache.Cc<String,io.aeon.experiment.reference.RResult> ccResult
      The hash map to store `field = RResult`.
    • ccQuery

      protected final transient io.vertx.up.uca.cache.Cc<String,io.aeon.experiment.reference.RQuery> ccQuery
    • app

      protected final transient io.horizon.atom.app.KApp app
  • Constructor Details

    • HAtomReference

      public HAtomReference (io.aeon.experiment.specification.power.KApp app)
  • Method Details

    • refInput

      public ConcurrentMap<String,io.aeon.experiment.reference.RQuote> refInput()
      Specified by:
      refInput in interface io.horizon.specification.modeler.HReference
    • refQr

      public ConcurrentMap<String,io.aeon.experiment.reference.RQuery> refQr()
      Specified by:
      refQr in interface io.horizon.specification.modeler.HReference
    • refOutput

      public ConcurrentMap<String,io.aeon.experiment.reference.RResult> refOutput()
      Specified by:
      refOutput in interface io.horizon.specification.modeler.HReference
    • refData

      public io.aeon.experiment.mu.KReference refData (String name)
      Specified by:
      refData in interface io.horizon.specification.modeler.HReference
    • initializeReference

      protected void initializeReference (io.aeon.experiment.mu.KReference input, io.aeon.experiment.mixture.HAttribute hAttribute)
    • toDao

      protected io.horizon.specification.modeler.HDao toDao (io.aeon.experiment.mixture.HAtom atom)
    • toAtom

      protected io.horizon.specification.modeler.HAtom toAtom (String identifier)