controller.git
9 years agoOptimize netconf capability handling 30/9230/1
Robert Varga [Sat, 19 Jul 2014 14:53:14 +0000 (16:53 +0200)]
Optimize netconf capability handling

Inefficient splitting, forward scans and similar. This patch
optimizes it as much as possible.

Change-Id: Ibf52b3b8f512c6b4936dca3089e73bbb1671eaa7
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBUG-865: do not use InstanceIdentifier.getPath() 29/9229/1
Robert Varga [Sat, 19 Jul 2014 14:02:02 +0000 (16:02 +0200)]
BUG-865: do not use InstanceIdentifier.getPath()

InstanceIdentifier exposes the reverse path via a dedicated method, so
use that rather than home-brewing our own.

Change-Id: I3568bf8fc294e235a9f5bae8a72d6cd89079b348
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBUG 1379 - rpcs behind yang-ext:mount aren't always executed 18/9218/1
Jozef Gloncak [Tue, 22 Jul 2014 07:06:11 +0000 (09:06 +0200)]
BUG 1379 - rpcs behind yang-ext:mount aren't always executed

new corrected behavior:
If rpc is from device behing yang-ext:mount and it doesn't exist in
controller then it is ALSO executed.

Change-Id: Ieebf2522b39cd42a8da57b05cf49e528c924f7ba
Signed-off-by: Jozef Gloncak <jgloncak@cisco.com>
9 years agoBUG-692 Fix intermittent failure in NetconfDeviceTest 17/9217/1
Maros Marsalek [Tue, 22 Jul 2014 07:01:01 +0000 (09:01 +0200)]
BUG-692 Fix intermittent failure in NetconfDeviceTest

Error in NetconfDeviceTest.testNotificationBeforeSchema, verification without timeout was performed before the actual call.

Fixed by adding timeout to all verifications.

Change-Id: I494523036fff456d66398f0d17b0003fe6c083a0
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
9 years agoMerge "Flow request containing an invalid action should be rejected"
Giovanni Meo [Tue, 22 Jul 2014 06:28:34 +0000 (06:28 +0000)]
Merge "Flow request containing an invalid action should be rejected"

9 years agoBUG 1359:Fixed using option 1 12/9212/2
Vaishali Mithbaokar [Tue, 22 Jul 2014 01:41:12 +0000 (18:41 -0700)]
BUG 1359:Fixed using option 1

Change-Id: Idb744e4c1eab70ee8a3eeaaf8194f33f91aa84d4
Signed-off-by: Vaishali Mithbaokar <vmithbao@cisco.com>
9 years agoFixed unneeded wrapping of guava for karaf 13/9213/1
Ed Warnicke [Tue, 22 Jul 2014 02:08:58 +0000 (21:08 -0500)]
Fixed unneeded wrapping of guava for karaf

Change-Id: I69f8dc8dac9ec3c6b2aaa750e52d25d1539bb15e
Signed-off-by: Ed Warnicke <eaw@cisco.com>
9 years agoMade config/mdsal/netconf features non-cyclic 11/9211/1
Ed Warnicke [Tue, 22 Jul 2014 01:14:13 +0000 (20:14 -0500)]
Made config/mdsal/netconf features non-cyclic

We previously had some cross dependency between config-features and
netconf-features.  This is highly undesirable because it
precludes folks being able to simply have a maven dependency for the
one feature they want and requires enumerating *all* the feature
files.

This fixes that by pulling out

features/config-netty
features/config-persister
from
features/config

So the dependency graph is now non-cyclic:

config-netty -> config-persister
config-persister -> (netconf,config)
netconf -> (config,protocol-framework)

Change-Id: Ie662df40bd6985e2ecd4280596ddafc947e5edd0
Signed-off-by: Ed Warnicke <eaw@cisco.com>
9 years agoUpdated remote rpc code after integration tests. Rpc execution is failing because... 68/8768/7
Harman Singh [Tue, 8 Jul 2014 00:11:22 +0000 (17:11 -0700)]
Updated remote rpc code after integration tests. Rpc execution is failing because of one existing defect

Change-Id: Ic51bba7088371b4428624da9744e0563abdc4a95
Signed-off-by: Harman Singh <harmasin@cisco.com>
9 years agoMerge "Change put/merge methods to be type-safe in WriteTransaction"
Devin Avery [Mon, 21 Jul 2014 14:16:31 +0000 (14:16 +0000)]
Merge "Change put/merge methods to be type-safe in WriteTransaction"

9 years agoChange put/merge methods to be type-safe in WriteTransaction 98/9098/4
tpantelis [Sat, 12 Jul 2014 10:53:46 +0000 (06:53 -0400)]
Change put/merge methods to be type-safe in WriteTransaction

Removed declaration of put/merge methods from the common
AsyncWriteTransaction interface.

Defined put/merge methods in the derived Binding and DOM interfaces.
The Binding methods were made type-safe.

Javadoc usage/examples for the methods was put into the
AsyncWriteTransaction class docs and is linked to by the derived
interfaces.

This change is source-code compatible - no client code needs to change
(unless a client actually is incompatible path and data).

Change-Id: I779f6477f1c98e299c5d559043da612be97bfbe6
Signed-off-by: tpantelis <tpanteli@brocade.com>
9 years agoBug 1352: Added regression test to InMemory Data Store. 34/8934/2
Tony Tkacik [Fri, 11 Jul 2014 09:33:51 +0000 (11:33 +0200)]
Bug 1352: Added regression test to InMemory Data Store.

Change-Id: Ia3a4e332c275d6dfdf9dafd2dfc433de15dbcb6f
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
9 years agoFixed incorrect XML test suites & Usage of removed API 97/9197/4
Tony Tkacik [Mon, 21 Jul 2014 11:48:03 +0000 (13:48 +0200)]
Fixed incorrect XML test suites & Usage of removed API

Change in underlying YANG Tools codec, unvereded
that there were test-suites which did string
comparison for testing of XML responses and
any change in XML serialization (valid from
XML point-of-view) triggered this tests to
fail.

Reworked offending tests to use XML W3C Document
for testing instead of string comparison and regexes.

Change-Id: Ib6e35e8d2fe79275666235370d1dda461277a59f
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
9 years agoMerge "BUG 1387 - degrade log output from info to debug"
Tony Tkacik [Mon, 21 Jul 2014 09:40:53 +0000 (09:40 +0000)]
Merge "BUG 1387 - degrade log output from info to debug"

9 years agoMerge "Bug 1362: New AsyncWriteTransaction#submit method"
Tony Tkacik [Mon, 21 Jul 2014 09:11:50 +0000 (09:11 +0000)]
Merge "Bug 1362: New AsyncWriteTransaction#submit method"

9 years agoBUG 1387 - degrade log output from info to debug 90/9190/1
Jozef Gloncak [Mon, 21 Jul 2014 08:48:29 +0000 (10:48 +0200)]
BUG 1387 - degrade log output from info to debug

Change-Id: Ia98ab154bb53cc3c43f42270a3bd6c65bd9dee65
Signed-off-by: Jozef Gloncak <jgloncak@cisco.com>
9 years agoMerge "Bug 1239 - Clean up and refactor netconf-ssh client"
Tony Tkacik [Mon, 21 Jul 2014 08:08:41 +0000 (08:08 +0000)]
Merge "Bug 1239 - Clean up and refactor netconf-ssh client"

9 years agoRemove RaftReplicator and move hearbeat logic to the leader 53/8953/2
Moiz Raja [Fri, 11 Jul 2014 20:30:28 +0000 (13:30 -0700)]
Remove RaftReplicator and move hearbeat logic to the leader

This makes more sense. The RaftReplicator does not seem to add any value.

Change-Id: Id3cf8ecbd2493b35c1a32382d65876795a78fa30
Signed-off-by: Moiz Raja <moraja@cisco.com>
9 years agoImplement behavior common to a RaftActor in all it's states 20/8920/2
Moiz Raja [Fri, 11 Jul 2014 01:37:22 +0000 (18:37 -0700)]
Implement behavior common to a RaftActor in all it's states

The common behavior for a RaftActor is
- Change state to follower when it receives a RaftRPC with a newer term
- Increment the applied state of the commitIndex of the AppendEntries message
  is higher than it's applied state

Change-Id: I1fc0cdcb90368f3c07f555b307ac827286386651
Signed-off-by: Moiz Raja <moraja@cisco.com>
9 years agoInitial code/design for an Akka Raft implementation 08/8708/4
Moiz Raja [Mon, 7 Jul 2014 00:38:52 +0000 (17:38 -0700)]
Initial code/design for an Akka Raft implementation

Also implements the LeaderBehavior for elections

Change-Id: I629f2cd71717e5d76eae9c1a9a4dc960246070c9
Signed-off-by: Moiz Raja <moraja@cisco.com>
9 years agoFlow request containing an invalid action should be rejected 72/9172/1
maquresh [Fri, 18 Jul 2014 23:17:46 +0000 (16:17 -0700)]
Flow request containing an invalid action should be rejected

When ODL Controller receives a request to install a flow, it is processed
by FlowConfig class in forwardingrulesmanager bundle. There is method
named "validate" which validates the matches and actions specified in
the flow request. If this method encounters an invalid action, it simply
ignores it and moves to the next action. The result of this behavior is that
if flow request contains only one action and it happens to be invalid,
the FlowMod request will be sent to the switch without any action. An
OVS conforming switch will install this flow and set the action to drop.
However, ideally Controller should reject this request (or any request
containing an invalid action).

Few invalid unit test cases were also escaping due to this error, which
have been corrected.

Change-Id: I4df3226d6ec9c663476cae1991c194bc36cb2f99
Signed-off-by: maquresh <maquresh@cisco.com>
9 years agoMerge "Removed unused private implementation class"
Devin Avery [Fri, 18 Jul 2014 12:01:36 +0000 (12:01 +0000)]
Merge "Removed unused private implementation class"

9 years agoMerge "Changed read to be type-safe in ReadTransaction"
Devin Avery [Fri, 18 Jul 2014 12:00:29 +0000 (12:00 +0000)]
Merge "Changed read to be type-safe in ReadTransaction"

9 years agoMerge "BUG-1384: YangStoreServiceImpl.refresh() should never block"
Tony Tkacik [Fri, 18 Jul 2014 09:07:03 +0000 (09:07 +0000)]
Merge "BUG-1384: YangStoreServiceImpl.refresh() should never block"

9 years agoMerge "Improve RpcProviderRegistry loading"
Tony Tkacik [Fri, 18 Jul 2014 08:45:04 +0000 (08:45 +0000)]
Merge "Improve RpcProviderRegistry loading"

9 years agoMerge "BUG-692 Replace strings with ModifyAction enum"
Tony Tkacik [Fri, 18 Jul 2014 08:39:08 +0000 (08:39 +0000)]
Merge "BUG-692 Replace strings with ModifyAction enum"

9 years agoMerge "Bug-1376 Add caching for premature notifications in netconf connector"
Tony Tkacik [Fri, 18 Jul 2014 08:38:32 +0000 (08:38 +0000)]
Merge "Bug-1376 Add caching for premature notifications in netconf connector"

9 years agoMerge "BUG-1291 Fix executor for netconf-connector rejecting tasks."
Tony Tkacik [Fri, 18 Jul 2014 07:33:48 +0000 (07:33 +0000)]
Merge "BUG-1291 Fix executor for netconf-connector rejecting tasks."

9 years agoMerge "BUG-1365 Check if channel was closed when negotiation fails"
Tony Tkacik [Fri, 18 Jul 2014 07:33:35 +0000 (07:33 +0000)]
Merge "BUG-1365 Check if channel was closed when negotiation fails"

9 years agoBUG-692 Replace strings with ModifyAction enum 80/9080/3
Maros Marsalek [Wed, 16 Jul 2014 14:35:58 +0000 (16:35 +0200)]
BUG-692 Replace strings with ModifyAction enum

Change-Id: Ie2564240eed76711437afd0428d02af26cb81cff
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
9 years agoBug-1376 Add caching for premature notifications in netconf connector 50/9050/5
Maros Marsalek [Wed, 16 Jul 2014 08:29:47 +0000 (10:29 +0200)]
Bug-1376 Add caching for premature notifications in netconf connector

If a notification is received before schema context is fully built for device, it is cached and forwarded when schema is present.

Change-Id: Ib21fc0fab9cf83a1102ccbb5c9dc98330aa95577
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
9 years agoBUG-1384: YangStoreServiceImpl.refresh() should never block 18/9118/3
Robert Varga [Thu, 17 Jul 2014 14:19:32 +0000 (16:19 +0200)]
BUG-1384: YangStoreServiceImpl.refresh() should never block

As descirbed in the bug, we are seeing large amounts of contention on
the monitor when calling refresh(). Rework the safety such that the
refresh path does not block and perform checking for refresh in the
get() path, which is forced to retry should a refresh occur.

With this patch reported contention disappears completely and startup
time is improved by about 8 seconds on stock SP edition.

Change-Id: I4c6109d77324d3d1b700041b54a95dc346e3d372
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoMerge "Added SingleThreadedExecutors to data store instance."
Devin Avery [Thu, 17 Jul 2014 14:17:35 +0000 (14:17 +0000)]
Merge "Added SingleThreadedExecutors to data store instance."

9 years agoMerge "Bug 1380 - Fix NullPointerException when match is null"
Devin Avery [Thu, 17 Jul 2014 14:12:46 +0000 (14:12 +0000)]
Merge "Bug 1380 - Fix NullPointerException when match is null"

9 years agoBUG-1291 Fix executor for netconf-connector rejecting tasks. 49/9049/4
Maros Marsalek [Wed, 16 Jul 2014 08:27:53 +0000 (10:27 +0200)]
BUG-1291 Fix executor for netconf-connector rejecting tasks.

Flexible threadpool rejected tasks with SynchronousQueue and did not spawn threads with LinkedBlockingQueue.
Added custom Queue that makes the underlying threadpool to spawn threads as expected.

Change-Id: I28d27316cf63b3370aa802bbd31ee976aa54fbf7
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
9 years agoMerge "Bug 1367 - Fix NPE in cors filter"
Tony Tkacik [Thu, 17 Jul 2014 08:30:08 +0000 (08:30 +0000)]
Merge "Bug 1367 - Fix NPE in cors filter"

9 years agoBUG-1365 Check if channel was closed when negotiation fails 29/9029/3
Maros Marsalek [Tue, 15 Jul 2014 13:55:34 +0000 (15:55 +0200)]
BUG-1365 Check if channel was closed when negotiation fails

Also set state only if promise is not yet finished.
Replace custom EOM aggregator with implementation provided by netty.

Change-Id: Iffb740fff1512ca14efe58ed5112f74ce5e75c97
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
9 years agoFixed to config,netconf,mdsal features files 63/8963/4
Surekha Bejgam [Thu, 10 Jul 2014 22:40:43 +0000 (17:40 -0500)]
Fixed to config,netconf,mdsal features files

This patch requires:
https://git.opendaylight.org/gerrit/#/c/8962/

Things done here (apologies for it all at once
but it was the result of a lot of experimenting):

1) Moved config/mdsal/netconf features projects under
controller/features
2) Created controller/features/pom.xml to make rebuilding
features easier
3) Created netconf features project
4) Created protocol-framework features project
5) Removed 02-clustering.xml as its no longer used.

Note: These features are intentionally done in a lean
manner... very little overinclusion involved.

State of things:
Hit a snag around karaf's new JMX RBAC.
If you do
feature:install odl-config-startup
and wait for a minute or so you will get an error like:

http://pastebin.com/8J886kK9

which looks pretty bad, but is really just telling us that
when the config subsytem went to push features to JMX,
karaf's JMX RBAC blocked us.

I've filed https://bugs.opendaylight.org/show_bug.cgi?id=1359
on this, which describes two possible solutions to the problem.

Further information for onces 1359 is resolved:

The four config files its looking to push are:
ls opendaylight-karaf/target/distribution.opendaylight-karaf-1.4.2-SNAPSHOT/configuration/initial
00-netty.xml 01-md-sal.xml 03-toaster-sample.xml

You can get the requisite capabilities for 00-netty.xml should be installed
by doing
feature:install odl-config-netty
(which depends on odl-config-startup).
For 01-md-sal.xml to be processed you will need to fix up the md-sal
features.  To get 03-toaster-sample.xml processed you will need a feature
for toaster.  I recommend deleting 01-md-sal.xml and 03-toaster-sample.xml
and just playing with 00-netty.xml till you can get past the stuck
places with JMX.

Once you *think* you are past 1359, verify by pointing
jconsole at karaf and looking at MBeans and drilling down under
org.opendaylight until you find the Modules.  You should see more
than 'shutdown' there.

Recommended Next steps:
1)  Fix bug 1359 -  picked option1 to proceed
2)  Fix up the md-sal feature at least enough to get 01-md-sal.xml
working - Done
3)  Get a controller/features/toaster going and get 03-toaster-sample.xml
working. - Toaster is working

********* Had to install in this order to get features installed correctly ********

feature:install yangtools-all

feature:install base-all

feature:install odl-mdsal-commons

feature:install odl-config-api

feature:install odl-config-netty-config-api

feature:install odl-protocol-framework

feature:install odl-netconf-api

feature:install odl-netconf-mapping-api

feature:install odl-netconf-util

feature:install odl-netconf-netty-util

feature:install odl-netconf-impl

feature:install odl-config-core

feature:install odl-config-manager

feature:install odl-config-persister

feature:install odl-config-api

feature:install odl-config-netty-api

feature:install odl-config-netty-config-api

feature:install odl-config-netty

feature:install odl-config-startup

feature:install odl-config-netconf-connector

feature:install odl-mdsal-all

feature:install odl-mdsal-toaster

feature:install yangtools-restconf

feature:install odl-adsal-all

feature:install odl-netconf-misc

feature:install odl-config-dispatcher

feature:install odl-mdsal-misc

********************************************************************

I apologize for the size and complexity of this patch.  But it seemed
important to get it out to folks.  Please feel free to break it down
into more managable pieces if you are so inclined.

Change-Id: I6384d57d4fe623221e9c81d8bfb547277ab0e051
Signed-off-by: Ed Warnicke <eaw@cisco.com>
Signed-off-by: Surekha Bejgam <sbejgam@cisco.com>
9 years agoImprove RpcProviderRegistry loading 93/9093/1
Robert Varga [Wed, 16 Jul 2014 20:22:42 +0000 (22:22 +0200)]
Improve RpcProviderRegistry loading

Profiling monitor usage at startup has shown that we spend about 19s of
CPU time over ~50 second bootup waiting in getRpcService(). Instead of a
home-grown cache, let's use a guava Loading cache, which allows us to
concurrently instantiate multiple rpc services at the same time.

Change-Id: Ieaaedd7da61cd0b03b05a44ee2a6285bc8eb46ac
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBug 1380 - Fix NullPointerException when match is null 92/9092/1
Rob Adams [Wed, 16 Jul 2014 19:18:06 +0000 (12:18 -0700)]
Bug 1380 - Fix NullPointerException when match is null

Change-Id: I728a90054642302d3157e1da4bfa7df3fb63087d
Signed-off-by: Rob Adams <readams@readams.net>
9 years agoMerge "Bug 1225: Fixed bug in registration of default RPC implementation."
Devin Avery [Wed, 16 Jul 2014 19:07:04 +0000 (19:07 +0000)]
Merge "Bug 1225: Fixed bug in registration of default RPC implementation."

9 years agoMerge "Deprecated Rpcs and RpcErrors helper classes"
Devin Avery [Wed, 16 Jul 2014 18:31:51 +0000 (18:31 +0000)]
Merge "Deprecated Rpcs and RpcErrors helper classes"

9 years agoMerge "Bug 1093: Extracted static inner classes from SchemaAwareRpcBroker."
Devin Avery [Wed, 16 Jul 2014 17:58:46 +0000 (17:58 +0000)]
Merge "Bug 1093: Extracted static inner classes from SchemaAwareRpcBroker."

9 years agoAdded SingleThreadedExecutors to data store instance. 88/9088/1
Tony Tkacik [Wed, 16 Jul 2014 17:31:44 +0000 (19:31 +0200)]
Added SingleThreadedExecutors to data store instance.

Change-Id: I18900f4db121fe7728ecd3c0aae90cbd6e83fee2
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
9 years agoMerge "Added comments to the opendaylight-inventory.yang file to help describe the...
Tom Pantelis [Wed, 16 Jul 2014 15:28:33 +0000 (15:28 +0000)]
Merge "Added comments to the opendaylight-inventory.yang file to help describe the purpose of the various fields"

9 years agoRemoved unused private implementation class 81/9081/1
Tony Tkacik [Wed, 16 Jul 2014 14:52:25 +0000 (16:52 +0200)]
Removed unused private implementation class

Change-Id: Ie17b82e8f057f8d0da40cd93229149125f668e71
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
9 years agoBug 1093: Extracted static inner classes from SchemaAwareRpcBroker. 54/9054/2
Tony Tkacik [Wed, 16 Jul 2014 10:58:21 +0000 (12:58 +0200)]
Bug 1093: Extracted static inner classes from SchemaAwareRpcBroker.

Change-Id: I68bc1d3e4a3b279877e5ece19bcc9e1bfcd0c3dc
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
9 years agoAdded comments to the opendaylight-inventory.yang file to help describe 55/8255/6
Devin Avery [Mon, 23 Jun 2014 19:14:30 +0000 (15:14 -0400)]
Added comments to the opendaylight-inventory.yang file to help describe
the purpose of the various fields

Change-Id: I1e368b94c9b0c030bb8f7d266019fdeaa97abc80
Signed-off-by: Devin Avery <devin.avery@brocade.com>
9 years agoBug 1239 - Clean up and refactor netconf-ssh client 70/9070/2
Tomas Olvecky [Thu, 26 Jun 2014 11:18:24 +0000 (13:18 +0200)]
Bug 1239 - Clean up and refactor netconf-ssh client

Remove commented and dead code in netconf-netty-util.
Move SshHandler to client package in order to make it package private.
Wrap OutputStream in SSHClientHandler with a buffer.
Remove VirtualSocketException as it was a workaround for
passing context without checking whether session was established.

Change-Id: I992d3b8ba2b2a58b69bd2e8be4ad0e4bdfa36c01
Signed-off-by: Tomas Olvecky <tolvecky@cisco.com>
9 years agoAPI Usability: Introduced type capture for Transaction Factory 62/9062/1
Tony Tkacik [Wed, 16 Jul 2014 12:22:52 +0000 (14:22 +0200)]
API Usability: Introduced type capture for Transaction Factory

Change-Id: If74733ce5464e294522abf79f9433849466a1f56
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
9 years agoBug 1225: Fixed bug in registration of default RPC implementation. 30/9030/2
Tony Tkacik [Tue, 15 Jul 2014 16:17:38 +0000 (18:17 +0200)]
Bug 1225: Fixed bug in registration of default RPC implementation.

Change-Id: I302bd0c9aa75e844864d0b7dd692c1d331a563ed
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
9 years agoMerge "Bug 1355: Fixed incorrect input keyword use in rpc"
Tony Tkacik [Wed, 16 Jul 2014 07:52:49 +0000 (07:52 +0000)]
Merge "Bug 1355: Fixed incorrect input keyword use in rpc"

9 years agoFixed class-cast when Netconf registered RPC implementations. 32/9032/1
Tony Tkacik [Tue, 15 Jul 2014 16:43:02 +0000 (18:43 +0200)]
Fixed class-cast when Netconf registered RPC implementations.

Change-Id: I0803f7ec0d23bcf195c2fbac49e916c4f30110e1
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
9 years agoBug 1355: Fixed incorrect input keyword use in rpc 18/9018/1
Lukas Sedlak [Tue, 15 Jul 2014 11:57:27 +0000 (13:57 +0200)]
Bug 1355: Fixed incorrect input keyword use in rpc

Fixed incorrect evaluation in method flattenInput in NetconfMessageTransformUtil.
Added test for testing toRpcRequest and flattenInput methods.
Added test model for test.

Change-Id: Id6938b39f0bd06b315f4820a6c1008fa371416d0
Signed-off-by: Lukas Sedlak <lsedlak@cisco.com>
9 years agoMerge "Bug 1303: BindingIndependentConnector splitted."
Tony Tkacik [Tue, 15 Jul 2014 10:35:27 +0000 (10:35 +0000)]
Merge "Bug 1303: BindingIndependentConnector splitted."

9 years agoMerge "BUG-1317 BUG-1351 Fix duplicate connections from netconf connector"
Tony Tkacik [Tue, 15 Jul 2014 09:36:11 +0000 (09:36 +0000)]
Merge "BUG-1317 BUG-1351 Fix duplicate connections from netconf connector"

9 years agoMerge "Bug 1125: Added regression test"
Tony Tkacik [Tue, 15 Jul 2014 08:56:21 +0000 (08:56 +0000)]
Merge "Bug 1125: Added regression test"

9 years agoBug 1367 - Fix NPE in cors filter 08/9008/1
Tomas Olvecky [Tue, 15 Jul 2014 08:52:21 +0000 (10:52 +0200)]
Bug 1367 - Fix NPE in cors filter

Null was returned by request.getPathInfo, correct method
that decodes relative path to resource is
request.getDecodedRequestURI .

Change-Id: I74964bea07df8fa0e9a37af0effaa2525c6b8b2c
Signed-off-by: Tomas Olvecky <tolvecky@cisco.com>
9 years agoBUG-1317 BUG-1351 Fix duplicate connections from netconf connector 94/8994/2
Maros Marsalek [Mon, 14 Jul 2014 16:04:53 +0000 (18:04 +0200)]
BUG-1317 BUG-1351 Fix duplicate connections from netconf connector

Change-Id: I2c3135f3f84ef25f0005744c03003462c96812c1
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
9 years agoBug 1178 - removed unused parameter from checkOdAction() menthod. 05/9005/1
Jan Hajnar [Mon, 14 Jul 2014 15:30:25 +0000 (17:30 +0200)]
Bug 1178 - removed unused parameter from checkOdAction() menthod.

Change-Id: I514650b7a4dac89d24f07a241b0f4c9ebe3cf237
Signed-off-by: Jan Hajnar <jhajnar@cisco.com>
9 years agoBug 1280: Added option to automaticly create parents 36/8736/3
Tony Tkacik [Wed, 23 Jul 2014 10:11:06 +0000 (12:11 +0200)]
Bug 1280: Added option to automaticly create parents

Introduced additional variation of put and merge
which allows user to specify if parents nodes
are to be created. Default behaviour is to not
create parent nodes, but users still have
explicit API for creating them if necessary.

Updated documentation accordingly and added note
that auto-create of parents may potentially
create garbage in data store.

Change-Id: Id4a88b015e05b4717e9c393ddf821c7f93e7e541
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
9 years agoBug 279, 1390: Used Guava Cache r for lazy-loading of RPC Routers 21/9221/3
Tony Tkacik [Tue, 22 Jul 2014 08:39:09 +0000 (10:39 +0200)]
Bug 279, 1390: Used Guava Cache r for lazy-loading of RPC Routers

Used Guava Cache for lazy-loading of RPC Routers, which
is thread safe. Guava Loading Cache was not suitable
since we needed to know when RPC was created outside
of Guava load() callback.

Introduced new internal exception type RpcIsNotRoutedException
which is thrown when service type is not routed.

Change-Id: I96b6ff68e300596aa837e21690f8cb92da12112c
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
9 years agoBug 1125: Added regression test 85/8985/2
Tony Tkacik [Mon, 14 Jul 2014 11:40:13 +0000 (13:40 +0200)]
Bug 1125: Added regression test

Change-Id: I455134dc95b8af4f4f0c79b11e55fd01b58731e4
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
9 years agoApply style rules on whole sal-rest-connector 27/8927/3
Jozef Gloncak [Fri, 11 Jul 2014 08:26:07 +0000 (10:26 +0200)]
Apply style rules on whole sal-rest-connector

No changes in function of code, just formatting.

Change-Id: I52bf10a3b84fa61ec35c31145acbbc6b9bf349ec
Signed-off-by: Jozef Gloncak <jgloncak@cisco.com>
9 years agoBug 1362: New AsyncWriteTransaction#submit method 91/9091/3
tpantelis [Fri, 11 Jul 2014 06:21:25 +0000 (02:21 -0400)]
Bug 1362: New AsyncWriteTransaction#submit method

- Added new AsyncWriteTransaction#submit and deprecated AsyncWriteTransaction#commit.

- Modified unit tests and current code (in the toaster) in the
  controller using commit.

Change-Id: I92317d01427bf442def8e7217ccb13313a0fd229
Signed-off-by: tpantelis <tpanteli@brocade.com>
9 years agoChanged read to be type-safe in ReadTransaction 35/8735/8
Tony Tkacik [Mon, 7 Jul 2014 12:39:49 +0000 (14:39 +0200)]
Changed read to be type-safe in ReadTransaction

Removed declaration of read method from common
superinterface, which is now only marker interface
for read capabilities.

Defined read method in specialization of interface
for Binding and DOM interfaces, which makes
use of specific features of format.

This change is source-code compatible
and users of read method needs to update
their code appropriatelly as shown in
Toaster example.

Change-Id: I8c783fc5f276722a5a762eea7c769c3f54a31855
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
9 years agoDeprecated Rpcs and RpcErrors helper classes 64/8964/4
tpantelis [Thu, 10 Jul 2014 06:49:07 +0000 (02:49 -0400)]
Deprecated Rpcs and RpcErrors helper classes

With the new RpcResultBuilder class, we can deprecate the Rpcs and
RpcErrors classes.

Also migrate all uses of the deprecated classes to RpcResultBuilder in
the controller code.

Change-Id: I86408bba0ce19e70c7d7a41555e94052e54e93f8
Signed-off-by: tpantelis <tpanteli@brocade.com>
9 years agoMerge "BUG 1330 - list key counts|values diff in payload and URI"
Tom Pantelis [Fri, 11 Jul 2014 14:55:36 +0000 (14:55 +0000)]
Merge "BUG 1330 - list key counts|values diff in payload and URI"

9 years agoBug 1303: BindingIndependentConnector splitted. 96/8896/2
Lukas Sedlak [Thu, 10 Jul 2014 08:16:46 +0000 (10:16 +0200)]
Bug 1303: BindingIndependentConnector splitted.

Inner private classes in BindingIndependentConnector extracted into standalone package protected classes.
Fixed bug in BindingToDomTransaction class - domOpenedTransactions management.

Change-Id: I69173db2bf4e6746eac4fa67c57f65095f45c603
Signed-off-by: Lukas Sedlak <lsedlak@cisco.com>
9 years agoMerge "Introducing simple merge strategy for config subsystem"
Tony Tkacik [Fri, 11 Jul 2014 11:35:41 +0000 (11:35 +0000)]
Merge "Introducing simple merge strategy for config subsystem"

9 years agoBug 1225: Added DataBroker and DataChangeListener test suite. 26/8926/2
Tony Tkacik [Thu, 10 Jul 2014 15:24:07 +0000 (17:24 +0200)]
Bug 1225: Added DataBroker and DataChangeListener test suite.

Change-Id: I53a06845024936253f576e5095b3d00c15a47e99
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
9 years agoBug 1284: Fixed serialization of Augment Instance Identifier 65/8865/5
Tony Tkacik [Wed, 9 Jul 2014 15:42:59 +0000 (17:42 +0200)]
Bug 1284: Fixed serialization of Augment Instance Identifier

Instance Identifier pointing to Augmentation, which pointed
to augmentation with leafs only, was not properly
serialized to DOM Instance Identifier and this caused
subscription for parent node.

Instance Identifier Codec was updated to detect
this case and use different algorithm to serialize
last argument.

Change-Id: Ie47ec7a5ebc86e10a7e1b3ddbc8921bf089466b2
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
9 years agoMerge "Bug 1223: Cleaned up BindingTestContext from unsupported components."
Ed Warnicke [Fri, 11 Jul 2014 09:35:26 +0000 (09:35 +0000)]
Merge "Bug 1223: Cleaned up BindingTestContext from unsupported components."

9 years agoMerge "IEEE802.1q Packet returns incorrect header size"
Alessandro Boch [Fri, 11 Jul 2014 08:14:28 +0000 (08:14 +0000)]
Merge "IEEE802.1q Packet returns incorrect header size"

9 years agoMerge "Bug 1139 Modify cors-config according to request"
Tony Tkacik [Fri, 11 Jul 2014 07:56:30 +0000 (07:56 +0000)]
Merge "Bug 1139 Modify cors-config according to request"

9 years agoMerge "Clarified the AsyncDataChangeEvent message - stated you must not block the...
Tony Tkacik [Fri, 11 Jul 2014 07:38:16 +0000 (07:38 +0000)]
Merge "Clarified the AsyncDataChangeEvent message - stated you must not block the thread."

9 years agoIEEE802.1q Packet returns incorrect header size 88/8888/4
Yevgeny Khodorkovsky [Thu, 10 Jul 2014 05:13:57 +0000 (22:13 -0700)]
IEEE802.1q Packet returns incorrect header size

IEEE8021Q class uses the Packet.getHeaderSize() which iterates through
header fields to determine the size. .1Q header is fixed in size and
should return the correct value

Change-Id: I4b0123dd943f6e833f14782f2ed7cc0e6e184e87
Signed-off-by: Yevgeny Khodorkovsky <ykhodork@cisco.com>
9 years agoMerge "Add generic exception mapper"
Chi-Vien Ly [Thu, 10 Jul 2014 18:37:12 +0000 (18:37 +0000)]
Merge "Add generic exception mapper"

9 years agoClarified the AsyncDataChangeEvent message - stated you must not block the thread. 06/8906/1
Devin Avery [Thu, 10 Jul 2014 18:05:43 +0000 (14:05 -0400)]
Clarified the AsyncDataChangeEvent message - stated you must not block the thread.

Change-Id: I311b7c37f5848beb351d59fc830798d10302a3bb
Signed-off-by: Devin Avery <devin.avery@brocade.com>
9 years agoBug 1139 Modify cors-config according to request 95/8895/1
Tomas Olvecky [Thu, 10 Jul 2014 12:58:27 +0000 (14:58 +0200)]
Bug 1139 Modify cors-config according to request

Change-Id: I6276e6a41c43ffb430f520911cd8366a55dc8930
Signed-off-by: Tomas Olvecky <tolvecky@cisco.com>
9 years agoIntroducing simple merge strategy for config subsystem 05/8705/4
Tomas Olvecky [Wed, 9 Jul 2014 13:27:09 +0000 (15:27 +0200)]
Introducing simple merge strategy for config subsystem

MergeEditStrategy wasn't really merging.
Now it is, but only for ObjectName[].
However, since ObjectName[] is 90% of the interesting
cases, this should get us a long way.

This is needed to be able to handle reasonably
extension, with the ability to wire in multiple
extension modules independently, as we need to do
for things like OF extension.

Change-Id: Ieca579cbc6781d77f489f5f754490c8da8f65188
Signed-off-by: Ed Warnicke <eaw@cisco.com>
Signed-off-by: Tomas Olvecky <tolvecky@cisco.com>
9 years agoBug 1223: Cleaned up BindingTestContext from unsupported components. 49/8849/2
Tony Tkacik [Wed, 9 Jul 2014 10:47:28 +0000 (12:47 +0200)]
Bug 1223: Cleaned up BindingTestContext from unsupported components.

Change-Id: I26123a2a9d56c85dcc329fda0727e7e3e664c829
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
9 years agoMerge "Add BGPCEP logging configuration"
Tony Tkacik [Thu, 10 Jul 2014 08:42:25 +0000 (08:42 +0000)]
Merge "Add BGPCEP logging configuration"

9 years agoMerge "Bug 1341 - Make RESTConf websocket port configurable"
Tony Tkacik [Thu, 10 Jul 2014 08:04:31 +0000 (08:04 +0000)]
Merge "Bug 1341 - Make RESTConf websocket port configurable"

9 years agoBUG 1330 - list key counts|values diff in payload and URI 89/8889/3
Jozef Gloncak [Thu, 10 Jul 2014 08:02:00 +0000 (10:02 +0200)]
BUG 1330 - list key counts|values diff in payload and URI

Adds validation whether list key counts or list key values are different
between payload and URI. It difference occures then
RestconfDocumentedException is raised.

Change-Id: I93aaa352cfb8daee298ebf16375cb70987328dbb
Signed-off-by: Jozef Gloncak <jgloncak@cisco.com>
9 years agoMerge "Deprecate model-flow-management as it was never used and is confusing people."
Devin Avery [Wed, 9 Jul 2014 20:36:32 +0000 (20:36 +0000)]
Merge "Deprecate model-flow-management as it was never used and is confusing people."

9 years agoExtra Features for Controller (Akka, Spray and Scala) 66/7266/14
Mathieu Lemay [Fri, 23 May 2014 20:17:18 +0000 (16:17 -0400)]
Extra Features for Controller (Akka, Spray and Scala)

PatchSet14: Cliped out spray as its not used in controller.

Change-Id: I20a9d9efb5e26686d29bed88c732c397258be7a0
Signed-off-by: Jonathan Fok kan <jfokkan@inocybe.ca>
Signed-off-by: Gabriel Robitaille-Montpetit <grmontpetit@inocybe.com>
Signed-off-by: Mathieu Lemay <mlemay@inocybe.com>
9 years agoAdd generic exception mapper 63/8863/3
mrajvaid [Wed, 9 Jul 2014 15:44:49 +0000 (08:44 -0700)]
Add generic exception mapper

Change-Id: Ia3fbf4bcea6095e5c0eb6e56e8c886b38e66cd65
Signed-off-by: mrajvaid <mrajvaid@cisco.com>
9 years agoBug 1341 - Make RESTConf websocket port configurable 66/8866/1
Richard Kosegi [Wed, 9 Jul 2014 13:31:05 +0000 (15:31 +0200)]
Bug 1341 - Make RESTConf websocket port configurable

Change-Id: I54f4bcadd864eb264b92f00b82b81489e9ebecf0
Signed-off-by: Richard Kosegi <rkosegi@cisco.com>
9 years agoMerge "Improve documentation of BindingAware{Provider,Consumer}"
Tony Tkacik [Wed, 9 Jul 2014 15:09:54 +0000 (15:09 +0000)]
Merge "Improve documentation of BindingAware{Provider,Consumer}"

9 years agoMerge "Bug 1293 - Switch packaging of config-util to bundle"
Tony Tkacik [Wed, 9 Jul 2014 09:09:32 +0000 (09:09 +0000)]
Merge "Bug 1293 - Switch packaging of config-util to bundle"

9 years agoMerge "Re-added config.version to config-module-archetype."
Tony Tkacik [Wed, 9 Jul 2014 09:03:55 +0000 (09:03 +0000)]
Merge "Re-added config.version to config-module-archetype."

9 years agoMerge "Bug 1112: Update toaster to use async best practices"
Tony Tkacik [Wed, 9 Jul 2014 08:46:11 +0000 (08:46 +0000)]
Merge "Bug 1112: Update toaster to use async best practices"

9 years agoMerge "Implement PortNumberBuilder"
Tony Tkacik [Wed, 9 Jul 2014 08:44:07 +0000 (08:44 +0000)]
Merge "Implement PortNumberBuilder"

9 years agoMerge "Bug 1292: Fix for NPE after notification get."
Tony Tkacik [Wed, 9 Jul 2014 08:43:14 +0000 (08:43 +0000)]
Merge "Bug 1292: Fix for NPE after notification get."

9 years agoBug 1292: Fix for NPE after notification get. 43/8843/1
Lukas Sedlak [Tue, 8 Jul 2014 10:00:23 +0000 (12:00 +0200)]
Bug 1292: Fix for NPE after notification get.

Fixed incorrect pass of SchemaContext in toNotification method in NetconfMessageTransformer class.
Added test for proper testing of resolving of notficiation message.
Added test models and test notification xml payload for testing purposes.

Change-Id: I4ada2fdf976003f4a2809d6cef53816ec39be364
Signed-off-by: Lukas Sedlak <lsedlak@cisco.com>
9 years agoBug 1339: Added doublecheck for RPC registration 39/8839/1
Lukas Sedlak [Wed, 9 Jul 2014 07:21:35 +0000 (09:21 +0200)]
Bug 1339: Added doublecheck for RPC registration

Change-Id: I786934b6cc690817688e60fd3d422293f37056be
Signed-off-by: Lukas Sedlak <lsedlak@cisco.com>
9 years agoDeprecate model-flow-management as it was never used and is 29/8829/1
Ed Warnicke [Tue, 8 Jul 2014 21:44:07 +0000 (16:44 -0500)]
Deprecate model-flow-management as it was never used and is
confusing people.

Change-Id: I29adb62375a814a290635f7ab8cae4a3f41b8069
Signed-off-by: Ed Warnicke <eaw@cisco.com>
9 years agoMerge "Bug 1224, Bug 1221: Added Test case scenarios for Data Change Events."
Ed Warnicke [Tue, 8 Jul 2014 18:45:45 +0000 (18:45 +0000)]
Merge "Bug 1224, Bug 1221: Added Test case scenarios for Data Change Events."

9 years agoMerge "BUG 1204 - exception if multiple container node occures"
Tom Pantelis [Tue, 8 Jul 2014 18:19:55 +0000 (18:19 +0000)]
Merge "BUG 1204 - exception if multiple container node occures"