You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/changelogs/v0.6.0.md
+14-2Lines changed: 14 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -206,7 +206,6 @@ No breaking changes. Existing code continues to work unchanged. Applications can
206
206
207
207
### Physical Adapter Callbacks
208
208
209
-
210
209
Physical Adapters can now receive and react to Digital Twin lifecycle events, enabling adaptive behavior based on synchronization state changes.
211
210
While **Digital Adapters** have always received lifecycle updates to notify external observers and implement protocol-specific behavior, this capability was **missing on the Physical side** of the Digital Twin architecture.
212
211
Physical Adapters can benefit from lifecycle awareness to:
@@ -241,9 +240,11 @@ Other `LifeCycleListener` callbacks are **not exposed** to Physical Adapters bec
241
240
3.**Separation of Concerns**: Physical Adapters should be completely unaware of the Digital Twin's compute state, as managing or reacting to DT-level state is outside their responsibility domain
242
241
243
242
Existing Physical Adapter implementations require **no changes**—the new callbacks have empty default implementations. Developers can opt-in by overriding `onDigitalTwinSync()` and/or `onDigitalTwinUnSync()` when lifecycle-aware behavior is needed.
243
+
244
244
### Missing adapter ID in PhysicalAssetWldtEvent
245
245
246
246
This enhancement resolves **Issue #25** ([GitHub Link](https://github.com/wldt/wldt-core-java/issues/25)), which addresses a critical ambiguity problem in multi-adapter Digital Twin configurations.
247
+
247
248
#### Problem Statement
248
249
249
250
When multiple Physical Adapters publish variations to the physical world using identical keys (e.g., two adapters both reporting a `temperature` property), the **`DigitalTwinModel`** cannot distinguish the source adapter of each variation. This ambiguity prevents:
@@ -271,4 +272,15 @@ The `PhysicalAssetWldtEvent` class has been enhanced with a new `physicalAdapter
2. These methods automatically inject the adapter's ID via `setPhysicalAdapterId(String physicalAdapterId)` before event propagation
274
-
3. The `DigitalTwinModel` and in generale physical events subscribers receive events with full source context
275
+
3. The `DigitalTwinModel` and in generale physical events subscribers receive events with full source context
276
+
277
+
### Refactoring for Content-Type in PhysicalAssetEvent
278
+
279
+
Added `contentType` (String) field to the `PhysicalAssetEvent` class to allow adapters to communicate
280
+
the content type of the physical event body (e.g. `application/json`).
281
+
The field is fully accessible via getter and setter methods.
282
+
283
+
With this change the `PhysicalAssetEvent` now includes the following fields:
284
+
285
+
-`type`: Domain specific event type (e.g., "temperatureAlert", "motionDetected") that the developer can define based on the physical event semantics maybe with the support of a common ontology or taxonomy.
286
+
-`contentType`: The content type of the event body (e.g., "application/json", "text/plain") that allows the receiving Digital Twin Model to correctly interpret the event payload.
Copy file name to clipboardExpand all lines: docs/dt_definition_basic_concepts.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -156,7 +156,7 @@ As schematically illustrated in the previous Figure, involved steps are:
156
156
2. Involved Physical Adapters communicate with the Physical Asset, receive data and generate Events (ePA)
157
157
to notify about physical property changes
158
158
3. Received ePA will be used by the Digital Twin Model in order to run the
159
-
Shadowing function and compute the new DT State
159
+
Shadowing process through its Digital Twin Model and compute the new DT State
160
160
4. The DT can move from the Bound to Shadowed phase until it is able to maintain a proper synchronization
161
161
with the physical asset over time through its shadowing process and the generation and maintenance of the DT's State
162
162
@@ -168,7 +168,7 @@ The Digital Twin State is structured and characterized by the following elements
168
168
169
169
Listed elements can be directly associated to the corresponding element of the Physical Asset or generated by DT Model
170
170
combining multiple physical properties, actions or relationships at the same time. The Digital Twin State can be managed
171
-
through the Shadowing Function and exposes a set of methods for its manipulated. When there is a change in the DT State an event (eDT) will be generated
171
+
through the Digital Twin Model and the implemented shadowing process and exposes a set of methods for its manipulated. When there is a change in the DT State an event (eDT) will be generated
172
172
173
173
The manipulation of DT's State generates a set of DT's events (eDT) associated to each specific variation and evolution of the
174
174
twin during its life cyle. These events are used by the Digital Interface and in particular by its Digital Adapters to
0 commit comments