summaryrefslogtreecommitdiffstats
path: root/infra/data-impl/src
AgeCommit message (Collapse)AuthorFilesLines
2019-04-08HONEYCOMB-443: ODL bump to NeonMichal Cmarada18-272/+207
- bumps ODL dependencies to neon - migrates guava optional to java.utils.optional Change-Id: Ibdaa365c7e21a341103aba88dfd67277e40d2969 Signed-off-by: Michal Cmarada <mcmarada@cisco.com>
2018-10-08HONEYCOMB-431: add support for <validate> RPCMichal Cmarada14-22/+454
This patch introduces ValidableTransaction interface, used by Honeycomb's DataBroker to implement Netconf's DOMDataTransactionValidator. WriteTransaction implements ValidableTransaction by delegating validate to DataModification for both config and operational modifications. This patch requires ODL Fluorine (HONEYCOMB-433), which brings support for <candidate> validation to Netconf. Alternatively custom ODL Oxygen build with patches from stable/oxygen/oxygen-hc-improvements. Change-Id: Ic3eaffaef0314d22da3ea37f9416f18ccb0b99ae Signed-off-by: Marek Gradzki <mgradzki@cisco.com> Signed-off-by: Michal Cmarada <mcmarada@cisco.com>
2018-09-25Bump ODL dependencies to Fluorine (HONEYCOMB-433)Michal Cmarada7-69/+85
Change-Id: I142ebd2899272feff00abe7d4bae708f093ee3ec Signed-off-by: Michal Cmarada <michal.cmarada@pantheon.tech>
2018-08-21Mark improvements with TODO instead of FIXMEMarek Gradzki4-5/+4
Sonar reports FIXMES as issues with higher priority as TODOs. FIXMEs should only be used for known bugs, not for improvements. Also include JIRA issue ID in the TODO message. Change-Id: I47461d948421ff17532f17ecec3ddae84239511f Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2018-08-17HONEYCOMB-431: delegate DataModification.validate to WriterRegistryMarek Gradzki5-36/+114
This patch introduces ModifiableDataTreeDelegator.validateCandidate that translates DataTreeCandidate to DataObjectUpdates and delegates validation to WriterRegistry (similarly as for bulk update). ModifiableDataTreeManager.commit implementation invokes validation before bulk update. To make it efficient, DataObjectUpdates are computed once and stored in DataTreeContext. Change-Id: If4bd558e64ed84c11c9c50c7a98a2aaa8db841bb Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2018-08-17HONEYCOMB-431: make DataModification.validate idempotentMarek Gradzki3-24/+59
This patch modifies contract of DataModification.validate to make it idempotent. ModifiableDataTreeManager.validate now invokes dataTree.validate on a copy of DataTreeModification. ModifiableDataTreeManager.validateCandidate was introduced to allow additional validation. Change-Id: I86fc101faff9b04afde2f3eb16fff4d4df2867ad Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2018-08-03Do not use FQN of DataBroker in ModifiableDataTreeDelegatorMarek Gradzki1-2/+3
Change-Id: I5944e9fd9388fbc533bf909b171b0672d798ad82 Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2018-06-27DelegatingRewriteDeleteProducer: remove useles instanceof checkMarek Gradzki1-1/+0
DataContainerNode is DataContainerChild. Change-Id: I9122f9f3c27951f2d498f714d2ea15ebc96abdf3 Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2018-06-11ModifiableDataTreeManager: remove redundant non-default constructorMarek Gradzki1-5/+1
Change-Id: I17dba7ad77f4d7865f887056062d0748ca699d44 Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2018-06-11WriteTransaction: make sure TransactionCommitFailedException is thrownMarek Gradzki1-3/+1
DataTreeModification.ready() used by DataModification.validate() might throw IllegalArgumentException in case of missing mandatory nodes. Use broader Exception type in WriteTransaction.submit() to make sure contract defined by AsyncWriteTransaction is preserved. Change-Id: I95cb3e1e8c6db36df90d2c78e7d63c854189e2fd Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2018-04-16WriteTransaction: log exception with error level when submit failsMarek Gradzki1-1/+1
Change-Id: Ibc269946c08702805531a62c40be295fecc6b4ce Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2018-04-10Fix various Sonar warningsMarek Gradzki1-2/+2
Change-Id: I0883042a80525b72f33e66fdb0d5b9e600dcc713 Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2018-03-23HONEYCOMB-424: bump ODL dependencies to OxygenMarek Gradzki12-66/+70
Change-Id: I3160e5df4e66b3b3c732619fc1fc7599459fda76 Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2018-03-07Post HONEYCOMB-161 cleanupMarek Gradzki1-1/+0
Change-Id: I46652c9f109a6ede60cfb3143d945fe8b6f1f042 Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2018-02-02Use YangParserTestUtils instead of CrossSourceStatementReactor.BuildActionMarek Gradzki1-7/+3
Simplifies code and removes usages of deprecated YangStatementSourceImpl. Change-Id: I012e2de7a5a902927eaec87370f1850d54fbf4ee Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2018-02-02Remove usages of deprecated BindingNormalizedNodeSerializer from yantoolsMarek Gradzki3-3/+3
Use mdsal version: org.opendaylight.mdsal.binding.dom.codec.api.BindingNormalizedNodeSerializer instead of org.opendaylight.yangtools.binding.data.codec.api.BindingNormalizedNodeSerializer Change-Id: Idfb977acee95de40183d4574565c46ac9ab54a27 Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2017-12-04Fixed bug in ModificationDiffMartin Sunal1-1/+3
when leaf is modified in augmentation modification type is subtree-modified. Implementation expected only type write or delete. Change-Id: I3146b1a7322bd73d7972fecaceeafa654eeb84a4 Signed-off-by: Martin Sunal <msunal@frinx.io> Signed-off-by: Maros Marsalek <maros.mars@gmail.com>
2017-11-24Fix getRevertTransactionContext() closeMarek Gradzki1-8/+17
Also suppress Sonar warnings casused by SONARJAVA-1670. until SonarCube is upgraded (HONEYCOMB-419). Change-Id: Id5b775dfdd97180f6627192bd04aaac4f1e4e4c0 Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2017-11-23Fix method/modifiers ordering to comply with JLSMarek Gradzki1-2/+2
Change-Id: I2b886a118ff5167df89a2922802b343ce5978c95 Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2017-11-22Cleanup various Sonar waringsMarek Gradzki4-14/+6
Unused code, imports, etc. Change-Id: Icb19d6a877d5ddbfd85caa86c4e62880e4db3c44 Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2017-10-23HONEYCOMB-405 - Revert fix for indirect updatesJan Srnicek6-167/+791
If indirect update(delete+create) fails in a way, that delete passed, but update part failed, delete part must be reverted Moves reverter creation to MDTG and test cases related too it to ModifiableDataTreeDelegatorRevertTest Fixes tracking of allready processed changes by tracking them from perspective of processModifications() method Introduces UpdateFailedException as replacement for BulkUpdateException(now thrown also for single updates) Separates ReverterImpl from FlatWriterRegistry and ads unit tests Change-Id: If0066d0716d9476be89b1d99985b6745becac15e Signed-off-by: Jan Srnicek <jsrnicek@cisco.com>
2017-09-13Make data stored in ModificationCache eligible for GC earlierMarek Gradzki1-2/+8
ModificationCache might store huge amount of data. After DOs are retreved from readers it is not used anymore. Change-Id: I66d57047212fed02321c416af3608c4998315ce7 Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2017-09-05Make DataModification closeableMaros Marsalek2-4/+12
and close the modification from transactions. This enables cleanup of underlay resources per transaction. It is not needed when managing VPP, but might be useful for other use-cases where underlay transactions are involved. Change-Id: If14197052172be0158fd7efb5ee1794935d576bc Signed-off-by: Maros Marsalek <maros.mars@gmail.com>
2017-08-16HONEYCOMB-386 - Make update optionalJan Srnicek2-13/+79
If customizer does not support update directly, updates for its handled nodes are broken up to delete + create pairs. Change-Id: I2929109e8c9a1db0bef108367cf7d839135ce173 Signed-off-by: Jan Srnicek <jsrnicek@cisco.com>
2017-05-09HONEYCOMB-350 - APPEAR/DISAPPEAR modification handlingJan Srnicek22-553/+2026
Allows these types of modifications to check in depth, to see if some of their children nodes were not modified Change-Id: Ice2f988732c2d9ecad8e960c4f10d01863fb0cfd Signed-off-by: Jan Srnicek <jsrnicek@cisco.com>
2017-02-14Added debug logs for transactionsJan Srnicek2-1/+36
Change-Id: I4585cbc2100ef0a76e50e870d57b28221debf2f6 Signed-off-by: Jan Srnicek <jsrnicek@cisco.com>
2017-02-10Fix support for nested augmentations when augmenting listsMarek Gradzki1-8/+26
Change-Id: I96e7db8f295c9c3d5b14395c7785574d12d76ea9 Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2017-01-23HONEYCOMB-302: add support for nested augmentationsMarek Gradzki1-23/+91
Change-Id: I60f1b3f79ddb578d6fca157fe5736de40b30623e Signed-off-by: Marek Gradzki <mgradzki@cisco.com> (cherry picked from commit 78886acd688284585c2e219e18d7289f49cc8a45)
2016-11-24Fix leaf list modification detectionMaros Marsalek3-1/+58
Change-Id: Ib7bcde546faf8e9bf73d16adaf87c2f8c43ec4aa Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
2016-11-23HONEYCOMB-170 Add more information to RevertFailedExMaros Marsalek3-9/+12
Change-Id: I6b24a1d061c94d57730b20cde4c5b3c39444b119 Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
2016-11-03Properly close open files(persistence)Maros Marsalek1-4/+4
Change-Id: I0b6a01c7360e056059b0c8ed1821a0fdddc59308 Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
2016-11-01HONEYCOMB-272: bump mockito version to 2.2.9Marek Gradzki1-2/+7
ArgumentMatchers.any() does not match null anymore, so some of the tests has been updated. Change-Id: I5de0fdfe87fc8e5c8ce24bfae8daeaba032195ff Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2016-10-28HONEYCOMB-274 Fix checkstyle license checksMaros Marsalek1-0/+16
Change-Id: I9a7783bf072b2e2396f0fa1a784bcb57adb689b4 Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
2016-10-24HONEYCOMB-255 - Cutting identifiers to prevent failing of revertsJan Srnicek3-11/+38
Mapping allready processes changes for reverting by InstanceIdentifier instead of using KeyedInstanceIdentifier(to prevent failing to identify handleable nodes) Modified logging to prevent double/triple logging of detailed cause of failed bulk update Reusing WriteContext for revert(removed try with resource to prevent closing of write context before revert) Change-Id: Ie939ebe443629f9cdad5b5b449aa8c5dac40ea67 Signed-off-by: Jan Srnicek <jsrnicek@cisco.com> Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
2016-10-20HONEYCOMB-261 Make ModificationDiff schema awareMaros Marsalek5-105/+233
to check presence statement on containers for starters + update all checks in ModificationDiff to be performed on schema instead of data Change-Id: I6ec1a0f9e1ca821ef9f6835072d075dd0994bdb6 Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
2016-10-14HONEYCOMB-229 Introduce NAT to HCMaros Marsalek4-6/+66
Reflects SNAT from VPP: - 1:1 Static IPv4 mapping - interface in/out NAT feature management Bonus: - Support presence containers in infra Change-Id: Ieb38526f83edbae5e605d5c7e39bb22bbafc50e5 Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
2016-09-07HONEYCOMB-194 Increase data-impl coverage to 87%Maros Marsalek7-49/+238
Change-Id: I1bd6d6ad2e8d35322346aa658e74413ce2d889f0 Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
2016-09-07Cleanup TODOs and FIXMEsMaros Marsalek4-9/+10
- Fix minor ones - Report bigger and include issue number in comment - Pull common dependencies into dependency management of common/parents Change-Id: I06a6ac37c52b603fd73ed42023d6b2e7fa18010f Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
2016-08-31Fixing sonar issues #1Maros Marsalek2-7/+9
Change-Id: I4c27d0ad2fd1655db2237ae914361f029093084c Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
2016-08-19HONEYCOMB-22: Remove karaf based distribution and wiringMaros Marsalek9-484/+0
Change-Id: I48aafb726de53b6ad3fb9b97c202f712dfa4a540 Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
2016-07-29HONEYCOMB-130: Rename infra packages(remove vpp/v3po)Maros Marsalek20-66/+65
Change-Id: Ic5b90e397e3743623d01b206bc60bc5c7df6b981 Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
2016-07-29HONEYCOMB-130: Separate v3po plugin from HC infraMaros Marsalek27-0/+3537
Creating folders: - common/ - infra/ - v3po/ - vpp-common/ Change-Id: I2c39e1b17e39e7c0f0628f44aa5fe08563fa06e4 Signed-off-by: Maros Marsalek <mmarsale@cisco.com>