mdsal.git
9 years agoMerge "Extracted NotificationInvokerImpl to separate class."
Tom Pantelis [Tue, 14 Apr 2015 12:12:07 +0000 (12:12 +0000)]
Merge "Extracted NotificationInvokerImpl to separate class."

9 years agoMerge "Unify sal-akka-raft version"
Tom Pantelis [Tue, 14 Apr 2015 12:03:23 +0000 (12:03 +0000)]
Merge "Unify sal-akka-raft version"

9 years agoUnify sal-akka-raft version
Robert Varga [Mon, 13 Apr 2015 13:53:34 +0000 (15:53 +0200)]
Unify sal-akka-raft version

Make sure the artifact is published, so we can reuse the same version.

Change-Id: I1dd1aac1d45e1ef2f27fe232cb59218651463618
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoExtracted NotificationInvokerImpl to separate class.
Tony Tkacik [Tue, 7 Apr 2015 11:41:29 +0000 (13:41 +0200)]
Extracted NotificationInvokerImpl to separate class.

Change-Id: Ie7494e872200581ce6cf5dcae2088ab2afda3671
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
9 years agoMerge "Remove deprecation suppression"
Moiz Raja [Fri, 10 Apr 2015 16:12:02 +0000 (16:12 +0000)]
Merge "Remove deprecation suppression"

9 years agoMerge "Fixes Bug 2935"
Moiz Raja [Fri, 10 Apr 2015 15:28:23 +0000 (15:28 +0000)]
Merge "Fixes Bug 2935"

9 years agoRemove deprecation suppression
Robert Varga [Fri, 21 Nov 2014 17:04:24 +0000 (18:04 +0100)]
Remove deprecation suppression

Suppressed deprecation leads to false sense of completeness. This patch
removes suppression in tests, so we see how muchh of the code relies on
deprecated APIs.

Change-Id: I01d56f3ef4fe385806a8fbebdbe96fd6af63828c
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBUG-2967: Expose before-state from DataObjectModification
Robert Varga [Thu, 9 Apr 2015 09:32:48 +0000 (11:32 +0200)]
BUG-2967: Expose before-state from DataObjectModification

Not exposing the before-state requires users to track this state
themselves. The problem is most visible in the delete case, if
the user needs some attributes to reconstruct keys to other structures
in order to perform cleanup -- they would effectively have to retain
a InstanceIdentifier->data map to efficiently perform deletes.

Rather than forcing everyone to duplicate data, expose the before-state,
as best available. Note that applications still need to deal with the
fact that the before-state in delete can be null -- at least by issuing
a warning to the operator.

Change-Id: I72c886f384254a6808159eaee612b07083073492
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoFix DataTreeIdentifier losing type
Robert Varga [Thu, 9 Apr 2015 09:16:49 +0000 (11:16 +0200)]
Fix DataTreeIdentifier losing type

DataTreeIdentifier needs to retain the type of encapsulated
InstanceIdentifier, otherwise the users cannot really use it (or have to
suppress warnings/cast).

Change-Id: Icc7214923531f9ffeafe55b12a8ad6813d431573
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoRemove non-existant features-flow from dependencies
Thanh Ha [Thu, 9 Apr 2015 01:38:03 +0000 (21:38 -0400)]
Remove non-existant features-flow from dependencies

Change-Id: I9018abd2e4c185cdfed92b5c7040360cf03cb394
Signed-off-by: Thanh Ha <thanh.ha@linuxfoundation.org>
9 years agoMerge "BUG 2799: SPI for EventSources"
Tony Tkacik [Wed, 8 Apr 2015 19:04:09 +0000 (19:04 +0000)]
Merge "BUG 2799: SPI for EventSources"

9 years agoMerge "Add DOMDataTreeIdentifier.toString()"
Tony Tkacik [Wed, 8 Apr 2015 09:06:14 +0000 (09:06 +0000)]
Merge "Add DOMDataTreeIdentifier.toString()"

9 years agoMerge "Bug 2933: BidningDOMDataBrokerAdaper implements DataTreeChangeService"
Tom Pantelis [Tue, 7 Apr 2015 18:17:20 +0000 (18:17 +0000)]
Merge "Bug 2933: BidningDOMDataBrokerAdaper implements DataTreeChangeService"

9 years agoMerge "Bug 2933: Make DataTreeModification and Listeners type-safe"
Tom Pantelis [Tue, 7 Apr 2015 18:16:32 +0000 (18:16 +0000)]
Merge "Bug 2933: Make DataTreeModification and Listeners type-safe"

9 years agoMerge "Bug 2933: Implemented DataTreeChangeService"
Tom Pantelis [Tue, 7 Apr 2015 18:15:31 +0000 (18:15 +0000)]
Merge "Bug 2933: Implemented  DataTreeChangeService"

9 years agoBug 2933: BidningDOMDataBrokerAdaper implements DataTreeChangeService
Tony Tkacik [Wed, 1 Apr 2015 10:52:45 +0000 (12:52 +0200)]
Bug 2933: BidningDOMDataBrokerAdaper implements DataTreeChangeService

Change-Id: Ia28d8452a6c203c88c7d1e18208362cf779a7b20
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
9 years agoBug 2933: Make DataTreeModification and Listeners type-safe
Tony Tkacik [Wed, 1 Apr 2015 10:50:57 +0000 (12:50 +0200)]
Bug 2933: Make DataTreeModification and Listeners type-safe

Introduced generic to DataTreeModification, DataTreeChangeListener
and DataTreeIdentifier which captures target type from InstanceIdentifier
so users does not have to deal with casts by themselves.

Added utility walker methods to DataObjectModification, which
are possible thanks to DataTreeModification capturing target type.

Change-Id: Ia3566ae3dbe98fb118b49cc8ac8e1925fc111d8b
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
9 years agoBug 2933: Implemented DataTreeChangeService
Tony Tkacik [Wed, 1 Apr 2015 10:37:52 +0000 (12:37 +0200)]
Bug 2933: Implemented  DataTreeChangeService

DataTreeChangeService implementation is based on DOM Data Tree
change service and serves only as an adapter, which lazily
translates events and data in events as they are accessed
by user code.

This is rather different behaviour from DataChangeListener
where API contract required semi-eager deserialization
of supplied instance identifier.

Change-Id: If4954e966acc21ffec36e8cc37f95717492a1675
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
9 years agoAdd DOMDataTreeIdentifier.toString()
Robert Varga [Tue, 31 Mar 2015 14:10:33 +0000 (16:10 +0200)]
Add DOMDataTreeIdentifier.toString()

A proper toString() method is needed for debugging.

Change-Id: Iab13a38f6134aafa982fa5a9127fc5ccdd179416
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoMerge "Remove SimpleDataTreeCandidate"
Tony Tkacik [Thu, 2 Apr 2015 20:46:28 +0000 (20:46 +0000)]
Merge "Remove SimpleDataTreeCandidate"

9 years agoFixes Bug 2935
Abhishek Kumar [Wed, 1 Apr 2015 19:01:08 +0000 (12:01 -0700)]
Fixes Bug 2935

Details for the issue is documented here:
https://bugs.opendaylight.org/show_bug.cgi?id=2935

This patch updates mapException implementation to
appropriately handle exceptions.

Change-Id: I104ea62453517e2c6a74955f6b3cce342274a9e5
Signed-off-by: Abhishek Kumar <abhishk2@cisco.com>
9 years agoBUG 2799: SPI for EventSources
Marian Adamjak [Thu, 26 Mar 2015 11:07:33 +0000 (12:07 +0100)]
BUG 2799: SPI for EventSources

Introduced SPI for Event Sources

 - created separate messagebus-spi module
 - moved Netconf Event Source implementation
   to separate package

Change-Id: I13d55f803a80c655c71137414265041d99b11aa0
Signed-off-by: Marian Adamjak <madamjak@cisco.com>
9 years agoMerge "Add ForwardingDOMStoreThreePhaseCommitCohort"
Tom Pantelis [Thu, 2 Apr 2015 11:26:41 +0000 (11:26 +0000)]
Merge "Add ForwardingDOMStoreThreePhaseCommitCohort"

9 years agoAdd ForwardingDOMStoreThreePhaseCommitCohort
Robert Varga [Wed, 1 Apr 2015 10:16:27 +0000 (12:16 +0200)]
Add ForwardingDOMStoreThreePhaseCommitCohort

This class is useful for decorator pattern, so publish it as a beta SPI.

Change-Id: I69707067da4935d68ca41ed7ad1764d5ddf9812e
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoMove AbstractDOMStoreTransaction into SPI
Robert Varga [Wed, 1 Apr 2015 09:56:55 +0000 (11:56 +0200)]
Move AbstractDOMStoreTransaction into SPI

It is a useful base for DOMStoreTransaction implementations, with some
debugging capabilities. Publish it as a beta SPI.

Change-Id: Iea3551720b2a8df7c268ce003147fc3a734f3871
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoRemove SimpleDataTreeCandidate
Robert Varga [Tue, 31 Mar 2015 09:12:53 +0000 (11:12 +0200)]
Remove SimpleDataTreeCandidate

yangtools already exposes a utility class which does the same thing, so
let's use DefaultDataTreeCandidate instead.

Change-Id: Id8a6d6c0a5b817e4c3f5cdbb3bfdadcd596c0030
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoMerge "Tune NotificationRouter wait strategy"
Tony Tkacik [Tue, 31 Mar 2015 08:01:00 +0000 (08:01 +0000)]
Merge "Tune NotificationRouter wait strategy"

9 years agoMerge "Export BindingNormalizedNodeSerializer via Config Subsystem."
Ed Warnicke [Mon, 30 Mar 2015 17:39:42 +0000 (17:39 +0000)]
Merge "Export BindingNormalizedNodeSerializer via Config Subsystem."

9 years agoExport BindingNormalizedNodeSerializer via Config Subsystem.
Tony Tkacik [Mon, 30 Mar 2015 14:51:19 +0000 (16:51 +0200)]
Export BindingNormalizedNodeSerializer via Config Subsystem.

Change-Id: I2cabdc89b01739ef2ffdbedeff9b11038e0fa41f
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
9 years agoTune NotificationRouter wait strategy
Robert Varga [Mon, 30 Mar 2015 13:59:54 +0000 (15:59 +0200)]
Tune NotificationRouter wait strategy

CPU traces show we are seeing NotificationRouter spin for more work even
when there are no notifications being generated. Change the strategy so
we end up block the thread after a period of spinning/yielding. The
default spin period is set to 1ms, followed by 30ms of yielding,
followed by a block.

This should provide reasonable throughput on notification-heavy
workloads as well as not waste a lot of CPU when there are no
notifications.

Change-Id: Ia1de5ff2616392609a0868b9b8ba3bce15baa105
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoMerge "BUG-2383: make DOMDataBrokers implement DOMDataTreeChangeService"
Tony Tkacik [Thu, 19 Mar 2015 22:06:47 +0000 (22:06 +0000)]
Merge "BUG-2383: make DOMDataBrokers implement DOMDataTreeChangeService"

9 years agoBUG-2383: make DOMDataBrokers implement DOMDataTreeChangeService
Robert Varga [Thu, 19 Mar 2015 13:16:48 +0000 (14:16 +0100)]
BUG-2383: make DOMDataBrokers implement DOMDataTreeChangeService

With the datastore support in place, we can now expose the optional
functionality. In order to do so compatibly, we introduce an
experimental API to get access to optional backend features.

Change-Id: I22bf68bd95d98d3c53ee7401442e4812d3615334
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoMerge "Optimize ResolveDataChangeEventsTask object allocation"
Tony Tkacik [Thu, 19 Mar 2015 21:13:09 +0000 (21:13 +0000)]
Merge "Optimize ResolveDataChangeEventsTask object allocation"

9 years agoBUG 2412 - Remove CompositeNode from sal-dom-*
Jan Hajnar [Mon, 16 Mar 2015 11:00:21 +0000 (12:00 +0100)]
BUG 2412 - Remove CompositeNode from sal-dom-*

* removed CompositeNodes from sal-dom-broker
* removed deprecated services from sal-dom-broker
* removed deprecated services from sal-dom-api
* removed deprecated api calls from sal-binding-broker tests and
sal-dom-spi

Change-Id: Iae44e5c0acd0ad602bf98b9961fcd808657ac07b
Signed-off-by: Jan Hajnar <jhajnar@cisco.com>
9 years agoBug 868: Removed use of CompositeNode Binding Codecs.
Tony Tkacik [Thu, 19 Mar 2015 14:25:34 +0000 (15:25 +0100)]
Bug 868: Removed use of CompositeNode Binding Codecs.

Change-Id: Iaaf22bd8bc788f26814e06873b483bf0424ceaf2
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
9 years agoMerge "BUG 2799: Migration of Message Bus from deprecated Helium MD-SAL APIs to Lithi...
Tony Tkacik [Thu, 19 Mar 2015 15:54:25 +0000 (15:54 +0000)]
Merge "BUG 2799: Migration of Message Bus from deprecated Helium MD-SAL APIs to Lithium API (copyrights corrected)"

9 years agoMerge "Renamed Binding DOM Adapters to share same naming convention."
Ed Warnicke [Thu, 19 Mar 2015 15:31:32 +0000 (15:31 +0000)]
Merge "Renamed Binding DOM Adapters to share same naming convention."

9 years agoMerge "Bug 868: Binding MD-SAL exports new codec factory."
Ed Warnicke [Thu, 19 Mar 2015 15:02:00 +0000 (15:02 +0000)]
Merge "Bug 868: Binding MD-SAL exports new codec factory."

9 years agoMerge "BUG-2673: deprecate ListenerNode,Tree and Walker"
Tony Tkacik [Thu, 19 Mar 2015 14:34:55 +0000 (14:34 +0000)]
Merge "BUG-2673: deprecate ListenerNode,Tree and Walker"

9 years agoOptimize ResolveDataChangeEventsTask object allocation
Robert Varga [Thu, 19 Mar 2015 11:58:48 +0000 (12:58 +0100)]
Optimize ResolveDataChangeEventsTask object allocation

ResolveDataChangeEventsTask queried before/afterData methods multiple
times. The default implementation in yangtools instantiates an object on
each call, which leads to sub-optimal performance. Cache the returned
object and use it locally, which actually makes the code more readable.

As a further change, perform the same caching with modification type, as
that may end up being computed on access.

Change-Id: I43aa4824c1a5788060035cd419400d86b0116de7
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoRenamed Binding DOM Adapters to share same naming convention.
Tony Tkacik [Wed, 18 Mar 2015 14:26:04 +0000 (15:26 +0100)]
Renamed Binding DOM Adapters to share same naming convention.

Renamed Forwarded* classes to BindingDOM*Adapter which
better describes what implementations are doing.

These are implementation classes and are not part of public
API contract outside of sal-binding-broker-impl, so this
should not affect any users.

Change-Id: I1c3b5f275daa38c82215ca3ba8b8170990e9ac43
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
9 years agoBug 868: Binding MD-SAL exports new codec factory.
Tony Tkacik [Wed, 18 Mar 2015 14:21:09 +0000 (15:21 +0100)]
Bug 868: Binding MD-SAL exports new codec factory.

Migrated MD-SAL to export BindingCodecTreeFactory,
which provides access to new codecs, which allows
us to migrate users without need to change initial
configuration.

Change-Id: Icb741dd73e3b22f64f5f538236d36a99e9c05b4e
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
9 years agoBUG-2673: deprecate ListenerNode,Tree and Walker
Robert Varga [Mon, 16 Mar 2015 18:42:26 +0000 (19:42 +0100)]
BUG-2673: deprecate ListenerNode,Tree and Walker

All of these have been superseded by RegistrationTree and related
classes. Those should offer better performance due to not instantiating
intermediate Optional nodes when searching for nodes.

Change-Id: I1e16bcb045ca5c97ca7f245e44d94d133bbf4eac
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBUG 2799: Migration of Message Bus from deprecated Helium MD-SAL APIs
Igor Bartak [Wed, 18 Mar 2015 17:00:13 +0000 (18:00 +0100)]
BUG 2799: Migration of Message Bus from deprecated Helium MD-SAL APIs
to Lithium API (copyrights corrected)

Change-Id: I2206b4b532e4feead26c166b793966b077f0f26f
Signed-off-by: Igor Bartak <ibartak@cisco.com>
9 years agoBug 868: Introduced DOM ForwardingSession utility classes.
Tony Tkacik [Tue, 17 Mar 2015 14:58:37 +0000 (15:58 +0100)]
Bug 868: Introduced DOM ForwardingSession utility classes.

Introduced DOM ForwardingSession abstract classes,
in order to migrate AAA from CompositeNode interfaces,
since they were using it only to forward calls to backing
implementation.

Change-Id: If5ed1a5dadc02c0d7433fd9652a4af9b586a9be7
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
9 years agoMerge "BUG-2673: make IMDS implement DOMStoreTreeChangePublisher"
Tony Tkacik [Tue, 17 Mar 2015 11:30:27 +0000 (11:30 +0000)]
Merge "BUG-2673: make IMDS implement DOMStoreTreeChangePublisher"

9 years agoMerge "BUG-2673: Introduce AbstractDOMStoreTreeChangePublisher"
Tony Tkacik [Tue, 17 Mar 2015 11:28:27 +0000 (11:28 +0000)]
Merge "BUG-2673: Introduce AbstractDOMStoreTreeChangePublisher"

9 years agoMerge "BUG-2673: Create AbstractRegistrationTree and related classes"
Tony Tkacik [Tue, 17 Mar 2015 11:27:43 +0000 (11:27 +0000)]
Merge "BUG-2673: Create AbstractRegistrationTree and related classes"

9 years agoBUG-2673: make IMDS implement DOMStoreTreeChangePublisher
Robert Varga [Mon, 16 Mar 2015 17:54:39 +0000 (18:54 +0100)]
BUG-2673: make IMDS implement DOMStoreTreeChangePublisher

This patch makes use of the AbstractDOMStoreTreeChangePublisher to do all
the registration wrangling and forwards all notifications towards a
dedicated publisher. Notifications are offloaded to the background
executor, just as normal DataChangeNotifications are. This initial
implementation does not close the registration listener race also
present in the data change notifications, as the notification manager
lacks the APIs to do that.

Change-Id: I36220b52a7a67df1f340b2b8bf32918de025920b
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBUG-2673: Introduce AbstractDOMStoreTreeChangePublisher
Robert Varga [Mon, 16 Mar 2015 12:21:24 +0000 (13:21 +0100)]
BUG-2673: Introduce AbstractDOMStoreTreeChangePublisher

This is a base class, reusable for various DOMStore implementations,
which want to implement the DOMStoreTreeChangePublisher interface.

Change-Id: I77f2488f3b99d9e9e34c97772df5a157c245f8c7
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBUG-2673: Create AbstractRegistrationTree and related classes
Robert Varga [Mon, 16 Mar 2015 09:41:44 +0000 (10:41 +0100)]
BUG-2673: Create AbstractRegistrationTree and related classes

This is a generalization of ListenerTree, useful for reusing the
infrastructure for multiple types of registrations.

Change-Id: I715b876d932d0a14ab9a479b1f1d39509a67e30b
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoMerge "Quick fix nullable RPC input"
Tony Tkacik [Thu, 12 Mar 2015 11:04:09 +0000 (11:04 +0000)]
Merge "Quick fix nullable RPC input"

9 years agoMerge "Remove duplicate dependency declarations"
Tony Tkacik [Wed, 11 Mar 2015 19:27:13 +0000 (19:27 +0000)]
Merge "Remove duplicate dependency declarations"

9 years agoQuick fix nullable RPC input
Vaclav Demcak [Wed, 11 Mar 2015 15:06:10 +0000 (16:06 +0100)]
Quick fix nullable RPC input

* DOMRpcService is declaring a method invokeRpc like
invokeRpc(@Nonnull SchemaPath type, @Nullable NormalizedNode<?, ?> input)

* add check to null for input in BindingRpcImplementationAdapter and
BindingDOMRpcImplementationAdapter because they are trying to deserialze
input automaticly withou any null check before. It produces next exception
for nopayload rpc:

at com.google.common.base.Preconditions.checkState(Preconditions.java:158)
at org.opendaylight.yangtools.binding.data.codec.impl.ContainerNodeCodecContext
.dataFromNormalizedNode(ContainerNodeCodecContext.java:23)
at org.opendaylight.yangtools.binding.data.codec.impl.BindingNormalizedNodeCodecRegistry
.fromNormalizedNodeRpcData(BindingNormalizedNodeCodecRegistry.java:197)
at org.opendaylight.controller.md.sal.binding.impl.BindingRpcImplementationAdapter
.deserilialize(BindingRpcImplementationAdapter.java:79)
at org.opendaylight.controller.md.sal.binding.impl.BindingRpcImplementationAdapter
.invokeRpc(BindingRpcImplementationAdapter.java:69)

Change-Id: I3970564b9645473eee6c01ab1ea632f323de959a
Signed-off-by: Vaclav Demcak <vdemcak@cisco.com>
9 years agoBUG-1513: migrate users to ChoiceSchemaNode
Robert Varga [Wed, 11 Mar 2015 09:59:11 +0000 (10:59 +0100)]
BUG-1513: migrate users to ChoiceSchemaNode

This migrates all users to the new interface name, cleaning them up as
the data.api and model.api name clash is resolved.

Change-Id: Ibdc317d5ff86c6a895cccdacf6dfea1fb005d9b6
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoRemove duplicate dependency declarations
Robert Varga [Tue, 10 Mar 2015 08:52:48 +0000 (09:52 +0100)]
Remove duplicate dependency declarations

These are declared twice, producing a maven warning. Remove duplicities.

Change-Id: Ica73b9220c5815e45591cd1d4a7600b432adee5d
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoMerge "Bug 2412: Expose Mountpoints on proper path"
Tony Tkacik [Wed, 11 Mar 2015 06:13:38 +0000 (06:13 +0000)]
Merge "Bug 2412: Expose Mountpoints on proper path"

9 years agoMerge "Bug 2364: Migrated Binding MD-SAL to not use composites nodes"
Tony Tkacik [Wed, 11 Mar 2015 06:12:48 +0000 (06:12 +0000)]
Merge "Bug 2364: Migrated Binding MD-SAL to not use composites nodes"

9 years agoBug 2412: Expose Mountpoints on proper path
Maros Marsalek [Tue, 10 Mar 2015 16:14:08 +0000 (17:14 +0100)]
Bug 2412: Expose Mountpoints on proper path

Lists such as topology, node were not doubled
in the YANG Instance Identifier used as a key for mountpoints,
which prevented Binding compontents from accessing
them.

This patch fixes also bug in restconf, which was
also producing incorrect instance identifiers.

Change-Id: I3122163d00d4c23fcccc4bbffdf3d0113744c98d
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
9 years agoBug 2364: Migrated Binding MD-SAL to not use composites nodes
Tony Tkacik [Sun, 8 Mar 2015 15:30:27 +0000 (16:30 +0100)]
Bug 2364: Migrated Binding MD-SAL to not use composites nodes

Bidning MD-SAL is fully migrated to be adapter on top
of NormalizedNode MD-SAL. This migration once all legacy
classes are removed will provide easier-to-read more
maintanable code of Binding MD-SAL.

Change-Id: I1df6cda4bd6035ac5e01e1285f8aab4201dcc86d
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
9 years agoMigrate users of AnyXml node to DOMSource
Maros Marsalek [Fri, 6 Mar 2015 13:37:57 +0000 (14:37 +0100)]
Migrate users of AnyXml node to DOMSource

AnyXml node used to wrap Node<?> but now wraps a DOMSource

Change-Id: If4f5845e5a0611d5fe38951dd6afe73d0a6f95bc
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
9 years agoBug 2578 - Added Binding Adapters for new Notification Broker
Jan Hajnar [Tue, 17 Feb 2015 15:47:54 +0000 (16:47 +0100)]
Bug 2578 - Added Binding Adapters for new Notification Broker

Implement and integrate Binding to DOM Notification adapters

* implemented forwarded notification broker
* added simple test for forwarded notification broker
* added configuration of new modules and services to md-sal config

Change-Id: I259c971f0dc61bc1b00cbaad2956c3d8b37ff780
Signed-off-by: Jan Hajnar <jhajnar@cisco.com>
9 years agoMerge changes Ida315250,I90171a8b
Tony Tkacik [Wed, 4 Mar 2015 09:17:20 +0000 (09:17 +0000)]
Merge changes Ida315250,I90171a8b

* changes:
  BUG-2637: migration final - cleanup
  BUG-2637: migration consequence - fix unit test

9 years agoBUG-2637: migration consequence - fix unit test
Michal Rehak [Tue, 3 Mar 2015 13:08:01 +0000 (14:08 +0100)]
BUG-2637: migration consequence - fix unit test

 - fixed unit test in sal-binding-broker
 - temporary fix of toaster-it

Change-Id: I90171a8b1d15cde70946a95c8246f34f0e255f35
Signed-off-by: Michal Rehak <mirehak@cisco.com>
9 years agoMerge "Exception when creating new DOMNotificationRouter"
Tony Tkacik [Tue, 3 Mar 2015 09:16:38 +0000 (09:16 +0000)]
Merge "Exception when creating new DOMNotificationRouter"

9 years agoException when creating new DOMNotificationRouter
Jan Hajnar [Thu, 26 Feb 2015 13:49:41 +0000 (14:49 +0100)]
Exception when creating new DOMNotificationRouter

* method after(eventHandler) was called on EventHandler that was not started.
* added missing disruptor.handleEventsWith() call before handler chaining
setup

documentation for 'after()' method:
https://lmax-exchange.github.io/disruptor/docs/index.html
class Disruptor, method after()

Change-Id: Icb5390114000d3f1bf1ea4096263ded633d9f123
Signed-off-by: Jan Hajnar <jhajnar@cisco.com>
9 years agoFix a race in PingPong transaction scheduling
Robert Varga [Mon, 23 Feb 2015 22:56:38 +0000 (23:56 +0100)]
Fix a race in PingPong transaction scheduling

We have failed to re-check inflighTx after taking the lock, which meant
that completion and readiness may have raced resulting in warnings about
transaction being submitted while there are others in-flight.

Fix also the shutdown case, which could trigger an unexpected warnings
if there is an inflight transaction.

Change-Id: Ie3a3845335754860a831070d5a73dbc9a4d67d3c
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoMerge "Sharded implementation of DOMDataTreeService"
Tony Tkacik [Tue, 24 Feb 2015 09:36:11 +0000 (09:36 +0000)]
Merge "Sharded implementation of DOMDataTreeService"

9 years agoSharded implementation of DOMDataTreeService
Robert Varga [Thu, 12 Feb 2015 14:09:54 +0000 (15:09 +0100)]
Sharded implementation of DOMDataTreeService

This patch adds a simplistic implementation of a DOMDataTreeService and
a DOMDataTreeShardingService.

Change-Id: Ibb76c99d0fa842b1034a2b747c4ec57816f99c7d
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoMerge "Make DOMDataTreeIdentifier implement Comparable"
Tony Tkacik [Tue, 24 Feb 2015 08:27:55 +0000 (08:27 +0000)]
Merge "Make DOMDataTreeIdentifier implement Comparable"

9 years agoMerge "Pass down a collection of cohorts"
Tony Tkacik [Tue, 24 Feb 2015 08:27:33 +0000 (08:27 +0000)]
Merge "Pass down a collection of cohorts"

9 years agoMake DOMDataTreeIdentifier implement Comparable
Robert Varga [Mon, 23 Feb 2015 21:45:52 +0000 (22:45 +0100)]
Make DOMDataTreeIdentifier implement Comparable

We can easily define total ordering on this class, which is useful for
maintaining order so that we can find the longest-prefix match easily by
iterating over the keys in the natural ordering.

Change-Id: Ie2f83ea494fe278df4acc1cb6059dae440ef8f37
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoPass down a collection of cohorts
Robert Varga [Mon, 23 Feb 2015 17:30:31 +0000 (18:30 +0100)]
Pass down a collection of cohorts

Rather than using an iterable, use a Collection. This saves a bit of
code and makes the size available wherever the collection goes.

Change-Id: I7ab9fa594676c221c8a4a0b3e227625af462c338
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoMerge "Bug 2673: Binding cursor-based data change API"
Ed Warnicke [Mon, 23 Feb 2015 18:42:41 +0000 (18:42 +0000)]
Merge "Bug 2673: Binding cursor-based data change API"

9 years agoMerge "DOMDataTree APIs"
Tony Tkacik [Mon, 23 Feb 2015 11:12:25 +0000 (11:12 +0000)]
Merge "DOMDataTree APIs"

9 years agoMerge "Migrate deprecated guava methods"
Tony Tkacik [Mon, 23 Feb 2015 10:43:45 +0000 (10:43 +0000)]
Merge "Migrate deprecated guava methods"

9 years agoDOMDataTree APIs
Robert Varga [Thu, 5 Feb 2015 17:30:28 +0000 (18:30 +0100)]
DOMDataTree APIs

This patch introduces the end-user visible API model for interacting
with the conceptual data tree. Unlike our previous APIs, these revolve
around applications explicitly binding their inputs (former data change
listeners) and outputs (former explicit writes). This allows efficient
inter-datastore interactions to be maintained by understanding what
sort of output applications make and what sort of indexes are required
to feed them the data they require. Beryllium evolution will see the
DOMDataTreeListener being subscribed to an XQuery expression, thus
providing a dense definition of what data the applciation actually
extracts out of the subtree.

Change-Id: I11446ce7f8dbd7cf61540f72e463460b483ff15f
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoMerge "Revert "BUG-2637: migrate features""
Ed Warnicke [Sat, 21 Feb 2015 05:09:23 +0000 (05:09 +0000)]
Merge "Revert "BUG-2637: migrate features""

9 years agoRevert "BUG-2637: migrate features"
Ed Warnicke [Sat, 21 Feb 2015 04:34:14 +0000 (04:34 +0000)]
Revert "BUG-2637: migrate features"

This reverts commit 300d247c3c68387bf0bed3fc9dd90558ebe01f3f.

300d247c3c68387bf0bed3fc9dd90558ebe01f3f broke because the flow-features were not migrated properly to openflowplugin.

Change-Id: I6502a93b10b4c5ee41d037da216092cdf003d17f
Signed-off-by: Ed Warnicke <eaw@cisco.com>
9 years agoMerge "BUG-2637: migrate features"
Anil Vishnoi [Fri, 20 Feb 2015 20:01:18 +0000 (20:01 +0000)]
Merge "BUG-2637: migrate features"

9 years agoBUG-2637: migrate features
Michal Rehak [Fri, 23 Jan 2015 21:12:26 +0000 (22:12 +0100)]
BUG-2637: migrate features

 - remove migrated features
 - integration test fix:
   - commented out dependencies to models affected by migration
   - adapted sal-binding-it in order not to push those models
     into pax-exam context
   - adapted sal-binding-broker-impl to use those models only in
     test scope
 - cleaned commented code/config

Change-Id: I8e09a7cd9ff9ba0f041abe1bf739be755aed3e8d
Signed-off-by: Michal Rehak <mirehak@cisco.com>
9 years agoMerge "Bug 2538: Remove redundant Augmentation checks and tests"
Tom Pantelis [Thu, 19 Feb 2015 20:57:45 +0000 (20:57 +0000)]
Merge "Bug 2538: Remove redundant Augmentation checks and tests"

9 years agoMerge "Bug 2682 - Switch sal-binding-dom-it to sal-test-model"
Tony Tkacik [Thu, 19 Feb 2015 17:09:32 +0000 (17:09 +0000)]
Merge "Bug 2682 - Switch sal-binding-dom-it to sal-test-model"

9 years agoBug 2682 - Switch sal-binding-dom-it to sal-test-model
Michal Rehak [Thu, 19 Feb 2015 12:39:06 +0000 (13:39 +0100)]
Bug 2682 - Switch sal-binding-dom-it to sal-test-model

* Migration to sal-test-model

Change-Id: If46014ec4cc8b3311a7766bcb2cb9a61b9e71592
Signed-off-by: Jan Hajnar <jhajnar@cisco.com>
Signed-off-by: Martin Bobak <mbobak@cisco.com>
Signed-off-by: Michal Rehak <mirehak@cisco.com>
9 years agoMigrate deprecated guava methods
Robert Varga [Thu, 19 Feb 2015 10:16:54 +0000 (11:16 +0100)]
Migrate deprecated guava methods

sameThreadExecutor() has been deprecated, use its replacement instead.

Change-Id: Icf1fed34977bd64393f48fe9e9829bee7f7db846
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoMerge "Initial message bus implementation"
Tony Tkacik [Thu, 19 Feb 2015 08:15:32 +0000 (08:15 +0000)]
Merge "Initial message bus implementation"

9 years agoInitial message bus implementation
Robert Varga [Sat, 7 Feb 2015 21:55:46 +0000 (22:55 +0100)]
Initial message bus implementation

This patch follows up on the API definition and builds a simple
implementation.

Change-Id: Ic128538a02d71a40ea44efe53f3c4b4503c068ac
Signed-off-by: Robert Gallas <rgallas@cisco.com>
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoMerge "BUG-2573: mark CompositeNode-based RPC APIs obsolete"
Tony Tkacik [Wed, 18 Feb 2015 09:31:01 +0000 (09:31 +0000)]
Merge "BUG-2573: mark CompositeNode-based RPC APIs obsolete"

9 years agoMigrate to MoreObjects.ToStringHelper
Robert Varga [Mon, 16 Feb 2015 08:46:53 +0000 (09:46 +0100)]
Migrate to MoreObjects.ToStringHelper

Objects.ToStringHelper has been deprecated and moved to MoreObjects.
Adjust to this change.

Change-Id: Ibcaaebfe8e2cbbd77e624a53fc153d857b373a81
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBug 2673: Binding cursor-based data change API
Tony Tkacik [Mon, 16 Feb 2015 13:50:42 +0000 (14:50 +0100)]
Bug 2673: Binding cursor-based data change API

Introduced Binding cursor-based data change API,
which provides more low-level access to change events,
but allows for more effective processing of
data change events.

Change-Id: I6193a4175fef85045a71cf9363bd46ba6297248c
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
9 years agoBUG-2573: mark CompositeNode-based RPC APIs obsolete
Robert Varga [Mon, 2 Feb 2015 17:36:30 +0000 (18:36 +0100)]
BUG-2573: mark CompositeNode-based RPC APIs obsolete

With the advent of the NormalizedNode-based APIs, the users should be
moving towards implementation of those.

This is a placeholder, to be merged once a reference implementation is
available.

Change-Id: I7e321861d5100554dfde30c31ed47e585573be0a
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoMerge "BUG-2573: create DOMRpcRouter"
Tony Tkacik [Fri, 13 Feb 2015 09:30:12 +0000 (09:30 +0000)]
Merge "BUG-2573: create DOMRpcRouter"

9 years agoMerge "BUG-2573: add NormalizedNode-based RPC API"
Tony Tkacik [Fri, 13 Feb 2015 09:16:37 +0000 (09:16 +0000)]
Merge "BUG-2573: add NormalizedNode-based RPC API"

9 years agoMerge "BUG-2673: Introduced new more low-level DOM Data Change APIs"
Tony Tkacik [Thu, 12 Feb 2015 17:14:31 +0000 (17:14 +0000)]
Merge "BUG-2673: Introduced new more low-level DOM Data Change APIs"

9 years agoMerge "BUG-1511 - Datastore: cleanup ListenerTreeAPI"
Tony Tkacik [Thu, 12 Feb 2015 16:53:24 +0000 (16:53 +0000)]
Merge "BUG-1511 - Datastore: cleanup ListenerTreeAPI"

9 years agoBUG-1511 - Datastore: cleanup ListenerTreeAPI
Robert Varga [Thu, 21 Aug 2014 12:54:37 +0000 (14:54 +0200)]
BUG-1511 - Datastore: cleanup ListenerTreeAPI

- split ListenerTree two static inner classes to ListenerWalker and ListenerNode
- fix refences [ResolvedDataChangeState]
- improve performance of ListenerWalker.close()

Change-Id: Ide82bc6caeaca1aa5c9080f134d570cf7a1571d6
Signed-off-by: Vaclav Demcak <vdemcak@cisco.com>
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBUG-2673: Introduced new more low-level DOM Data Change APIs
Robert Varga [Tue, 27 Jan 2015 14:05:38 +0000 (15:05 +0100)]
BUG-2673: Introduced new more low-level DOM Data Change APIs

As it turned out abstraction provided by Helium Data Change
API was CPU costly and calculated lot of unnecessary data,
and did not provide necessary navigation for some use-cases.

This new API contract defines more low-level data change
APIs, where application is more in control, how it will
process / consume / decompose Data Change by providing
DataTreeCandidate.

Change-Id: I468c9583c7999bc02101a18a8adf5dc1a084f1d9
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBug 2538: Remove redundant Augmentation checks and tests
Kiran Sreenivasa [Mon, 26 Jan 2015 22:08:36 +0000 (14:08 -0800)]
Bug 2538: Remove redundant Augmentation checks and tests

Change-Id: Ifa19661df9d3ba9cc8b93e0203bb760b792d8689
Signed-off-by: Kiran Sreenivasa <kkoushik@brocade.com>
9 years agoMerge "Fix missing log argument"
Tony Tkacik [Tue, 10 Feb 2015 21:06:08 +0000 (21:06 +0000)]
Merge "Fix missing log argument"

9 years agoMerge "BUG-2288: implement DOMNotificationRouter"
Tony Tkacik [Tue, 10 Feb 2015 21:01:02 +0000 (21:01 +0000)]
Merge "BUG-2288: implement DOMNotificationRouter"