Age | Commit message (Collapse) | Author | Files | Lines |
|
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>
|
|
Change-Id: I142ebd2899272feff00abe7d4bae708f093ee3ec
Signed-off-by: Michal Cmarada <michal.cmarada@pantheon.tech>
|
|
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>
|
|
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>
|
|
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>
|
|
Change-Id: I5944e9fd9388fbc533bf909b171b0672d798ad82
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
|
|
Change-Id: Ibd371b845debac895fad97b4e15732d858e00a3c
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
|
|
DataContainerNode is DataContainerChild.
Change-Id: I9122f9f3c27951f2d498f714d2ea15ebc96abdf3
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
|
|
Change-Id: I17dba7ad77f4d7865f887056062d0748ca699d44
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
|
|
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>
|
|
Change-Id: Ibc269946c08702805531a62c40be295fecc6b4ce
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
|
|
Change-Id: I0883042a80525b72f33e66fdb0d5b9e600dcc713
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
|
|
Change-Id: Ib0b9a2a2369730cd8a21e35e4dce0b62e45e8ad3
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
|
|
Change-Id: I3160e5df4e66b3b3c732619fc1fc7599459fda76
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
|
|
Change-Id: I46652c9f109a6ede60cfb3143d945fe8b6f1f042
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
|
|
Simplifies code and removes usages of deprecated YangStatementSourceImpl.
Change-Id: I012e2de7a5a902927eaec87370f1850d54fbf4ee
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
|
|
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>
|
|
Change-Id: Idb0fec8ab45ec76431ab6d05d70a61eee1929628
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
|
|
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>
|
|
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>
|
|
Change-Id: I2b886a118ff5167df89a2922802b343ce5978c95
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
|
|
Unused code, imports, etc.
Change-Id: Icb19d6a877d5ddbfd85caa86c4e62880e4db3c44
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
|
|
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>
|
|
Change-Id: I64bcd7e45da5d7431ba436ff6ad1ac62cd1d1051
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
|
|
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>
|
|
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>
|
|
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>
|
|
Change-Id: I6294fc266b704568d4e093a50d615f96eac153be
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
|
|
Features:
- static bgp instance
- static peer registry (both remote & app peers supported)
- bgp operational state exposed via RESTCONF/NETCONF
- bgp-inet support
- postman collection with examples
TODOs:
- make bgp disabled by default in honeycomb.json (probably bgp should be build using profile
or allow to filter yangs loaded by SchemaCtx, otherwise footprint will grow)
- update asciidocs for infra module
- SPI for VPP integration:
- allow RIB changes listeners
- or writers (that can reject changes) to mirror netconf/restconf design
- expose bgp server & peer cfg via netconf/restconf (currently read from json files)
- test support for all BGP extensions (flowspec BGP needs additional care)
- make bgp extensions fully configurable (probably requires changes in ODL)
Testing
1) start hc distro:
./infra/minimal-distribution/target/minimal-distribution-1.17.07-SNAPSHOT-hc/minimal-distribution-1.17.07-SNAPSHOT/honeycomb
2) run bgp-testtool:
java -jar ./target/bgp-testtool-0.6.3-Boron-SR3-executable.jar
-ra 127.0.0.1:1790 -la 127.0.0.2:17900 -pr 2 -ll DEBUG --active true -as 65000 -mp true
then GET http://localhost:8183/restconf/operational/bgp-rib:bgp-rib
Change-Id: I156d6a1c79174279db8c8936c40ac1f28e14794c
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
|
|
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>
|
|
Change-Id: Ie7b486c266ea34df999e7122b5ef12d26aded863
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
|
|
Change-Id: I4585cbc2100ef0a76e50e870d57b28221debf2f6
Signed-off-by: Jan Srnicek <jsrnicek@cisco.com>
|
|
Change-Id: I96e7db8f295c9c3d5b14395c7785574d12d76ea9
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
|
|
Change-Id: I60f1b3f79ddb578d6fca157fe5736de40b30623e
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
(cherry picked from commit 78886acd688284585c2e219e18d7289f49cc8a45)
|
|
Change-Id: I99bc2593d50e59a6d4293e2d98ef3a9569a55008
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
|
|
Change-Id: I47f37a60f276928672fc2bd53e948641d9278014
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
|
|
Change-Id: Ib7bcde546faf8e9bf73d16adaf87c2f8c43ec4aa
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
|
|
Change-Id: I6b24a1d061c94d57730b20cde4c5b3c39444b119
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
|
|
Change-Id: I0b6a01c7360e056059b0c8ed1821a0fdddc59308
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
|
|
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>
|
|
Change-Id: I9a7783bf072b2e2396f0fa1a784bcb57adb689b4
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
|
|
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>
|
|
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>
|
|
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>
|
|
To produce site for Honeycomb +
javadoc
asciidoc
To build the site:
mvn clean install site:attach-descriptor site
mvn site:stage -DstagingDirectory=/home/mmarsale/tmp/stage
Change-Id: I4246bb09ba02b74a2a9c84ee73f8dba02384fffa
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
|
|
problematic mockito-all changed to mockito-core( https://github.com/mockito/mockito/issues/324)
Translate Utils Splitted to multiple Trait Interfaces
Ipv4Translator - Logic for translation of ipv4-based data
Ipv6Translator - Logic for translation of ipv6-based data
MacTranslator - Logic for translation of mac-based data
AddressTranslator - Aggregation trait for Ipv4/Ipv6/Mac
JvppReplyConsumer - Logic for extracting replies from jvpp calls
ByteDataTranslator - any byte-based conversions
Plus some existing utility classes changed to traits
Change-Id: I342b625954223966802e65dca0fabf8456c89345
Signed-off-by: Jan Srnicek <jsrnicek@cisco.com>
|
|
Change-Id: I1bd6d6ad2e8d35322346aa658e74413ce2d889f0
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
|
|
- 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>
|
|
Change-Id: I4c27d0ad2fd1655db2237ae914361f029093084c
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
|
|
Change-Id: I27b09dc1fdf7597c8b0751d8cbf950500e03fa23
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
|