Skip to content
Success

Changes

Summary

  1. Added a metrics provider handler (commit: 962b426) (details)
  2. Metrics: Keep track of gauges bound before activation (commit: 14ac75f) (details)
  3. Added metrics provider presence test (commit: b5620b5) (details)
  4. Normalize metrics resources names (commit: 369831b) (details)
  5. Review metrics provider test (commit: d87aac5) (details)
  6. Enables complex EMF Resource Objects (commit: d25bd7a) (details)
  7. Adds addition Test (commit: e8eaa0b) (details)
  8. Initial version of the programmatic whiteboard (commit: 4a1d370) (details)
  9. Added WB handler providers property update (commit: 0037932) (details)
  10. Better Whiteboard handlers priority test (commit: 1e0e476) (details)
  11. Put constants in an interface and use them internally (commit: ed3470c) (details)
  12. Removed generic from WhiteboardHandler interface (commit: 6bb42da) (details)
  13. Addressed review comments (commit: ca3e7b4) (details)
  14. Fix to list services and resources on newly created provider instances (commit: 91d5fff) (details)
  15. Added ability to set resource metadata before it gets a value (commit: 41054e4) (details)
  16. Protect against metadata w/o timestamp (commit: 2671b7b) (details)
  17. Small enhancements of the provider snapshot API (commit: 6a6a881) (details)
  18. Allow default resource metadata to be set in the model (commit: fad36b2) (details)
  19. Fixed provider snapshot filterEmptyServices to keep services insertion order (commit: 202312d) (details)
  20. Allow data and metadata update de-duplication (commit: d56f449) (details)
  21. Further improvements to timestamp mapping (commit: 508355c) (details)
  22. dataUpdate now supports multiple updates (commit: c7b3cb4) (details)
  23. Annotated DTO mapping error (commit: 117c165) (details)
Commit 962b4263b7aed4f9a7f617c60cfeeedd2279ffce by thomas.calmant
Added a metrics provider handler
(commit: 962b426)
The file was addedcore/impl/src/main/java/org/eclipse/sensinact/core/metrics/impl/MetricsProviderHandler.java
Commit 14ac75fd30dd588a0f9ffd36ca677e56de3c38ad by thomas.calmant
Metrics: Keep track of gauges bound before activation
(commit: 14ac75f)
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/metrics/impl/MetricsManager.java
Commit b5620b533bf9d1a843640e3d6229b5d9b5f02e2a by thomas.calmant
Added metrics provider presence test
(commit: b5620b5)
The file was modifiedcore/impl/src/test/java/org/eclipse/sensinact/core/integration/metrics/MetricsTest.java
Commit 369831bc264e7abf8a7314b916da0065f03c6b5a by thomas.calmant
Normalize metrics resources names
(commit: 369831b)
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/metrics/impl/CallbackReporter.java
Commit d87aac56080979168826db8a91e31f3f407bff4b by thomas.calmant
Review metrics provider test
(commit: d87aac5)
The file was modifiedcore/impl/src/test/java/org/eclipse/sensinact/core/integration/metrics/MetricsTest.java
Commit d25bd7a0758ee5e7089bf33a3e821b50221fc827 by j.albert
Enables complex EMF Resource Objects

Signed-off-by: Juergen Albert <j.albert@data-in-motion.biz>
(commit: d25bd7a)
The file was modifiedcore/models/testdata/src/main/resources/model/testdata.ecore
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/twin/impl/SensinactResourceImpl.java
The file was modifiedcore/impl/src/test/java/org/eclipse/sensinact/core/integration/EMFUpdateServiceTest.java
The file was modifiedcore/impl/src/test/java/org/eclipse/sensinact/core/model/nexus/impl/SubscriptionTest.java
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/model/nexus/ModelNexus.java
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/model/nexus/emf/compare/EMFCompareUtil.java
The file was modifiedcore/impl/src/test/resources/model/extended.ecore
The file was modifiedcore/models/testdata/src/main/resources/model/testdata.genmodel
The file was modifiedcore/impl/src/test/java/org/eclipse/sensinact/core/emf/util/EMFTestUtil.java
Commit e8eaa0b41008c83c54038d0496f89c777c894a40 by j.albert
Adds addition Test

Signed-off-by: Juergen Albert <j.albert@data-in-motion.biz>
(commit: e8eaa0b)
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/model/nexus/emf/compare/EMFCompareUtil.java
The file was modifiedcore/impl/src/test/java/org/eclipse/sensinact/core/model/nexus/impl/SubscriptionTest.java
Commit 4a1d370527a9e52c11a7536a5f3f11d49745da2c by thomas.calmant
Initial version of the programmatic whiteboard
(commit: 4a1d370)
The file was addedcore/api/src/main/java/org/eclipse/sensinact/core/whiteboard/package-info.java
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/whiteboard/impl/ActMethod.java
The file was addedcore/api/src/main/java/org/eclipse/sensinact/core/whiteboard/WhiteboardSet.java
The file was addedcore/api/src/main/java/org/eclipse/sensinact/core/whiteboard/WhiteboardActDescription.java
The file was addedcore/api/src/main/java/org/eclipse/sensinact/core/whiteboard/WhiteboardAct.java
The file was addedcore/api/src/main/java/org/eclipse/sensinact/core/whiteboard/AbstractDescriptiveAct.java
The file was addedcore/api/src/main/java/org/eclipse/sensinact/core/whiteboard/WhiteboardHandler.java
The file was addedcore/api/src/main/java/org/eclipse/sensinact/core/whiteboard/AbstractDescriptiveReadOnly.java
The file was addedcore/impl/src/main/java/org/eclipse/sensinact/core/whiteboard/impl/WhiteboardContext.java
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/whiteboard/impl/SensinactWhiteboard.java
The file was addedcore/api/src/main/java/org/eclipse/sensinact/core/whiteboard/WhiteboardResourceDescription.java
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/whiteboard/impl/GetMethod.java
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/command/impl/GatewayThreadImpl.java
The file was addedcore/api/src/main/java/org/eclipse/sensinact/core/whiteboard/AbstractDescriptiveReadWrite.java
The file was modifiedcore/impl/src/test/java/org/eclipse/sensinact/core/command/impl/WhiteboardImplTest.java
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/whiteboard/impl/AbstractResourceMethod.java
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/whiteboard/impl/SetMethod.java
The file was addedcore/api/src/main/java/org/eclipse/sensinact/core/whiteboard/WhiteboardGet.java
Commit 00379325f42ae3a7fb5be0ef32e1e9692dcf8397 by thomas.calmant
Added WB handler providers property update

Like before, updates of other properties are not supported
(commit: 0037932)
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/command/impl/GatewayThreadImpl.java
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/whiteboard/impl/SensinactWhiteboard.java
Commit 1e0e4769d4c558a331706ccebe52192806de9dcb by thomas.calmant
Better Whiteboard handlers priority test
(commit: 1e0e476)
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/whiteboard/impl/RegistryKey.java
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/whiteboard/impl/SensinactWhiteboard.java
The file was modifiedcore/impl/src/test/java/org/eclipse/sensinact/core/command/impl/WhiteboardImplTest.java
Commit ed3470c70586299daf669554fe3acfe5d4742049 by thomas.calmant
Put constants in an interface and use them internally

Reuse the previous property name for the list of providers
(commit: ed3470c)
The file was addedcore/api/src/main/java/org/eclipse/sensinact/core/whiteboard/WhiteboardConstants.java
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/whiteboard/impl/SensinactWhiteboard.java
The file was modifiedcore/impl/src/test/java/org/eclipse/sensinact/core/command/impl/WhiteboardImplTest.java
Commit 6bb42dadc8af04bcad80ed25fb5d6afcfc54704f by thomas.calmant
Removed generic from WhiteboardHandler interface
(commit: 6bb42da)
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/whiteboard/impl/SensinactWhiteboard.java
The file was modifiedcore/api/src/main/java/org/eclipse/sensinact/core/whiteboard/WhiteboardHandler.java
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/whiteboard/impl/WhiteboardContext.java
The file was modifiedcore/api/src/main/java/org/eclipse/sensinact/core/whiteboard/WhiteboardAct.java
The file was modifiedcore/api/src/main/java/org/eclipse/sensinact/core/whiteboard/WhiteboardGet.java
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/command/impl/GatewayThreadImpl.java
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/whiteboard/impl/AbstractResourceMethod.java
Commit ca3e7b448dd1927669759a7b213e5b3af958aa9f by thomas.calmant
Addressed review comments
(commit: ca3e7b4)
The file was modifiedcore/api/src/main/java/org/eclipse/sensinact/core/whiteboard/WhiteboardResourceDescription.java
The file was modifiedcore/impl/src/test/java/org/eclipse/sensinact/core/command/impl/WhiteboardImplTest.java
Commit 91d5fff46069d24d2f5253628a0245e0372964a3 by thomas.calmant
Fix to list services and resources on newly created provider instances

... else services when no value was explicitly set are not snapshotted
(commit: 91d5fff)
The file was modifiedcore/impl/src/test/java/org/eclipse/sensinact/core/twin/impl/SensinactTwinTest.java
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/model/nexus/ModelNexus.java
The file was modifiedcore/impl/src/test/java/org/eclipse/sensinact/core/model/impl/ModelBuildingTest.java
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/twin/impl/SensinactDigitalTwinImpl.java
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/twin/impl/SensinactProviderImpl.java
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/impl/snapshot/ServiceSnapshotImpl.java
Commit 41054e4bd79669268da7f55edb308ec0f80f5137 by thomas.calmant
Added ability to set resource metadata before it gets a value
(commit: 41054e4)
The file was modifiedcore/impl/src/test/java/org/eclipse/sensinact/core/twin/impl/SensinactTwinTest.java
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/twin/impl/SensinactServiceImpl.java
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/twin/impl/SensinactDigitalTwinImpl.java
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/model/nexus/ModelNexus.java
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/twin/impl/SensinactResourceImpl.java
Commit 2671b7b6568c7dd6956e5807ed74ce8c210a1a67 by thomas.calmant
Protect against metadata w/o timestamp
(commit: 2671b7b)
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/model/nexus/ModelNexus.java
Commit 6a6a88125518c47f1680dafa6e8e7532005451b6 by thomas.calmant
Small enhancements of the provider snapshot API

Added utility methods to easily access services and resources by name
(commit: 6a6a881)
The file was modifiedcore/api/src/main/java/org/eclipse/sensinact/core/snapshot/ProviderSnapshot.java
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/impl/snapshot/ResourceSnapshotImpl.java
The file was modifiedcore/api/src/main/java/org/eclipse/sensinact/core/snapshot/ServiceSnapshot.java
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/impl/snapshot/ServiceSnapshotImpl.java
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/impl/snapshot/ProviderSnapshotImpl.java
The file was modifiedcore/api/src/main/java/org/eclipse/sensinact/core/snapshot/ResourceSnapshot.java
Commit fad36b2ed0152578dc5374731fda27b86b720840 by timothyjward
Allow default resource metadata to be set in the model

Provider instances have the ability to independently set metadata values, however in most cases metadata is common to all instances of a model and it is relatively static. It therefore makes sense to be able to define default metadata at the resource model level which is applied to the instance when it is first created.

Note that only the Extra metadata is used to populate the defaults. This prevents other data about the resource (e.g. the resource type and value type) from being added and bloating the metadata. To differentiate default metadata values from metadata values which are set later the default metadata values will have no associated timestamp. This is in line with the behaviour for default resource values.

Signed-off-by: Tim Ward <timothyjward@apache.org>
(commit: fad36b2)
The file was modifiedcore/models/metadata/src/main/resources/model/metadata.ecore
The file was modifiedcore/impl/src/test/java/org/eclipse/sensinact/core/model/impl/ModelBuildingTest.java
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/model/impl/ResourceBuilderImpl.java
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/impl/snapshot/ResourceSnapshotImpl.java
The file was modifiedcore/impl/src/test/java/org/eclipse/sensinact/core/twin/impl/SensinactTwinTest.java
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/model/impl/ResourceImpl.java
The file was modifiedcore/api/src/main/java/org/eclipse/sensinact/core/model/Resource.java
The file was modifiedcore/api/src/main/java/org/eclipse/sensinact/core/model/ResourceBuilder.java
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/model/nexus/ModelNexus.java
The file was modifiedcore/models/metadata/src/main/resources/model/metadata.genmodel
Commit 202312d2e79e2228fa8e964a74f5cfc492c199ee by thomas.calmant
Fixed provider snapshot filterEmptyServices to keep services insertion order
(commit: 202312d)
The file was modifiednorthbound/sensorthings/mqtt/src/main/java/org/eclipse/sensinact/gateway/northbount/sensorthings/mqtt/SensorthingsMapper.java
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/impl/snapshot/ProviderSnapshotImpl.java
Commit d56f449967ab2d893f97a1736a3d8eb79c23148a by timothyjward
Allow data and metadata update de-duplication

This commit adds a DuplicateAction to the pushed updates, which determines the behaviour when the pushed update contains a duplicate value or metadata value. A duplicate value is determined by object equality, or == if one value is null. The default for resource values is that duplicates updates are applied, updating the timestamp and generating a update event. The default for metadata values is that duplicate updates are ignored, avoiding timestamp updates and update events. The reason for this difference is that repeated data readings can often give the same value, but this is a new reading. In general metadata values do not change, and so duplicates aren't interesting.

Signed-off-by: Tim Ward <timothyjward@apache.org>
(commit: d56f449)
The file was modifiedcore/annotation/src/main/java/org/eclipse/sensinact/core/annotation/dto/Resource.java
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/model/nexus/ModelNexus.java
The file was modifiedcore/impl/src/test/java/org/eclipse/sensinact/core/integration/DataUpdateServiceTest.java
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/impl/SetValueCommand.java
The file was modifiedcore/annotation/src/main/java/org/eclipse/sensinact/core/annotation/dto/Service.java
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/extract/impl/AnnotationMapping.java
The file was modifiedcore/annotation/src/main/java/org/eclipse/sensinact/core/annotation/dto/Metadata.java
The file was modifiedcore/annotation/src/main/java/org/eclipse/sensinact/core/annotation/dto/Provider.java
The file was modifiedcore/annotation/src/main/java/org/eclipse/sensinact/core/annotation/dto/Data.java
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/impl/SetMetadataCommand.java
The file was modifiedcore/api/src/main/java/org/eclipse/sensinact/core/push/dto/GenericDto.java
The file was modifiedcore/impl/src/test/java/org/eclipse/sensinact/core/extract/impl/CustomBaseValueDtoExtractorTest.java
The file was modifiedcore/impl/src/test/java/org/eclipse/sensinact/core/extract/impl/GenericDtoExtractorTest.java
The file was modifiedcore/impl/src/test/java/org/eclipse/sensinact/core/extract/impl/AnnotationBasedDtoExtractorTest.java
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/dto/impl/AbstractUpdateDto.java
The file was addedcore/annotation/src/main/java/org/eclipse/sensinact/core/annotation/dto/DuplicateAction.java
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/extract/impl/GenericDtoDataExtractor.java
Commit 508355c944be9bead0063f388f4b31de34007644 by timothyjward
Further improvements to timestamp mapping
(commit: 508355c)
The file was modifiedcore/annotation/src/main/java/org/eclipse/sensinact/core/annotation/dto/Timestamp.java
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/extract/impl/AnnotationMapping.java
Commit c7b3cb42d39b70d0aeb4f2030f9772ddb52426af by gregoire.athanase
dataUpdate now supports multiple updates

Signed-off-by: Grégoire Athanase <gregoire.athanase@kentyou.com>
(commit: c7b3cb4)
The file was modifiedcore/impl/src/test/java/org/eclipse/sensinact/core/integration/DataUpdateServiceTest.java
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/impl/DataUpdateImpl.java
Commit 117c1652c4c53b299ea7fe9a58587c06965124e0 by timothyjward
Annotated DTO mapping error

String fields annotated with @Resource and @Metadata caused all mappings to use the metadata value as the mapping. This should not happen!

Signed-off-by: Tim Ward <timothyjward@apache.org>
(commit: 117c165)
The file was modifiedcore/impl/src/main/java/org/eclipse/sensinact/core/extract/impl/AnnotationMapping.java
The file was modifiedcore/impl/src/test/java/org/eclipse/sensinact/core/extract/impl/AnnotationBasedDtoExtractorTest.java