Model-Driven Service Abstraction Layer (MD-SAL)¶
Overview¶
MD-SAL provides infrastructure for binding YANG models to Java object model and infrastructure for providing YANG-defined interaction patterns: * Reactive datastore update * RPC and Action invocation * Notification sourcing and delivery
Behavior/Feature Changes¶
The (2025.09) Vanadium MDSAL release brings improved DataObjectModification sealed hierarchy in
MDSAL-889 and coerceStep method introduced in
MDSAL-892.
They together simplifies user experience when dealing with datastore changes enabling usage of Java enhanced switch
and getting rid of nullness warnings for dataBefore()/dataAfter() methods.
New Features¶
Added DataObjectModification#coerceKeyStep in MDSAL-892
Deprecated Features¶
Deprecated DataObjectModification#ModificationType in MDSAL-889
Removed Features¶
Removed deprecated DataObjectModification methods in MDSAL-889
Resolved Issues¶
The following table lists the issues resolved in this release.
Type |
Key |
Summary |
Resolution |
Fix Version(s) |
|---|---|---|---|---|
Bad addressing in AbstractDataObjectModification.getModifiedChildContainer(Class, Class) |
Done |
14.0.18, 15.0.0 |
||
Add DataObjectModification.coerceKeyStep() |
Done |
14.0.19, 15.0.1 |
||
Remodel DataObjectModification |
Done |
15.0.0 |
||
Package mdsal-eos-dom-simple as odl-mdsal-eos-single |
Done |
14.0.20, 15.0.2 |
||
Migrate features to template-feature-parent |
Done |
15.0.2 |
||
Remove DOMRpcRouter.notification(Publish)Service() methods |
Done |
15.0.0 |
||
Remove DOMRpcRouter.{action,rpc}(Provider)Service() methods |
Done |
15.0.0 |
||
Remove most InstanceIdentifier-using methods from mdsal-binding-api |
Done |
15.0.0 |
||
Split out IETF-defined models into their own repository |
Done |
15.0.0 |
||
Remove Clustered(DOM)DataTreeChangeListener |
Done |
15.0.0 |
Known Issues¶
The following table lists the known issues that exist in this release.