<mavenBuild _class='hudson.maven.MavenBuild'><action></action><action _class='hudson.maven.reporters.MavenArtifactRecord'><url>https://devel.data-in-motion.biz/jenkins/view/all/job/Eclipse%20Sensinact/org.eclipse.sensinact.gateway.core$impl/33/mavenArtifacts/</url></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><artifact><displayPath>impl-0.0.2-SNAPSHOT-tests.jar</displayPath><fileName>impl-0.0.2-SNAPSHOT-tests.jar</fileName><relativePath>org.eclipse.sensinact.gateway.core/impl/0.0.2-SNAPSHOT/impl-0.0.2-SNAPSHOT-tests.jar</relativePath></artifact><artifact><displayPath>impl-0.0.2-SNAPSHOT.jar</displayPath><fileName>impl-0.0.2-SNAPSHOT.jar</fileName><relativePath>org.eclipse.sensinact.gateway.core/impl/0.0.2-SNAPSHOT/impl-0.0.2-SNAPSHOT.jar</relativePath></artifact><artifact><displayPath>impl-0.0.2-SNAPSHOT.pom</displayPath><fileName>impl-0.0.2-SNAPSHOT.pom</fileName><relativePath>org.eclipse.sensinact.gateway.core/impl/0.0.2-SNAPSHOT/impl-0.0.2-SNAPSHOT.pom</relativePath></artifact><building>false</building><displayName>SensiNact core implementation</displayName><duration>4529</duration><estimatedDuration>4571</estimatedDuration><fullDisplayName>Eclipse Sensinact » SensiNact core implementation SensiNact core implementation</fullDisplayName><id>33</id><inProgress>false</inProgress><keepLog>false</keepLog><number>33</number><queueId>-1</queueId><result>SUCCESS</result><timestamp>1723130764544</timestamp><url>https://devel.data-in-motion.biz/jenkins/view/all/job/Eclipse%20Sensinact/org.eclipse.sensinact.gateway.core$impl/33/</url><builtOn></builtOn><changeSet _class='hudson.maven.FilteredChangeLogSet'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/metrics/impl/MetricsProviderHandler.java</affectedPath><commitId>962b4263b7aed4f9a7f617c60cfeeedd2279ffce</commitId><timestamp>1719821445000</timestamp><author><absoluteUrl>https://devel.data-in-motion.biz/jenkins/user/thomas.calmant</absoluteUrl><fullName>thomas.calmant</fullName></author><authorEmail>thomas.calmant@gmail.com</authorEmail><comment>Added a metrics provider handler
</comment><date>2024-07-01 10:10:45 +0200</date><id>962b4263b7aed4f9a7f617c60cfeeedd2279ffce</id><msg>Added a metrics provider handler</msg><path><editType>add</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/metrics/impl/MetricsProviderHandler.java</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/metrics/impl/MetricsManager.java</affectedPath><commitId>14ac75fd30dd588a0f9ffd36ca677e56de3c38ad</commitId><timestamp>1719821445000</timestamp><author><absoluteUrl>https://devel.data-in-motion.biz/jenkins/user/thomas.calmant</absoluteUrl><fullName>thomas.calmant</fullName></author><authorEmail>thomas.calmant@gmail.com</authorEmail><comment>Metrics: Keep track of gauges bound before activation
</comment><date>2024-07-01 10:10:45 +0200</date><id>14ac75fd30dd588a0f9ffd36ca677e56de3c38ad</id><msg>Metrics: Keep track of gauges bound before activation</msg><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/metrics/impl/MetricsManager.java</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>core/impl/src/test/java/org/eclipse/sensinact/core/integration/metrics/MetricsTest.java</affectedPath><commitId>b5620b533bf9d1a843640e3d6229b5d9b5f02e2a</commitId><timestamp>1719821445000</timestamp><author><absoluteUrl>https://devel.data-in-motion.biz/jenkins/user/thomas.calmant</absoluteUrl><fullName>thomas.calmant</fullName></author><authorEmail>thomas.calmant@gmail.com</authorEmail><comment>Added metrics provider presence test
</comment><date>2024-07-01 10:10:45 +0200</date><id>b5620b533bf9d1a843640e3d6229b5d9b5f02e2a</id><msg>Added metrics provider presence test</msg><path><editType>edit</editType><file>core/impl/src/test/java/org/eclipse/sensinact/core/integration/metrics/MetricsTest.java</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/metrics/impl/CallbackReporter.java</affectedPath><commitId>369831bc264e7abf8a7314b916da0065f03c6b5a</commitId><timestamp>1719821445000</timestamp><author><absoluteUrl>https://devel.data-in-motion.biz/jenkins/user/thomas.calmant</absoluteUrl><fullName>thomas.calmant</fullName></author><authorEmail>thomas.calmant@gmail.com</authorEmail><comment>Normalize metrics resources names
</comment><date>2024-07-01 10:10:45 +0200</date><id>369831bc264e7abf8a7314b916da0065f03c6b5a</id><msg>Normalize metrics resources names</msg><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/metrics/impl/CallbackReporter.java</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>core/impl/src/test/java/org/eclipse/sensinact/core/integration/metrics/MetricsTest.java</affectedPath><commitId>d87aac56080979168826db8a91e31f3f407bff4b</commitId><timestamp>1719828610000</timestamp><author><absoluteUrl>https://devel.data-in-motion.biz/jenkins/user/thomas.calmant</absoluteUrl><fullName>thomas.calmant</fullName></author><authorEmail>thomas.calmant@gmail.com</authorEmail><comment>Review metrics provider test
</comment><date>2024-07-01 12:10:10 +0200</date><id>d87aac56080979168826db8a91e31f3f407bff4b</id><msg>Review metrics provider test</msg><path><editType>edit</editType><file>core/impl/src/test/java/org/eclipse/sensinact/core/integration/metrics/MetricsTest.java</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/model/nexus/emf/compare/EMFCompareUtil.java</affectedPath><affectedPath>core/impl/src/test/java/org/eclipse/sensinact/core/model/nexus/impl/SubscriptionTest.java</affectedPath><affectedPath>core/models/testdata/src/main/resources/model/testdata.ecore</affectedPath><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/model/nexus/ModelNexus.java</affectedPath><affectedPath>core/impl/src/test/java/org/eclipse/sensinact/core/integration/EMFUpdateServiceTest.java</affectedPath><affectedPath>core/impl/src/test/java/org/eclipse/sensinact/core/emf/util/EMFTestUtil.java</affectedPath><affectedPath>core/impl/src/test/resources/model/extended.ecore</affectedPath><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/twin/impl/SensinactResourceImpl.java</affectedPath><affectedPath>core/models/testdata/src/main/resources/model/testdata.genmodel</affectedPath><commitId>d25bd7a0758ee5e7089bf33a3e821b50221fc827</commitId><timestamp>1719928290000</timestamp><author><absoluteUrl>https://devel.data-in-motion.biz/jenkins/user/j.albert</absoluteUrl><fullName>j.albert</fullName></author><authorEmail>j.albert@data-in-motion.biz</authorEmail><comment>Enables complex EMF Resource Objects

Signed-off-by: Juergen Albert &lt;j.albert@data-in-motion.biz&gt;
</comment><date>2024-07-02 15:51:30 +0200</date><id>d25bd7a0758ee5e7089bf33a3e821b50221fc827</id><msg>Enables complex EMF Resource Objects</msg><path><editType>edit</editType><file>core/impl/src/test/java/org/eclipse/sensinact/core/integration/EMFUpdateServiceTest.java</file></path><path><editType>edit</editType><file>core/models/testdata/src/main/resources/model/testdata.ecore</file></path><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/twin/impl/SensinactResourceImpl.java</file></path><path><editType>edit</editType><file>core/impl/src/test/resources/model/extended.ecore</file></path><path><editType>edit</editType><file>core/impl/src/test/java/org/eclipse/sensinact/core/emf/util/EMFTestUtil.java</file></path><path><editType>edit</editType><file>core/impl/src/test/java/org/eclipse/sensinact/core/model/nexus/impl/SubscriptionTest.java</file></path><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/model/nexus/ModelNexus.java</file></path><path><editType>edit</editType><file>core/models/testdata/src/main/resources/model/testdata.genmodel</file></path><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/model/nexus/emf/compare/EMFCompareUtil.java</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/model/nexus/emf/compare/EMFCompareUtil.java</affectedPath><affectedPath>core/impl/src/test/java/org/eclipse/sensinact/core/model/nexus/impl/SubscriptionTest.java</affectedPath><commitId>e8eaa0b41008c83c54038d0496f89c777c894a40</commitId><timestamp>1719928290000</timestamp><author><absoluteUrl>https://devel.data-in-motion.biz/jenkins/user/j.albert</absoluteUrl><fullName>j.albert</fullName></author><authorEmail>j.albert@data-in-motion.biz</authorEmail><comment>Adds addition Test

Signed-off-by: Juergen Albert &lt;j.albert@data-in-motion.biz&gt;
</comment><date>2024-07-02 15:51:30 +0200</date><id>e8eaa0b41008c83c54038d0496f89c777c894a40</id><msg>Adds addition Test</msg><path><editType>edit</editType><file>core/impl/src/test/java/org/eclipse/sensinact/core/model/nexus/impl/SubscriptionTest.java</file></path><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/model/nexus/emf/compare/EMFCompareUtil.java</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>core/api/src/main/java/org/eclipse/sensinact/core/whiteboard/WhiteboardActDescription.java</affectedPath><affectedPath>core/api/src/main/java/org/eclipse/sensinact/core/whiteboard/WhiteboardSet.java</affectedPath><affectedPath>core/impl/src/test/java/org/eclipse/sensinact/core/command/impl/WhiteboardImplTest.java</affectedPath><affectedPath>core/api/src/main/java/org/eclipse/sensinact/core/whiteboard/AbstractDescriptiveAct.java</affectedPath><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/whiteboard/impl/SetMethod.java</affectedPath><affectedPath>core/api/src/main/java/org/eclipse/sensinact/core/whiteboard/WhiteboardHandler.java</affectedPath><affectedPath>core/api/src/main/java/org/eclipse/sensinact/core/whiteboard/WhiteboardAct.java</affectedPath><affectedPath>core/api/src/main/java/org/eclipse/sensinact/core/whiteboard/package-info.java</affectedPath><affectedPath>core/api/src/main/java/org/eclipse/sensinact/core/whiteboard/AbstractDescriptiveReadWrite.java</affectedPath><affectedPath>core/api/src/main/java/org/eclipse/sensinact/core/whiteboard/WhiteboardResourceDescription.java</affectedPath><affectedPath>core/api/src/main/java/org/eclipse/sensinact/core/whiteboard/AbstractDescriptiveReadOnly.java</affectedPath><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/whiteboard/impl/SensinactWhiteboard.java</affectedPath><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/command/impl/GatewayThreadImpl.java</affectedPath><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/whiteboard/impl/AbstractResourceMethod.java</affectedPath><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/whiteboard/impl/ActMethod.java</affectedPath><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/whiteboard/impl/GetMethod.java</affectedPath><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/whiteboard/impl/WhiteboardContext.java</affectedPath><affectedPath>core/api/src/main/java/org/eclipse/sensinact/core/whiteboard/WhiteboardGet.java</affectedPath><commitId>4a1d370527a9e52c11a7536a5f3f11d49745da2c</commitId><timestamp>1720614241000</timestamp><author><absoluteUrl>https://devel.data-in-motion.biz/jenkins/user/thomas.calmant</absoluteUrl><fullName>thomas.calmant</fullName></author><authorEmail>thomas.calmant@gmail.com</authorEmail><comment>Initial version of the programmatic whiteboard
</comment><date>2024-07-10 14:24:01 +0200</date><id>4a1d370527a9e52c11a7536a5f3f11d49745da2c</id><msg>Initial version of the programmatic whiteboard</msg><path><editType>add</editType><file>core/api/src/main/java/org/eclipse/sensinact/core/whiteboard/WhiteboardSet.java</file></path><path><editType>add</editType><file>core/api/src/main/java/org/eclipse/sensinact/core/whiteboard/WhiteboardResourceDescription.java</file></path><path><editType>add</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/whiteboard/impl/WhiteboardContext.java</file></path><path><editType>add</editType><file>core/api/src/main/java/org/eclipse/sensinact/core/whiteboard/AbstractDescriptiveReadOnly.java</file></path><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/whiteboard/impl/SensinactWhiteboard.java</file></path><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/whiteboard/impl/SetMethod.java</file></path><path><editType>add</editType><file>core/api/src/main/java/org/eclipse/sensinact/core/whiteboard/AbstractDescriptiveAct.java</file></path><path><editType>add</editType><file>core/api/src/main/java/org/eclipse/sensinact/core/whiteboard/AbstractDescriptiveReadWrite.java</file></path><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/whiteboard/impl/ActMethod.java</file></path><path><editType>add</editType><file>core/api/src/main/java/org/eclipse/sensinact/core/whiteboard/WhiteboardAct.java</file></path><path><editType>add</editType><file>core/api/src/main/java/org/eclipse/sensinact/core/whiteboard/WhiteboardActDescription.java</file></path><path><editType>add</editType><file>core/api/src/main/java/org/eclipse/sensinact/core/whiteboard/WhiteboardHandler.java</file></path><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/command/impl/GatewayThreadImpl.java</file></path><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/whiteboard/impl/GetMethod.java</file></path><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/whiteboard/impl/AbstractResourceMethod.java</file></path><path><editType>edit</editType><file>core/impl/src/test/java/org/eclipse/sensinact/core/command/impl/WhiteboardImplTest.java</file></path><path><editType>add</editType><file>core/api/src/main/java/org/eclipse/sensinact/core/whiteboard/WhiteboardGet.java</file></path><path><editType>add</editType><file>core/api/src/main/java/org/eclipse/sensinact/core/whiteboard/package-info.java</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/whiteboard/impl/SensinactWhiteboard.java</affectedPath><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/command/impl/GatewayThreadImpl.java</affectedPath><commitId>00379325f42ae3a7fb5be0ef32e1e9692dcf8397</commitId><timestamp>1720614561000</timestamp><author><absoluteUrl>https://devel.data-in-motion.biz/jenkins/user/thomas.calmant</absoluteUrl><fullName>thomas.calmant</fullName></author><authorEmail>thomas.calmant@gmail.com</authorEmail><comment>Added WB handler providers property update

Like before, updates of other properties are not supported
</comment><date>2024-07-10 14:29:21 +0200</date><id>00379325f42ae3a7fb5be0ef32e1e9692dcf8397</id><msg>Added WB handler providers property update</msg><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/whiteboard/impl/SensinactWhiteboard.java</file></path><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/command/impl/GatewayThreadImpl.java</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/whiteboard/impl/SensinactWhiteboard.java</affectedPath><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/whiteboard/impl/RegistryKey.java</affectedPath><affectedPath>core/impl/src/test/java/org/eclipse/sensinact/core/command/impl/WhiteboardImplTest.java</affectedPath><commitId>1e0e4769d4c558a331706ccebe52192806de9dcb</commitId><timestamp>1720621116000</timestamp><author><absoluteUrl>https://devel.data-in-motion.biz/jenkins/user/thomas.calmant</absoluteUrl><fullName>thomas.calmant</fullName></author><authorEmail>thomas.calmant@gmail.com</authorEmail><comment>Better Whiteboard handlers priority test
</comment><date>2024-07-10 16:18:36 +0200</date><id>1e0e4769d4c558a331706ccebe52192806de9dcb</id><msg>Better Whiteboard handlers priority test</msg><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/whiteboard/impl/RegistryKey.java</file></path><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/whiteboard/impl/SensinactWhiteboard.java</file></path><path><editType>edit</editType><file>core/impl/src/test/java/org/eclipse/sensinact/core/command/impl/WhiteboardImplTest.java</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>core/api/src/main/java/org/eclipse/sensinact/core/whiteboard/WhiteboardConstants.java</affectedPath><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/whiteboard/impl/SensinactWhiteboard.java</affectedPath><affectedPath>core/impl/src/test/java/org/eclipse/sensinact/core/command/impl/WhiteboardImplTest.java</affectedPath><commitId>ed3470c70586299daf669554fe3acfe5d4742049</commitId><timestamp>1720626659000</timestamp><author><absoluteUrl>https://devel.data-in-motion.biz/jenkins/user/thomas.calmant</absoluteUrl><fullName>thomas.calmant</fullName></author><authorEmail>thomas.calmant@gmail.com</authorEmail><comment>Put constants in an interface and use them internally

Reuse the previous property name for the list of providers
</comment><date>2024-07-10 17:50:59 +0200</date><id>ed3470c70586299daf669554fe3acfe5d4742049</id><msg>Put constants in an interface and use them internally</msg><path><editType>add</editType><file>core/api/src/main/java/org/eclipse/sensinact/core/whiteboard/WhiteboardConstants.java</file></path><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/whiteboard/impl/SensinactWhiteboard.java</file></path><path><editType>edit</editType><file>core/impl/src/test/java/org/eclipse/sensinact/core/command/impl/WhiteboardImplTest.java</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/whiteboard/impl/SensinactWhiteboard.java</affectedPath><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/command/impl/GatewayThreadImpl.java</affectedPath><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/whiteboard/impl/AbstractResourceMethod.java</affectedPath><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/whiteboard/impl/WhiteboardContext.java</affectedPath><affectedPath>core/api/src/main/java/org/eclipse/sensinact/core/whiteboard/WhiteboardHandler.java</affectedPath><affectedPath>core/api/src/main/java/org/eclipse/sensinact/core/whiteboard/WhiteboardGet.java</affectedPath><affectedPath>core/api/src/main/java/org/eclipse/sensinact/core/whiteboard/WhiteboardAct.java</affectedPath><commitId>6bb42dadc8af04bcad80ed25fb5d6afcfc54704f</commitId><timestamp>1720695006000</timestamp><author><absoluteUrl>https://devel.data-in-motion.biz/jenkins/user/thomas.calmant</absoluteUrl><fullName>thomas.calmant</fullName></author><authorEmail>thomas.calmant@gmail.com</authorEmail><comment>Removed generic from WhiteboardHandler interface
</comment><date>2024-07-11 12:50:06 +0200</date><id>6bb42dadc8af04bcad80ed25fb5d6afcfc54704f</id><msg>Removed generic from WhiteboardHandler interface</msg><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/whiteboard/impl/WhiteboardContext.java</file></path><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/whiteboard/impl/SensinactWhiteboard.java</file></path><path><editType>edit</editType><file>core/api/src/main/java/org/eclipse/sensinact/core/whiteboard/WhiteboardGet.java</file></path><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/command/impl/GatewayThreadImpl.java</file></path><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/whiteboard/impl/AbstractResourceMethod.java</file></path><path><editType>edit</editType><file>core/api/src/main/java/org/eclipse/sensinact/core/whiteboard/WhiteboardAct.java</file></path><path><editType>edit</editType><file>core/api/src/main/java/org/eclipse/sensinact/core/whiteboard/WhiteboardHandler.java</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>core/api/src/main/java/org/eclipse/sensinact/core/whiteboard/WhiteboardResourceDescription.java</affectedPath><affectedPath>core/impl/src/test/java/org/eclipse/sensinact/core/command/impl/WhiteboardImplTest.java</affectedPath><commitId>ca3e7b448dd1927669759a7b213e5b3af958aa9f</commitId><timestamp>1720695355000</timestamp><author><absoluteUrl>https://devel.data-in-motion.biz/jenkins/user/thomas.calmant</absoluteUrl><fullName>thomas.calmant</fullName></author><authorEmail>thomas.calmant@gmail.com</authorEmail><comment>Addressed review comments
</comment><date>2024-07-11 12:55:55 +0200</date><id>ca3e7b448dd1927669759a7b213e5b3af958aa9f</id><msg>Addressed review comments</msg><path><editType>edit</editType><file>core/impl/src/test/java/org/eclipse/sensinact/core/command/impl/WhiteboardImplTest.java</file></path><path><editType>edit</editType><file>core/api/src/main/java/org/eclipse/sensinact/core/whiteboard/WhiteboardResourceDescription.java</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>core/impl/src/test/java/org/eclipse/sensinact/core/twin/impl/SensinactTwinTest.java</affectedPath><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/twin/impl/SensinactProviderImpl.java</affectedPath><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/impl/snapshot/ServiceSnapshotImpl.java</affectedPath><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/model/nexus/ModelNexus.java</affectedPath><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/twin/impl/SensinactDigitalTwinImpl.java</affectedPath><affectedPath>core/impl/src/test/java/org/eclipse/sensinact/core/model/impl/ModelBuildingTest.java</affectedPath><commitId>91d5fff46069d24d2f5253628a0245e0372964a3</commitId><timestamp>1721745607000</timestamp><author><absoluteUrl>https://devel.data-in-motion.biz/jenkins/user/thomas.calmant</absoluteUrl><fullName>thomas.calmant</fullName></author><authorEmail>thomas.calmant@gmail.com</authorEmail><comment>Fix to list services and resources on newly created provider instances

... else services when no value was explicitly set are not snapshotted
</comment><date>2024-07-23 16:40:07 +0200</date><id>91d5fff46069d24d2f5253628a0245e0372964a3</id><msg>Fix to list services and resources on newly created provider instances</msg><path><editType>edit</editType><file>core/impl/src/test/java/org/eclipse/sensinact/core/twin/impl/SensinactTwinTest.java</file></path><path><editType>edit</editType><file>core/impl/src/test/java/org/eclipse/sensinact/core/model/impl/ModelBuildingTest.java</file></path><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/twin/impl/SensinactProviderImpl.java</file></path><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/model/nexus/ModelNexus.java</file></path><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/impl/snapshot/ServiceSnapshotImpl.java</file></path><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/twin/impl/SensinactDigitalTwinImpl.java</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/twin/impl/SensinactServiceImpl.java</affectedPath><affectedPath>core/impl/src/test/java/org/eclipse/sensinact/core/twin/impl/SensinactTwinTest.java</affectedPath><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/twin/impl/SensinactDigitalTwinImpl.java</affectedPath><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/model/nexus/ModelNexus.java</affectedPath><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/twin/impl/SensinactResourceImpl.java</affectedPath><commitId>41054e4bd79669268da7f55edb308ec0f80f5137</commitId><timestamp>1721748172000</timestamp><author><absoluteUrl>https://devel.data-in-motion.biz/jenkins/user/thomas.calmant</absoluteUrl><fullName>thomas.calmant</fullName></author><authorEmail>thomas.calmant@gmail.com</authorEmail><comment>Added ability to set resource metadata before it gets a value
</comment><date>2024-07-23 17:22:52 +0200</date><id>41054e4bd79669268da7f55edb308ec0f80f5137</id><msg>Added ability to set resource metadata before it gets a value</msg><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/twin/impl/SensinactDigitalTwinImpl.java</file></path><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/twin/impl/SensinactResourceImpl.java</file></path><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/twin/impl/SensinactServiceImpl.java</file></path><path><editType>edit</editType><file>core/impl/src/test/java/org/eclipse/sensinact/core/twin/impl/SensinactTwinTest.java</file></path><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/model/nexus/ModelNexus.java</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/model/nexus/ModelNexus.java</affectedPath><commitId>2671b7b6568c7dd6956e5807ed74ce8c210a1a67</commitId><timestamp>1721749068000</timestamp><author><absoluteUrl>https://devel.data-in-motion.biz/jenkins/user/thomas.calmant</absoluteUrl><fullName>thomas.calmant</fullName></author><authorEmail>thomas.calmant@gmail.com</authorEmail><comment>Protect against metadata w/o timestamp
</comment><date>2024-07-23 17:37:48 +0200</date><id>2671b7b6568c7dd6956e5807ed74ce8c210a1a67</id><msg>Protect against metadata w/o timestamp</msg><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/model/nexus/ModelNexus.java</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/impl/snapshot/ResourceSnapshotImpl.java</affectedPath><affectedPath>core/api/src/main/java/org/eclipse/sensinact/core/snapshot/ProviderSnapshot.java</affectedPath><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/impl/snapshot/ServiceSnapshotImpl.java</affectedPath><affectedPath>core/api/src/main/java/org/eclipse/sensinact/core/snapshot/ServiceSnapshot.java</affectedPath><affectedPath>core/api/src/main/java/org/eclipse/sensinact/core/snapshot/ResourceSnapshot.java</affectedPath><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/impl/snapshot/ProviderSnapshotImpl.java</affectedPath><commitId>6a6a88125518c47f1680dafa6e8e7532005451b6</commitId><timestamp>1721829538000</timestamp><author><absoluteUrl>https://devel.data-in-motion.biz/jenkins/user/thomas.calmant</absoluteUrl><fullName>thomas.calmant</fullName></author><authorEmail>thomas.calmant@gmail.com</authorEmail><comment>Small enhancements of the provider snapshot API

Added utility methods to easily access services and resources by name
</comment><date>2024-07-24 15:58:58 +0200</date><id>6a6a88125518c47f1680dafa6e8e7532005451b6</id><msg>Small enhancements of the provider snapshot API</msg><path><editType>edit</editType><file>core/api/src/main/java/org/eclipse/sensinact/core/snapshot/ResourceSnapshot.java</file></path><path><editType>edit</editType><file>core/api/src/main/java/org/eclipse/sensinact/core/snapshot/ProviderSnapshot.java</file></path><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/impl/snapshot/ResourceSnapshotImpl.java</file></path><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/impl/snapshot/ProviderSnapshotImpl.java</file></path><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/impl/snapshot/ServiceSnapshotImpl.java</file></path><path><editType>edit</editType><file>core/api/src/main/java/org/eclipse/sensinact/core/snapshot/ServiceSnapshot.java</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/impl/snapshot/ResourceSnapshotImpl.java</affectedPath><affectedPath>core/models/metadata/src/main/resources/model/metadata.ecore</affectedPath><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/model/nexus/ModelNexus.java</affectedPath><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/model/impl/ResourceBuilderImpl.java</affectedPath><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/model/impl/ResourceImpl.java</affectedPath><affectedPath>core/api/src/main/java/org/eclipse/sensinact/core/model/Resource.java</affectedPath><affectedPath>core/impl/src/test/java/org/eclipse/sensinact/core/twin/impl/SensinactTwinTest.java</affectedPath><affectedPath>core/models/metadata/src/main/resources/model/metadata.genmodel</affectedPath><affectedPath>core/api/src/main/java/org/eclipse/sensinact/core/model/ResourceBuilder.java</affectedPath><affectedPath>core/impl/src/test/java/org/eclipse/sensinact/core/model/impl/ModelBuildingTest.java</affectedPath><commitId>fad36b2ed0152578dc5374731fda27b86b720840</commitId><timestamp>1721835870000</timestamp><author><absoluteUrl>https://devel.data-in-motion.biz/jenkins/user/timothyjward</absoluteUrl><fullName>timothyjward</fullName></author><authorEmail>timothyjward@apache.org</authorEmail><comment>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 &lt;timothyjward@apache.org&gt;
</comment><date>2024-07-24 16:44:30 +0100</date><id>fad36b2ed0152578dc5374731fda27b86b720840</id><msg>Allow default resource metadata to be set in the model</msg><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/model/impl/ResourceImpl.java</file></path><path><editType>edit</editType><file>core/impl/src/test/java/org/eclipse/sensinact/core/twin/impl/SensinactTwinTest.java</file></path><path><editType>edit</editType><file>core/api/src/main/java/org/eclipse/sensinact/core/model/Resource.java</file></path><path><editType>edit</editType><file>core/impl/src/test/java/org/eclipse/sensinact/core/model/impl/ModelBuildingTest.java</file></path><path><editType>edit</editType><file>core/api/src/main/java/org/eclipse/sensinact/core/model/ResourceBuilder.java</file></path><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/impl/snapshot/ResourceSnapshotImpl.java</file></path><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/model/nexus/ModelNexus.java</file></path><path><editType>edit</editType><file>core/models/metadata/src/main/resources/model/metadata.ecore</file></path><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/model/impl/ResourceBuilderImpl.java</file></path><path><editType>edit</editType><file>core/models/metadata/src/main/resources/model/metadata.genmodel</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>northbound/sensorthings/mqtt/src/main/java/org/eclipse/sensinact/gateway/northbount/sensorthings/mqtt/SensorthingsMapper.java</affectedPath><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/impl/snapshot/ProviderSnapshotImpl.java</affectedPath><commitId>202312d2e79e2228fa8e964a74f5cfc492c199ee</commitId><timestamp>1721837150000</timestamp><author><absoluteUrl>https://devel.data-in-motion.biz/jenkins/user/thomas.calmant</absoluteUrl><fullName>thomas.calmant</fullName></author><authorEmail>thomas.calmant@gmail.com</authorEmail><comment>Fixed provider snapshot filterEmptyServices to keep services insertion order
</comment><date>2024-07-24 18:05:50 +0200</date><id>202312d2e79e2228fa8e964a74f5cfc492c199ee</id><msg>Fixed provider snapshot filterEmptyServices to keep services insertion order</msg><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/impl/snapshot/ProviderSnapshotImpl.java</file></path><path><editType>edit</editType><file>northbound/sensorthings/mqtt/src/main/java/org/eclipse/sensinact/gateway/northbount/sensorthings/mqtt/SensorthingsMapper.java</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>core/api/src/main/java/org/eclipse/sensinact/core/push/dto/GenericDto.java</affectedPath><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/dto/impl/AbstractUpdateDto.java</affectedPath><affectedPath>core/annotation/src/main/java/org/eclipse/sensinact/core/annotation/dto/Metadata.java</affectedPath><affectedPath>core/impl/src/test/java/org/eclipse/sensinact/core/extract/impl/AnnotationBasedDtoExtractorTest.java</affectedPath><affectedPath>core/impl/src/test/java/org/eclipse/sensinact/core/integration/DataUpdateServiceTest.java</affectedPath><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/model/nexus/ModelNexus.java</affectedPath><affectedPath>core/impl/src/test/java/org/eclipse/sensinact/core/extract/impl/CustomBaseValueDtoExtractorTest.java</affectedPath><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/extract/impl/AnnotationMapping.java</affectedPath><affectedPath>core/impl/src/test/java/org/eclipse/sensinact/core/extract/impl/GenericDtoExtractorTest.java</affectedPath><affectedPath>core/annotation/src/main/java/org/eclipse/sensinact/core/annotation/dto/Data.java</affectedPath><affectedPath>core/annotation/src/main/java/org/eclipse/sensinact/core/annotation/dto/DuplicateAction.java</affectedPath><affectedPath>core/annotation/src/main/java/org/eclipse/sensinact/core/annotation/dto/Service.java</affectedPath><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/extract/impl/GenericDtoDataExtractor.java</affectedPath><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/impl/SetMetadataCommand.java</affectedPath><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/impl/SetValueCommand.java</affectedPath><affectedPath>core/annotation/src/main/java/org/eclipse/sensinact/core/annotation/dto/Resource.java</affectedPath><affectedPath>core/annotation/src/main/java/org/eclipse/sensinact/core/annotation/dto/Provider.java</affectedPath><commitId>d56f449967ab2d893f97a1736a3d8eb79c23148a</commitId><timestamp>1722331137000</timestamp><author><absoluteUrl>https://devel.data-in-motion.biz/jenkins/user/timothyjward</absoluteUrl><fullName>timothyjward</fullName></author><authorEmail>timothyjward@apache.org</authorEmail><comment>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 &lt;timothyjward@apache.org&gt;
</comment><date>2024-07-30 10:18:57 +0100</date><id>d56f449967ab2d893f97a1736a3d8eb79c23148a</id><msg>Allow data and metadata update de-duplication</msg><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/extract/impl/GenericDtoDataExtractor.java</file></path><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/impl/SetMetadataCommand.java</file></path><path><editType>edit</editType><file>core/api/src/main/java/org/eclipse/sensinact/core/push/dto/GenericDto.java</file></path><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/impl/SetValueCommand.java</file></path><path><editType>add</editType><file>core/annotation/src/main/java/org/eclipse/sensinact/core/annotation/dto/DuplicateAction.java</file></path><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/dto/impl/AbstractUpdateDto.java</file></path><path><editType>edit</editType><file>core/impl/src/test/java/org/eclipse/sensinact/core/integration/DataUpdateServiceTest.java</file></path><path><editType>edit</editType><file>core/impl/src/test/java/org/eclipse/sensinact/core/extract/impl/GenericDtoExtractorTest.java</file></path><path><editType>edit</editType><file>core/annotation/src/main/java/org/eclipse/sensinact/core/annotation/dto/Metadata.java</file></path><path><editType>edit</editType><file>core/impl/src/test/java/org/eclipse/sensinact/core/extract/impl/AnnotationBasedDtoExtractorTest.java</file></path><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/model/nexus/ModelNexus.java</file></path><path><editType>edit</editType><file>core/annotation/src/main/java/org/eclipse/sensinact/core/annotation/dto/Resource.java</file></path><path><editType>edit</editType><file>core/impl/src/test/java/org/eclipse/sensinact/core/extract/impl/CustomBaseValueDtoExtractorTest.java</file></path><path><editType>edit</editType><file>core/annotation/src/main/java/org/eclipse/sensinact/core/annotation/dto/Service.java</file></path><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/extract/impl/AnnotationMapping.java</file></path><path><editType>edit</editType><file>core/annotation/src/main/java/org/eclipse/sensinact/core/annotation/dto/Data.java</file></path><path><editType>edit</editType><file>core/annotation/src/main/java/org/eclipse/sensinact/core/annotation/dto/Provider.java</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>core/annotation/src/main/java/org/eclipse/sensinact/core/annotation/dto/Timestamp.java</affectedPath><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/extract/impl/AnnotationMapping.java</affectedPath><commitId>508355c944be9bead0063f388f4b31de34007644</commitId><timestamp>1722333026000</timestamp><author><absoluteUrl>https://devel.data-in-motion.biz/jenkins/user/timothyjward</absoluteUrl><fullName>timothyjward</fullName></author><authorEmail>timothyjward@apache.org</authorEmail><comment>Further improvements to timestamp mapping
</comment><date>2024-07-30 10:50:26 +0100</date><id>508355c944be9bead0063f388f4b31de34007644</id><msg>Further improvements to timestamp mapping</msg><path><editType>edit</editType><file>core/annotation/src/main/java/org/eclipse/sensinact/core/annotation/dto/Timestamp.java</file></path><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/extract/impl/AnnotationMapping.java</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>core/impl/src/test/java/org/eclipse/sensinact/core/integration/DataUpdateServiceTest.java</affectedPath><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/impl/DataUpdateImpl.java</affectedPath><commitId>c7b3cb42d39b70d0aeb4f2030f9772ddb52426af</commitId><timestamp>1723126136000</timestamp><author><absoluteUrl>https://devel.data-in-motion.biz/jenkins/user/gregoire.athanase</absoluteUrl><fullName>gregoire.athanase</fullName></author><authorEmail>gregoire.athanase@kentyou.com</authorEmail><comment>dataUpdate now supports multiple updates

Signed-off-by: Grégoire Athanase &lt;gregoire.athanase@kentyou.com&gt;
</comment><date>2024-08-08 16:08:56 +0200</date><id>c7b3cb42d39b70d0aeb4f2030f9772ddb52426af</id><msg>dataUpdate now supports multiple updates</msg><path><editType>edit</editType><file>core/impl/src/test/java/org/eclipse/sensinact/core/integration/DataUpdateServiceTest.java</file></path><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/impl/DataUpdateImpl.java</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>core/impl/src/test/java/org/eclipse/sensinact/core/extract/impl/AnnotationBasedDtoExtractorTest.java</affectedPath><affectedPath>core/impl/src/main/java/org/eclipse/sensinact/core/extract/impl/AnnotationMapping.java</affectedPath><commitId>117c1652c4c53b299ea7fe9a58587c06965124e0</commitId><timestamp>1723127531000</timestamp><author><absoluteUrl>https://devel.data-in-motion.biz/jenkins/user/timothyjward</absoluteUrl><fullName>timothyjward</fullName></author><authorEmail>timothyjward@apache.org</authorEmail><comment>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 &lt;timothyjward@apache.org&gt;
</comment><date>2024-08-08 15:32:11 +0100</date><id>117c1652c4c53b299ea7fe9a58587c06965124e0</id><msg>Annotated DTO mapping error</msg><path><editType>edit</editType><file>core/impl/src/test/java/org/eclipse/sensinact/core/extract/impl/AnnotationBasedDtoExtractorTest.java</file></path><path><editType>edit</editType><file>core/impl/src/main/java/org/eclipse/sensinact/core/extract/impl/AnnotationMapping.java</file></path></item></changeSet><culprit><absoluteUrl>https://devel.data-in-motion.biz/jenkins/user/thomas.calmant</absoluteUrl><fullName>thomas.calmant</fullName></culprit><culprit><absoluteUrl>https://devel.data-in-motion.biz/jenkins/user/gregoire.athanase</absoluteUrl><fullName>gregoire.athanase</fullName></culprit><culprit><absoluteUrl>https://devel.data-in-motion.biz/jenkins/user/j.albert</absoluteUrl><fullName>j.albert</fullName></culprit><culprit><absoluteUrl>https://devel.data-in-motion.biz/jenkins/user/timothyjward</absoluteUrl><fullName>timothyjward</fullName></culprit><mavenArtifacts><url>https://devel.data-in-motion.biz/jenkins/view/all/job/Eclipse%20Sensinact/org.eclipse.sensinact.gateway.core$impl/33/mavenArtifacts/</url></mavenArtifacts></mavenBuild>