controller.git
9 years agoMerge "BUG-1051: logback configuration loader proposal"
Ed Warnicke [Tue, 3 Jun 2014 19:27:01 +0000 (19:27 +0000)]
Merge "BUG-1051: logback configuration loader proposal"

9 years agoMerge "Bug 1100 - Invoking an RPC with no input should not throw 500 when expected"
Tony Tkacik [Tue, 3 Jun 2014 16:21:56 +0000 (16:21 +0000)]
Merge "Bug 1100 - Invoking an RPC with no input should not throw 500 when expected"

9 years agoMerge "Fix logging in NetconfDeviceSalFacade"
Tony Tkacik [Tue, 3 Jun 2014 13:29:53 +0000 (13:29 +0000)]
Merge "Fix logging in NetconfDeviceSalFacade"

9 years agoMerge "BUG-1120: optimize notification delivery fast path"
Tony Tkacik [Tue, 3 Jun 2014 07:58:50 +0000 (07:58 +0000)]
Merge "BUG-1120: optimize notification delivery fast path"

9 years agoMerge "BUG-1120: fold GenerationalListenerMap back"
Tony Tkacik [Tue, 3 Jun 2014 07:58:31 +0000 (07:58 +0000)]
Merge "BUG-1120: fold GenerationalListenerMap back"

9 years agoMerge "BUG-1120: introduce generations to ListenerMap"
Tony Tkacik [Tue, 3 Jun 2014 07:58:22 +0000 (07:58 +0000)]
Merge "BUG-1120: introduce generations to ListenerMap"

9 years agoMerge "TCP_Flag extension model additions for OFPXMC_NXM_1 class"
Ed Warnicke [Mon, 2 Jun 2014 16:42:32 +0000 (16:42 +0000)]
Merge "TCP_Flag extension model additions for OFPXMC_NXM_1 class"

9 years agoBUG-1120: optimize notification delivery fast path 94/7594/1
Robert Varga [Mon, 2 Jun 2014 14:11:20 +0000 (16:11 +0200)]
BUG-1120: optimize notification delivery fast path

Now that the interface contract is completely separated, our fast path
is as good as it gets, except it still allocates a few objects in the
lookup path. These are expected to be generally small, but we do now
they are constant while a particular generation is in place.

This means we can stategically place a LoadingCache, which will
eliminate the need to allocate the objects for notifications which are
often used -- thus the fast path really becomes a lookup by class into a
prepared iterable of listeners. For initial implementation we will place
an upper bound of 1000 entries and see where it leads us.

Change-Id: I2cf39f0d4681aa60afb9d517fb7beef99838bbab
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBUG-1120: fold GenerationalListenerMap back 93/7593/1
Robert Varga [Mon, 2 Jun 2014 13:46:28 +0000 (15:46 +0200)]
BUG-1120: fold GenerationalListenerMap back

This moves needless indirection code form GenerationalListenerMap back
to NotificaitonBrokerImpl. Now the contract is directly between
NotificationBrokerImpl and ListenerMapGeneration

Change-Id: I0b401fa4b10e06afbc7206323d1c1f4afb19d422
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBUG-1120: introduce generations to ListenerMap 92/7592/1
Robert Varga [Mon, 2 Jun 2014 11:58:22 +0000 (13:58 +0200)]
BUG-1120: introduce generations to ListenerMap

This removes the synchronized block in the fast path, biasing the
implementation heavily towards fast readers.

The readers need only to take a volatile reference (AtomicReference),
at which point they have an isolated read-only view of the map.

Writers on the other hand, though, are fully synchronized and are
required to perform a full copy operation, then do the modifications and
finally reinstate the read-only view through setting the atomic
reference.

Change-Id: I5d118177c1508199b66b9e26499c9fc628d3f65e
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBUG-1120: Rename to GenerationalListenerMap 91/7591/1
Robert Varga [Mon, 2 Jun 2014 12:01:12 +0000 (14:01 +0200)]
BUG-1120: Rename to GenerationalListenerMap

This name better captures the overall intent, so before we make changes
just do a rename, so it's easily reviewable.

Change-Id: I578edc26bcdc5dacbe3575dbb3ed3fe83694a9dd
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBUG-1120: promote synchronization to all entrypoints 90/7590/1
Robert Varga [Mon, 2 Jun 2014 11:35:29 +0000 (13:35 +0200)]
BUG-1120: promote synchronization to all entrypoints

This is a temporary regression in performance: get rid of the
synchronized map at the cost of explicit synchronized methods.
Subsequent patches will remove the synchronization from the fast paths.

Change-Id: Ibe90e4e7ff99655a69b77c942ad50baec9df1ba2
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBUG-1120: introduce NotificationListenerMap 89/7589/1
Robert Varga [Mon, 2 Jun 2014 11:26:47 +0000 (13:26 +0200)]
BUG-1120: introduce NotificationListenerMap

Introduces encapsulation of the set of listeners, such that
modifications and lookup are isolated fromt the rest of the
implementation -- thus clearly defining the entry points.

Also fixes a possible iteration failure if concurrent modification
happens while a interest listener is being added.

Change-Id: I96e0260d372425d261b352b229ae293e638c287c
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBUG-868: disallow instantiation without executor 88/7588/1
Robert Varga [Mon, 2 Jun 2014 11:33:10 +0000 (13:33 +0200)]
BUG-868: disallow instantiation without executor

This clarifies the deprecated API. As it turns out, instantiation
without an executor should be removed, not the other way around.

Change-Id: I3a2738a4da18ef92d3e8c38d0c12f6df653bd74c
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoFix logging in NetconfDeviceSalFacade 84/7584/1
Tomas Olvecky [Mon, 2 Jun 2014 11:27:34 +0000 (13:27 +0200)]
Fix logging in NetconfDeviceSalFacade

Use correct logger name, make RPC warning log more granular.

Change-Id: Id9ec5aec64f1037411d2e105309e258aab411e24
Signed-off-by: Tomas Olvecky <tolvecky@cisco.com>
9 years agoBUG-1120: fix race window in unregistration 67/7567/3
Robert Varga [Sun, 1 Jun 2014 14:33:52 +0000 (16:33 +0200)]
BUG-1120: fix race window in unregistration

This has the nice benefit of unifying the registration/unregistration
paths, too. This requires a supporting ehnancement in yangtools, which
has been submitted at https://git.opendaylight.org/gerrit/#/c/7568/

Change-Id: Ifd489d6eaf5b7feb4a6efaa09bd468d5818c24cc
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoMerge "BUG-832 Refactor netconf connector"
Tony Tkacik [Mon, 2 Jun 2014 08:50:39 +0000 (08:50 +0000)]
Merge "BUG-832 Refactor netconf connector"

9 years agoBUG-832 Refactor netconf connector 93/6793/13
Maros Marsalek [Tue, 29 Apr 2014 12:23:52 +0000 (14:23 +0200)]
BUG-832 Refactor netconf connector

- Extract general API for remote connectors
- Split NetconfDevice into more classes
- Make data operations over netconf device in inventory binding aware (fixes 969)
- Add dependency on binding-broker
- Make connector crash if schema is not present for device
- Improve logging

Change-Id: Idf4fa4994b3ac067bd69e9cd629b6d8c225d7b77
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
9 years agoBUG-614: degrade NotifyTask to Runnable 64/7564/2
Robert Varga [Sun, 1 Jun 2014 09:00:48 +0000 (11:00 +0200)]
BUG-614: degrade NotifyTask to Runnable

The call() method always returned null anyway, so we might as well make it
Runnable.

Change-Id: I6be36490aba33ba1bf4b205ba4d9b0aa8160dbdf
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBUG-614: do not use xtend's library 63/7563/2
Robert Varga [Sun, 1 Jun 2014 08:01:47 +0000 (10:01 +0200)]
BUG-614: do not use xtend's library

Convert from using xtendlib to using guava directly.

Change-Id: Ic72af54e0b1480658fb4067821969419bbab2e8e
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBUG-614: No need to build a future list 62/7562/2
Robert Varga [Sun, 1 Jun 2014 07:52:44 +0000 (09:52 +0200)]
BUG-614: No need to build a future list

It is obvious that the constructed list of futures is never going to be
used, so let's not construct it at all.

Change-Id: I506e33da52c53b5e63088a5c8ae0bb206eb6a720
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBUG-614: Remove xtendisms 61/7561/2
Robert Varga [Sun, 1 Jun 2014 06:09:06 +0000 (08:09 +0200)]
BUG-614: Remove xtendisms

Generated xtend code is quite verbose and sometimes the logic gets quite
obfuscated. This patch brings the code more in-line to what a programmer
might write.

Change-Id: I9a04012a2ba106082e9b1eef25bd9cb6958736cd
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBUG-614: explicitly use old constructor 66/7566/1
Robert Varga [Sun, 1 Jun 2014 11:43:54 +0000 (13:43 +0200)]
BUG-614: explicitly use old constructor

This makes use of the legacy constructor until a concrete migration path
is selected.

Change-Id: I375504303c7e134f03bf649b360327e9076d2d08
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBUG-614: Hide the executor and improve logging 60/7560/1
Robert Varga [Sun, 1 Jun 2014 06:01:21 +0000 (08:01 +0200)]
BUG-614: Hide the executor and improve logging

As part of the xtend->Java rewrite, we get rid of unnecessary
getExecutor() and improve logging a bit.

Change-Id: I9c7052472289f701a289f4ba76312fb28af18a3f
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBUG-614: convert NotificationBrokerImpl 59/7559/1
Robert Varga [Sat, 31 May 2014 07:34:09 +0000 (09:34 +0200)]
BUG-614: convert NotificationBrokerImpl

This does a straight xtend->java conversion by moving xtend-generated
java files into the repository instead of xtend. This is the first step
in optimizing NotificationBrokerImpl.

Change-Id: Ie8dc1dfb6c5b9e80a8d79a5de31410100b35c7fc
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBUG-1051: logback configuration loader proposal 52/7252/3
Michal Rehak [Tue, 20 May 2014 15:57:18 +0000 (17:57 +0200)]
BUG-1051: logback configuration loader proposal

- uses environment variable logback.config.d (pointing to config root folder)
- removes previously loaded logging configuration
- applies all config files from config root folder in alphabetical order
- requires:
  - to be added to osgi.bundles (configuration.ini)
  - existing logback.config.d variable (configuration.ini)
  - logback config files in specified config root folder
- added overloads for load method
- enriched util class protection against "accidental" instantiation
- using precompiled pattern while iterating folder content
- added classcast protection for case when the logging backend differs from logback

Change-Id: Id0242c78fe39b9631d1a4bca66d9674f7a3fec62
Signed-off-by: Michal Rehak <mirehak@cisco.com>
9 years agoBug 981: Converted test to use BitsType.create() 38/7538/1
Tony Tkacik [Fri, 30 May 2014 14:39:36 +0000 (16:39 +0200)]
Bug 981: Converted test to use BitsType.create()

Change-Id: I759c55c48de64e48c5757aba5b7665f2478aa0fb
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
9 years agoMerge "Bug 1003: Restconf - remove whitespace on input"
Tony Tkacik [Fri, 30 May 2014 12:33:04 +0000 (12:33 +0000)]
Merge "Bug 1003: Restconf - remove whitespace on input"

9 years agoMerge "Bug 1073: Introduced Transaction Chain to DOMStore APIs."
Ed Warnicke [Fri, 30 May 2014 12:25:16 +0000 (12:25 +0000)]
Merge "Bug 1073: Introduced Transaction Chain to DOMStore APIs."

9 years agoTCP_Flag extension model additions for OFPXMC_NXM_1 class 32/7532/2
Brent Salisbury [Tue, 27 May 2014 09:00:42 +0000 (05:00 -0400)]
TCP_Flag extension model additions for OFPXMC_NXM_1 class

Patch2: changed model descrip to be more generic to better
represent the high level model.

Patch1: Modified the high level models
opendaylight-match-types.yang and
opendaylight-table-types.yang to support TCP_Flag reads.

Once this and the low-level openflowjava patches merge,
I will commit the openflowplugin conversion patch since
openflowplugin will fail its build until the yang bindings
are generated.

Change-Id: Ia80e9014efa02bdb52dffeb1620625103e8dd985
Signed-off-by: Brent Salisbury <brent.salisbury@gmail.com>
9 years agoBug 1100 - Invoking an RPC with no input should not throw 500 when expected 24/7524/3
Devin Avery [Thu, 29 May 2014 20:42:03 +0000 (16:42 -0400)]
Bug 1100 - Invoking an RPC with no input should not throw 500 when expected

Patch Set 3:
*Modified the Json/Xml readers to not throw an except if the content is empty
*Moved the validation of non empty object into restconf where the knowledge
of what is expected exists.

Change-Id: I4e689770d1a6843e99ce498bd12cecc5e1817eaa
Signed-off-by: Devin Avery <devin.avery@brocade.com>
9 years agoBUG-509: cleanup datastore interafaces 16/7516/2
Robert Varga [Thu, 29 May 2014 13:04:30 +0000 (15:04 +0200)]
BUG-509: cleanup datastore interafaces

This removes unused methods and adds interface contract documentation.

Change-Id: I7bc57d034da1d0503d76afa6f4c09ce6a6bfe669
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBUG-509: remove unnecessary Version objects 15/7515/2
Robert Varga [Wed, 28 May 2014 22:02:17 +0000 (00:02 +0200)]
BUG-509: remove unnecessary Version objects

Testing has revealed the datastore instantiates effectively a version
per tree node. This turns out to be not needed, as we really just need a
single version per commit -- which can be shared between nodes, as the
(node,version) tuple remains unique.

So let's just instantiate a single version when we start the
transaction, which we need to do anyway, and use it for all
nodes/subtrees added or modified. This places an upper bound on Version
objects retained to the number of transactions committed (not counting
no-ops).

Change-Id: I40d095ec230eee8b5af2409c1e8ee61a1860a9d3
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBUG-509: use concurrent hash-trie Map 63/7363/5
Robert Varga [Fri, 23 May 2014 11:11:39 +0000 (13:11 +0200)]
BUG-509: use concurrent hash-trie Map

This patch switches to using concurrent hash-trie map for metadata
tracking. It has the nice feature of having O(1) concurrent snapshots,
which should give us better performance when dealing with large children
bases.

This is a trade-off, please refer to yangtools.util.MapAdaptor for
system properties which tune its behavior.

Change-Id: I2ddb81a1296cc17528a605eeaeda1f303560fb55
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoMerge "BUG-648: include yangtools.util package"
Tony Tkacik [Thu, 29 May 2014 10:37:59 +0000 (10:37 +0000)]
Merge "BUG-648: include yangtools.util package"

9 years agoBug 625 - Fixed Apache DM Activation after removing xtend code. 85/7485/1
Vaclav Demcak [Thu, 29 May 2014 09:44:19 +0000 (11:44 +0200)]
Bug 625 - Fixed Apache DM Activation after removing xtend code.

Apache DM does not provide any compile time/ runtime checks
for callbacks missing / modified.
Previously in xtend callbacks were provided by @Property
annotation, which generated setters and getters for this.

In refactor these was accidentally ommited. From code-perspective
it was not obvious that this affects Apache DM instantiation of
this service, since Apache DM uses strings and reflection.

Change-Id: I655ce7c1bc9971e3db370c5048057c1e6070a46d
Signed-off-by: Vaclav Demcak <vdemcak@cisco.com>
9 years agoBUG-648: include yangtools.util package 65/7465/3
Robert Varga [Wed, 28 May 2014 17:02:01 +0000 (19:02 +0200)]
BUG-648: include yangtools.util package

This include yangtools.util, which will hold various utility classes.
First of which is MapAdaptor, needed to solve the 'copying hashmaps'
problem.

Change-Id: Ifdb7709e1b83d07d1e96832954987072f82274ae
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBUG-625: migrate MDFlowMapping 63/7463/1
Robert Varga [Wed, 28 May 2014 12:57:06 +0000 (14:57 +0200)]
BUG-625: migrate MDFlowMapping

This patch migrates MDFlowMapping from xtend to pure Java, optimizing it
at the same time.

Change-Id: Ibc92760b2d250b190ca9aa25c818b9cc40ad39b2
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoMerge "Bug 1029: Remove dead code: sal-dom-it"
Tony Tkacik [Wed, 28 May 2014 14:40:59 +0000 (14:40 +0000)]
Merge "Bug 1029: Remove dead code: sal-dom-it"

9 years agoMerge "Bug 1029: Remove dead code: sal-schema-repository-api"
Tony Tkacik [Wed, 28 May 2014 14:40:46 +0000 (14:40 +0000)]
Merge "Bug 1029: Remove dead code: sal-schema-repository-api"

9 years agoBUG-625: migrate FlowProgrammerAdapter 62/7462/1
Robert Varga [Wed, 28 May 2014 09:59:53 +0000 (11:59 +0200)]
BUG-625: migrate FlowProgrammerAdapter

This migrates FlowProgrammerAdapter from xtend to pure Java, cleaning it
up in the process. A bunch of possible omissions/errors are marked with
FIXME for someone to follow up.

Change-Id: I057449bd7a569a75e30182493727dbc200f83e62
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBUG-625: migrate ComponentActivator 61/7461/1
Robert Varga [Wed, 28 May 2014 08:19:31 +0000 (10:19 +0200)]
BUG-625: migrate ComponentActivator

This migrates ComponentActivator from xtend to pure Java, simplifying
and clarifying it bit.

Change-Id: If293cd0c99d931a5a16500b2e72c9afd631ccc02
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoMerge changes I1ba91f59,I6d69f9da,I99ddffb1,I6fdc9d42
Tony Tkacik [Wed, 28 May 2014 08:37:44 +0000 (08:37 +0000)]
Merge changes I1ba91f59,I6d69f9da,I99ddffb1,I6fdc9d42

* changes:
  BUG-625: convert TopologyProvider
  BUG-625: convert TopologyMapping
  BUG-625: convert TopologyAdapter
  BUG-625: split off SalCompatibilityProvider

9 years agoMerge "BUG-625: convert DataPacketAdapter"
Tony Tkacik [Wed, 28 May 2014 08:36:58 +0000 (08:36 +0000)]
Merge "BUG-625: convert DataPacketAdapter"

9 years agoMerge "BUG-614: convert RuntimeCodeSpecification"
Tony Tkacik [Wed, 28 May 2014 08:29:56 +0000 (08:29 +0000)]
Merge "BUG-614: convert RuntimeCodeSpecification"

9 years agoBUG-614: convert RuntimeCodeSpecification 56/7456/1
Robert Varga [Wed, 28 May 2014 07:14:33 +0000 (09:14 +0200)]
BUG-614: convert RuntimeCodeSpecification

This migrates RuntimeCodeSpecification from xtend to Java, increasing
its efficiency.

Change-Id: I00b3ab7f3a47e0d3fc71e55b4bec99364bfa8e5f
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBUG-625: convert TopologyProvider 39/7439/1
Robert Varga [Tue, 27 May 2014 20:48:56 +0000 (22:48 +0200)]
BUG-625: convert TopologyProvider

This patch converts TopologyProvider from being xtend class to being a
pure Java class.

Change-Id: I1ba91f5988243259d39c812a0ffdda7b3d7d608e
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBUG-625: convert TopologyMapping 38/7438/1
Robert Varga [Tue, 27 May 2014 20:34:19 +0000 (22:34 +0200)]
BUG-625: convert TopologyMapping

This converts TopologyMapping from xtend to Java.

Change-Id: I6d69f9da2bbd47d8a7c8bd7104f4c2214ab6ed57
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBUG-625: convert TopologyAdapter 37/7437/1
Robert Varga [Tue, 27 May 2014 19:38:31 +0000 (21:38 +0200)]
BUG-625: convert TopologyAdapter

This patch converts the TopologyAdaptoer from being an xtend class to
being a pure Java class.

Change-Id: I99ddffb1ec898fb0f75560d8f2f799085fb1558b
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBUG-625: split off SalCompatibilityProvider 36/7436/1
Robert Varga [Tue, 27 May 2014 19:22:21 +0000 (21:22 +0200)]
BUG-625: split off SalCompatibilityProvider

This patch splits off SalCompatibilityProvider from
ComponentActivator.xtend, lowering the amount of xtend code present in
the code base.

Change-Id: I6fdc9d42c2b39a226afd13883ac26bc7d3ee4866
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBUG-625: convert DataPacketAdapter 35/7435/1
Robert Varga [Tue, 27 May 2014 18:48:15 +0000 (20:48 +0200)]
BUG-625: convert DataPacketAdapter

This patch converts DataPacketAdapter from xtend to pure java. Same
level of functionality should be retained.

Change-Id: I72371da9bee9dd6b26851eb6c9635c0995e7ce97
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBUG-620: replace xtend version of classes with Java versions 71/7271/5
Robert Varga [Tue, 20 May 2014 23:08:23 +0000 (16:08 -0700)]
BUG-620: replace xtend version of classes with Java versions

replace xtend versions of classes with java versions where the java was
generated by hand based on the source of the xtend file as well as leveraging
the code generated from the xtend source

Change-Id: I36a3a61608710543f66c36f7d5179cf976257953
Signed-off-by: David K. Bainbridge <dbainbri.ciena@gmail.com>
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBug 1010: Implement restconf error responses 25/7125/11
tpantelis [Thu, 8 May 2014 18:25:02 +0000 (14:25 -0400)]
Bug 1010: Implement restconf error responses

- RestconfError (new): encapsulates error information as defined in the
  RESTCON RFC.

- RestconfDocumentedException (new): exception that wraps RestconError info.

- RestconfDocumentedExceptionMapper (new): JAX-RS ExceptionMapper that
  translates a RestconfDocumentedException appropriately to XML or
  JSON depending on the user's mime type.

- JsonMapper: modified to handle null child schema as restconf error-info
  is defined as 'anyxml' and thus no schema may be present.

- ControllerContext: added getRestconfModuleErrorsSchemaNode method to
  obtain the 'errors' container schema from the ietf-restconf module.

- Removed ResponseException and changed occurrences in various classes that
  threw ResponseException to throw RestconfDocumentedException instead.

- Added unit tests for new classes and modified existing ones
  accordingly.

Change-Id: Idbe6f6cae9b40ba14701ee05dfadfdd51e961c6b
Signed-off-by: tpantelis <tpanteli@brocade.com>
9 years agoMerge "BUG-731: fix duplicate entry warning"
Tony Tkacik [Tue, 27 May 2014 13:55:34 +0000 (13:55 +0000)]
Merge "BUG-731: fix duplicate entry warning"

9 years agoBUG-731: fix duplicate entry warning 19/7419/1
Robert Varga [Tue, 27 May 2014 10:45:11 +0000 (12:45 +0200)]
BUG-731: fix duplicate entry warning

This removes the duplicate entry which maven warns about.

Change-Id: Id4a92bd63078692acd1307688fb2ba2edb91657c
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoRegistered SecGroup/Rules in netconfig.Neutron Activator 10/7410/1
Brent Salisbury [Tue, 27 May 2014 02:23:20 +0000 (22:23 -0400)]
Registered SecGroup/Rules in netconfig.Neutron Activator

This patch initiates the Sec CRUD interfaces.

Change-Id: Idf5ac503bbc04f1377bf89afa037e5e9d763d35d
Signed-off-by: Brent Salisbury <brent.salisbury@gmail.com>
9 years agoBug 1073: Introduced Transaction Chain to DOMStore APIs. 94/7394/3
Tony Tkacik [Mon, 26 May 2014 10:03:23 +0000 (12:03 +0200)]
Bug 1073: Introduced Transaction Chain to DOMStore APIs.

Introduced concept of TransactionChain to DOMStore APIs.
Decomposed DOMStore to DOMStoreTransactionFactory
to allow factory methods reuse between DOMStoreTransactionChain
and DOMStore itself.

Change-Id: I186242e40e8ada098deb431b09db67707371af58
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
9 years agoMerge "BUG-624 make netconf tcp address optional in config.ini with default value...
Tony Tkacik [Mon, 26 May 2014 19:49:08 +0000 (19:49 +0000)]
Merge "BUG-624 make netconf tcp address optional in config.ini with default value set to 127.0.0.1:8383"

9 years agoMerge "Bug 1036 - Allow using container in case stmt to preserve uniqueness."
Tony Tkacik [Mon, 26 May 2014 19:48:32 +0000 (19:48 +0000)]
Merge "Bug 1036 - Allow using container in case stmt to preserve uniqueness."

9 years agoMerge changes I7c36c88e,I7c5d97c7
Tony Tkacik [Mon, 26 May 2014 19:30:58 +0000 (19:30 +0000)]
Merge changes I7c36c88e,I7c5d97c7

* changes:
  BUG-1070: make BundleContext required
  BUG-1070: allow for URL registration failing

9 years agoMerge "Neutron API v2.0 bindings and APIs for security groups/rules."
Madhu Venugopal [Mon, 26 May 2014 14:42:53 +0000 (14:42 +0000)]
Merge "Neutron API v2.0 bindings and APIs for security groups/rules."

9 years agoBUG-624 make netconf tcp address optional in config.ini with default value set to... 98/6198/5
Tomas Olvecky [Mon, 26 May 2014 09:49:00 +0000 (11:49 +0200)]
BUG-624 make netconf tcp address optional in config.ini with default value set to 127.0.0.1:8383

Change-Id: I2a5732bd6bbb010b03d7daebb6bf30633ad536fb
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
Signed-off-by: Tomas Olvecky <tolvecky@cisco.com>
9 years agoBUG-1070: make BundleContext required 89/7389/1
Robert Varga [Mon, 26 May 2014 08:05:40 +0000 (10:05 +0200)]
BUG-1070: make BundleContext required

It does not make sense to instantiated
GlobalBundleScanningSchemaServiceImpl without a bundlecontext, so let's
make it required in the constructor, making interactions more clear.

Change-Id: I7c36c88e2e26163e0ef41480ea8f5d1d79353e5f
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBUG-1070: allow for URL registration failing 88/7388/1
Robert Varga [Mon, 26 May 2014 07:56:15 +0000 (09:56 +0200)]
BUG-1070: allow for URL registration failing

As part of the error reporting effor, the API contract will change, such
that the URLs can get parsed during registration, potentially throwing a
checked exception. This adds the preparatory groundwork and optimized
the codepath, as it's called repeatedly during controller startup.

Change-Id: I7c5d97c7be6cc488f8b61a99d8e27804ce24e523
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBug 1003: Restconf - remove whitespace on input 66/7466/1
tpantelis [Mon, 26 May 2014 05:47:18 +0000 (01:47 -0400)]
Bug 1003: Restconf - remove whitespace on input

JsonReader, XmlReader:
   - Trimmed whitespace on leaf data input

AbsractRpcExecutor, BrokerRpcExecutor, MountPointRpcExecutor:
   - Modified to handle IllegalArgumentEx and UnsupportedOperationEx
     thrown from invokeRpc to throw appropriate ResconfDocumentedEx.

ResconfDocumentedExeptionMapper, RestconfError, RestconfErrorTest:
   - I discovered that the Response.Status.NOT_IMPLEMENTED jaxrs enum
     is defined in the enum class that is used at compile time but
     isn't defined in the run time enum class provided by jersey.
     So I changed RestconfError.ErrorTag to store the integer status
     code (501) instead of the enum. Ideally compile and run time
     should use the same lib.

- SchemaAwareRpcBroker:
   - Modified to throw UnsupportedOperationEx if no RPC impl is found
     so the restconf front-end can yield the appropriate
     501 (Not Implemented) status code.

Change-Id: Ibfa1dc7ff1526b6d352b9f4e6be2aae0d19ab655
Signed-off-by: tpantelis <tpanteli@brocade.com>
9 years agoNeutron API v2.0 bindings and APIs for security groups/rules. 69/7369/1
Brent Salisbury [Sat, 24 May 2014 23:52:44 +0000 (19:52 -0400)]
Neutron API v2.0 bindings and APIs for security groups/rules.

-This is to enhance the ODL/OpenStack ML2 integration
work to include port security services.

https://wiki.openstack.org/wiki/Neutron/APIv2-specification

Change-Id: Ice5c2fd12381732ab1cbb2394fd67ffed1dcf62c
Signed-off-by: Brent Salisbury <brent.salisbury@gmail.com>
9 years agoMerge changes I8dc2b4df,I09e448f4
Tony Tkacik [Fri, 23 May 2014 15:11:10 +0000 (15:11 +0000)]
Merge changes I8dc2b4df,I09e448f4

* changes:
  Bug 1062 - Disallow implicit serviceref creation.
  Bug 1062 - Allow multiple service references with same name.

9 years agoMerge "BUG-770: NumberFormatException for input string on switch OFPT_HELLO"
Tony Tkacik [Fri, 23 May 2014 15:06:17 +0000 (15:06 +0000)]
Merge "BUG-770: NumberFormatException for input string on switch OFPT_HELLO"

9 years agoMerge "BUG-868: migrate InstanceIdentifer.builder() users"
Tony Tkacik [Fri, 23 May 2014 15:03:27 +0000 (15:03 +0000)]
Merge "BUG-868: migrate InstanceIdentifer.builder() users"

9 years agoMerge changes Ieef23a07,I8057763e
Tony Tkacik [Fri, 23 May 2014 15:02:57 +0000 (15:02 +0000)]
Merge changes Ieef23a07,I8057763e

* changes:
  BUG-868: migrate users of CompositeNode.getChildren()
  BUG-731: Warning suppression is not necessary

9 years agoMerge "BUG-509: introduce Version concept"
Tony Tkacik [Fri, 23 May 2014 14:09:24 +0000 (14:09 +0000)]
Merge "BUG-509: introduce Version concept"

9 years agoMerge "BUG-509: fix ModifiedNode locking"
Tony Tkacik [Fri, 23 May 2014 14:08:59 +0000 (14:08 +0000)]
Merge "BUG-509: fix ModifiedNode locking"

9 years agoMerge "BUG-509: migrate to TreeNodes"
Tony Tkacik [Fri, 23 May 2014 14:07:44 +0000 (14:07 +0000)]
Merge "BUG-509: migrate to TreeNodes"

9 years agoMerge "BUG-509: create data tree SPI package"
Tony Tkacik [Fri, 23 May 2014 13:56:42 +0000 (13:56 +0000)]
Merge "BUG-509: create data tree SPI package"

9 years agoMerge "BUG-509: add some documentation"
Tony Tkacik [Fri, 23 May 2014 13:56:17 +0000 (13:56 +0000)]
Merge "BUG-509: add some documentation"

9 years agoMerge "Bug 716: Errors on controller shutdown"
Tony Tkacik [Fri, 23 May 2014 12:42:54 +0000 (12:42 +0000)]
Merge "Bug 716: Errors on controller shutdown"

9 years agoMerge "Bug 735 - Part 2 - Modify controller to reference new yang-types bundle and...
Tony Tkacik [Fri, 23 May 2014 12:34:21 +0000 (12:34 +0000)]
Merge "Bug 735 - Part 2 - Modify controller to reference new yang-types bundle and and ietf-bundles."

9 years agoBUG-868: migrate InstanceIdentifer.builder() users 59/7359/1
Robert Varga [Fri, 23 May 2014 10:42:05 +0000 (12:42 +0200)]
BUG-868: migrate InstanceIdentifer.builder() users

This moves the users to the (relatively) new convenience methods,
freeing up the static builder() method.

Change-Id: I4112cba3e6794bb38e9523b770b5ae81959d1375
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBUG-868: migrate users of CompositeNode.getChildren() 58/7358/1
Robert Varga [Fri, 23 May 2014 10:35:19 +0000 (12:35 +0200)]
BUG-868: migrate users of CompositeNode.getChildren()

This converts the callers from getChildren() to getValue(), eliminating
around a hundred of warnings in eclipse.

Change-Id: Ieef23a07ac02b719866ec447a7e3365ab11e150a
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBUG-731: Warning suppression is not necessary 57/7357/1
Robert Varga [Fri, 23 May 2014 10:09:44 +0000 (12:09 +0200)]
BUG-731: Warning suppression is not necessary

This removes unnecessary SuppressWarnings.

Change-Id: I8057763e9c9b71a52b2f615b0ffafb0dee3cbe78
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBUG-509: introduce Version concept 51/7351/2
Robert Varga [Thu, 22 May 2014 21:35:02 +0000 (23:35 +0200)]
BUG-509: introduce Version concept

This patch introduces the concept of a Version, which is disconnected
from any ordinal number. This is useful for saving memory, as the
versioning of TreeNodes needs to only detect version mismatches and not
which version is historically newer.

Change-Id: I625d9d945ff3fd416dd82bb3f1ff4268f2001e5a
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBUG-509: fix ModifiedNode locking 50/7350/2
Robert Varga [Thu, 22 May 2014 21:50:05 +0000 (23:50 +0200)]
BUG-509: fix ModifiedNode locking

This removes the 'sealed' flag from ModifiedNode, as it is not a
publicly-visible object. Also drop the synchronized blocks and
reintroduce them in InMemoryDataTreeModification, which is the user
entrypoint.

Change-Id: I6c8be61701134bd8f645b8d4f0a8ef3ae218f0ac
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBUG-509: migrate to TreeNodes 46/7346/2
Robert Varga [Thu, 22 May 2014 20:58:55 +0000 (22:58 +0200)]
BUG-509: migrate to TreeNodes

This patch performs the switchover to SPI-provided TreeNodes. It also
extracts the information needed for checking applicability of a
modification into a separate interface. Also adds some documentation in
the non-trivial write+merge path.

Change-Id: I83f5ca30bff21774759f9b675b19b6e9622076a2
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBUG-509: create data tree SPI package 45/7345/2
Robert Varga [Thu, 22 May 2014 20:49:47 +0000 (22:49 +0200)]
BUG-509: create data tree SPI package

This patch introduces an SPI package, which contains the metadata tree
node abstraction and reference implementation. This will substitute the
StoreMetadataNode class.

Major improvement is the isolation of lifecycle from the rest of the
implementation and major reduction in memory usage, as leaf nodes no
longer need to lug a HashMap around.

Change-Id: I89215672006b1ed6064feaf186c94c05550d299e
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBUG-509: add some documentation 44/7344/2
Robert Varga [Thu, 22 May 2014 05:38:07 +0000 (07:38 +0200)]
BUG-509: add some documentation

Documents AlwaysFailOperation and DataNodeContainerModificationStrategy

Change-Id: Ibb67dc5f4a829547538ba02c3eac4f995a6fe6ef
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBug 1036 - Allow using container in case stmt to preserve uniqueness. 54/7354/1
Tomas Olvecky [Tue, 20 May 2014 12:26:07 +0000 (14:26 +0200)]
Bug 1036 - Allow using container in case stmt to preserve uniqueness.

Modify yang-jmx-generator and config-netconf-connector to allow adding
dummy container node.
This allows declaring multiple config modules with same attributes within
single yang module.

Change-Id: I49ae30143e45f590f4be6b4713e048bdf9e72edb
Signed-off-by: Tomas Olvecky <tolvecky@cisco.com>
9 years agoBug 1062 - Disallow implicit serviceref creation. 29/7329/1
Tomas Olvecky [Thu, 22 May 2014 09:46:21 +0000 (11:46 +0200)]
Bug 1062 - Disallow implicit serviceref creation.

Remove auto registration of service references by netconf. Old behaviour
was adding ref_ + module name for each interface module implements even
if it is not declared in /services node.

Fix code style warning in config-netconf-connector.

Change-Id: I8dc2b4dffac212d9b8b8243ccd7aaf290b87499b
Signed-off-by: Tomas Olvecky <tolvecky@cisco.com>
9 years agoBug 1062 - Allow multiple service references with same name. 28/7328/1
Tomas Olvecky [Thu, 22 May 2014 08:23:02 +0000 (10:23 +0200)]
Bug 1062 - Allow multiple service references with same name.

One module should allow multiple service references with same name
as long as each reference uses different service interface.

Change-Id: I09e448f498ad9bd4fbe005789fa29037e202dd38
Signed-off-by: Tomas Olvecky <tolvecky@cisco.com>
9 years agoBUG-509: break up SchemaAwareApplyOperation 43/7343/1
Robert Varga [Wed, 21 May 2014 11:55:41 +0000 (13:55 +0200)]
BUG-509: break up SchemaAwareApplyOperation

This patch breaks up the SchemaAwareApplyOperation class by moving its
abstract subclasses out, allowing their subclasses to be retained within
them. This will allow to better understand the relationships between the
classes.

Change-Id: I0acf48fa7c38d600fe38a8ec9951858f46be18e0
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBUG-509: move snapshotCache get out of try block 42/7342/1
Robert Varga [Wed, 21 May 2014 13:21:14 +0000 (15:21 +0200)]
BUG-509: move snapshotCache get out of try block

This just moves the get which cannot throw out of the 'catch Exception'
block.

Change-Id: I936e987fa6b9e8b3eecb35656c586e3afb070046
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBUG-868: remove the use of Javassist.init() 22/7322/2
Robert Varga [Wed, 21 May 2014 21:55:18 +0000 (23:55 +0200)]
BUG-868: remove the use of Javassist.init()

The init method, as well as setPool() have been deprecated. Prefer the
in-one-go costructor.

Change-Id: I73298d3b36502c0bad0c09f2f7f2d87bb67bbb37
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoMerge "Fix for Bug 934 - issue in validations for nuetronPort creation and updatePort"
Ed Warnicke [Thu, 22 May 2014 01:08:59 +0000 (01:08 +0000)]
Merge "Fix for Bug 934 - issue in validations for nuetronPort creation and updatePort"

9 years agoBug 735 - Part 2 - Modify controller to reference new yang-types bundle and and ietf... 50/7250/4
Devin Avery [Tue, 20 May 2014 15:03:07 +0000 (11:03 -0400)]
Bug 735 - Part 2 - Modify controller to reference new yang-types bundle and and ietf-bundles.

Patch 1: Set up the restconf bundle to reference the ietf-restconf and ietf-yangtypes-2013 bundles respectively.

Patch 2: Kick off another jenkins build now that dependent artifacts exist.

Patch 3/4: Fixed version issue.

Change-Id: I68b8edc577f5b2e84661a8a4eaed2078c0623aab
Signed-off-by: Devin Avery <devin.avery@brocade.com>
9 years agoMerge "BUG-509: merge InMemoryDataTreeModification.resolveSnapshot()"
Tony Tkacik [Wed, 21 May 2014 17:24:58 +0000 (17:24 +0000)]
Merge "BUG-509: merge InMemoryDataTreeModification.resolveSnapshot()"

9 years agoMerge "BUG-509: there is only one createRecursively()"
Tony Tkacik [Wed, 21 May 2014 17:23:52 +0000 (17:23 +0000)]
Merge "BUG-509: there is only one createRecursively()"

9 years agoMerge "BUG-509: Remove unused methods"
Tony Tkacik [Wed, 21 May 2014 17:23:08 +0000 (17:23 +0000)]
Merge "BUG-509: Remove unused methods"

9 years agoMerge "BUG-509: node version is always required"
Tony Tkacik [Wed, 21 May 2014 17:22:30 +0000 (17:22 +0000)]
Merge "BUG-509: node version is always required"

9 years agoMerge "Bug 992 - Fix broken netconf xml serialization."
Tony Tkacik [Wed, 21 May 2014 16:18:51 +0000 (16:18 +0000)]
Merge "Bug 992 - Fix broken netconf xml serialization."

9 years agoBUG-509: merge InMemoryDataTreeModification.resolveSnapshot() 95/7295/2
Robert Varga [Wed, 21 May 2014 09:40:36 +0000 (11:40 +0200)]
BUG-509: merge InMemoryDataTreeModification.resolveSnapshot()

This patch adds some minimal documentation and merges the two
resolveSnapshot() methods into one, making the call stack a bit easier
to understand.

Change-Id: Ib23fccdc9d2987aa255483becc63155904ebc332
Signed-off-by: Robert Varga <rovarga@cisco.com>
9 years agoBUG-509: there is only one createRecursively() 94/7294/2
Robert Varga [Tue, 20 May 2014 14:25:33 +0000 (16:25 +0200)]
BUG-509: there is only one createRecursively()

The naming and exposure of two and three arugment variants made things
confusing -- let it be clear there is only one version.

Change-Id: If05620e99c2200ee10c1881de8eecd015f18eb9b
Signed-off-by: Robert Varga <rovarga@cisco.com>