Shared Characteristics #20
Replies: 1 comment
-
|
One possibility might be that the characteristic.value for a shared characteristic is a function rather than a type, and this function provides the linkage to the shared characteristic via some parameter data containing the identity. This could all be held in a tuple of such as {Diffo.Access.Dslam.shared_characteristic/1, %{name: "QDONC0001"}} This would mean that the DSL for characteristic would need to be able to express this concept and include a transformer to provide the function. The instance structure is unchanged, there is still a dslam characteristic with the properties name and value, the value just contains '{Diffo.Access.Dslam.shared_characteristic/1, %{name: QDONC0001}}' |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
With services and resource we'd like to have 'shared' characteristics. Generally these would be read-only from the service or resource and would relate to aspects that are used, or jointly configured.
For example in our DslAccess service we have characteristics: dslam, aggregate_interface, circuit, line. Of the circuit and line are 'instance' characteristics and dslam and aggregate interface are shared.
Shared characteristics are generally expressing an underlying service or resource relationship, through a simplified view. One option is that we simply model the underlying things as services or resources and ask them to expose the shareable characteristic which can be exposed.
Currently characteristic resources are not shareable, they are of type: :instance, :feature, :relationship and can only connect to one of these at a time: Instance has_many characteristics, Characteristic belongs_to instance. It is not likely that features and relationships would benefit from shared characteristic.
Beta Was this translation helpful? Give feedback.
All reactions