Decouple config and netconf subsystems. Extract a common mapping for config pusher and config subsystem netconf Add a ConfigPersisterFacade for XML that allows reads/writes from/to config subsystem using XML format Push notifications from YangStoreService to NetconfNotificationManager instead of using custom listeners Migrate netconf features from controller features, untangle features Change-Id: I71e4ca6e0258e0b1f0d6c19119f93eb9d68b7bca Signed-off-by: Tomas Cere <tcere@cisco.com> Signed-off-by: Maros Marsalek <mmarsale@cisco.com> Signed-off-by: Ed Warnicke <hagbard@gmail.com>
Fix license header violations in sal-netconf-connector Change-Id: I8235e1cbe1ed7bce9d017276dd6d9f4fb26ead70 Signed-off-by: Thanh Ha <thanh.ha@linuxfoundation.org>
BUG-3861 Detect RPC errors when committing netconf transaction Transaction from netconf southbound would return a succeeded future in case an rpc-error was returned as response to commit rpc. Change-Id: I7ec538f09c5d1b9ac5e18d69ccc6d2c3939d01c3 Signed-off-by: Maros Marsalek <mmarsale@cisco.com> (cherry picked from commit e9b7db6d1bbbf4489bf35071d9ec2b0f96499938)
BUG-3604 Ignore empty edits in netconf connector Ignore merge/put operation with data that result in an empty edit-config rpc. Some netconf devices ignore it, but some dont and return errors. This kind of merge is triggered e.g. by Restconf when trying to ensure parent structure for top level list. Change-Id: I8351be304f4e55e000eb7fe0da262549ec377459 Signed-off-by: Maros Marsalek <mmarsale@cisco.com> (cherry picked from commit e931d7f83a470f9c5af6a0b69bc45382720e2ed7)
Get rid of netconf session preferences after connect Memory usage improvement for sal-netconf-connector: The preferences object was kept inside the data broker during the entire lifetime of a netconf connector. This is not necessary as it only needs 3 boolean values from it. + intern String representation of capabilities written into datastore. Change-Id: I46363a3dc079350ccb1db4840b31fdd5342798d3 Signed-off-by: Maros Marsalek <mmarsale@cisco.com> (cherry picked from commit ed824b6afc20ad44f0fc0f955747e715d1fc90a0)
Value for transactions moved to yang module Timeout value for blocking operations within transactions moved from AbstractWriteTx to yang module odl-sal-netconf-connector-cfg.yang Change-Id: I4414a613445c914b0b3262705ca5ceae058b51d5 Signed-off-by: Marian Dubai <mdubai@cisco.com>
BUG-2314 Fix (no-input)rpcs serialization in netconf connector Rpcs with no input were not wrapped in rpc element correctly Change-Id: I8ad0440681e83dd3a04a8ba38f49b2d7c4976caa Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
BUG-2314 Migrate netconf-connector to NormalizedNode CompositeNodes are wiped out from sal-netconf-connector. The inital operations performed on a remote netconf device (e.g. Schema download) is performed using a special schema context that contains base netconf, netconf monitoring and netconf notification schemas. With this schema context, it is possible to also use normalized nodes. YangInstanceIdentifier -> NormalizedNode filter structure is handled by a class named InstanceIdToFilter that was extracted from deprecated DataNormalizer. Change-Id: Ibcc399c3ef9413aa4f96dba5b4bb2611db7123a8 Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
BUG-2310 - widen yang model for netconf-node. Netconf datastore is now in topology, added connection state, resolved/unresolved schemas with failure reasons and host to netconf node. Deprecated old netconf node in inventory. Change-Id: Id34a17b82420eaf69d03d72b9a1523210cc87cc2 Signed-off-by: Tomas Cere <tcere@cisco.com>
BUG-2560 Canonical write to remote netconf devices Current sequence for writing to remote netconf devices: Writable running only: - lock running or fail - edit running (unlock on fail) - unlock running Candidate only: - lock candidate -- if lock fails, try to discard changes --- if discard fails, fail --- if discard succeeds, lock candidate ---- if lock fails, fail - edit candidate (discard-changes + unlock on fail) - commit - unlock candidate Both writable running and candidate: - lock running or fail - SAME AS FOR CANDIDATE ONLY - unlock running Change-Id: Ia4e0d43f3131c4072e8505ba72ef09ff441c1fac Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
Update junit Assert imports JUnit 4.11 has moved Assert to org.junit, and deprecated junit.framework.Assert. This adjust the imports to fix the warnings. Change-Id: Iecbf2a1b4ae097989e840ad6f6d5bf759c521639 Signed-off-by: Robert Varga <rovarga@cisco.com>
BUG-732 Detect commit failure (and also put/delete/merge) in netconf-connector When a failed rpc is detected, issue a discard changes rpc to keep device (candidate) configuration consistant (if candidate is supported). Change-Id: Ia752ee33043b3159fd71b01eef34e6e79baf18be Signed-off-by: Maros Marsalek <mmarsale@cisco.com>