Expand description
The device-shadow state machine shared by the IoT Data Plane handlers:
deep-merge with null-deletion semantics, state.delta computation,
per-leaf metadata timestamp stamping, and epoch-time helpers.
Kept in one place so update / get / delete cannot diverge on the shadow document’s wire shape.
Functions§
- compute_
delta - Compute
state.delta: the subset ofdesiredwhose value differs fromreported(a leaf missing fromreported, or nested objects that differ). ReturnsNonewhen there is no difference. - merge_
into - Deep-merge
patchintotarget. Anullleaf inpatchdeletes that key fromtarget(AWS shadow semantics); nested objects merge recursively; every other value overwrites. - now_
millis - Current time as epoch milliseconds. Retained-message
lastModifiedTimeis epoch millis. - now_
secs - Current time as epoch seconds. AWS shadow
timestamp/metadataleaves are epoch seconds. - stamp_
metadata - Stamp per-leaf
metadatatimestamps for every leaf touched bypatch. Anullleaf inpatchremoves the corresponding metadata leaf; objects recurse; arrays become an array of{ "timestamp": ts }(one per element); scalars become{ "timestamp": ts }.