mdsal.git
10 years agoFixed bug when converting augmentation in Instance Identifier
Tony Tkacik [Fri, 10 Jan 2014 09:02:10 +0000 (10:02 +0100)]
Fixed bug when converting augmentation in Instance Identifier

QName for augmentation s not present in compile-time generated
classes, but Instance Identifier codec did not explicitly checked
that.

Changed implementation in a way, that now it does not uses
reflection, but runtime generated Augmentation codec to
provide valid QName.

Change-Id: If24e9c6bc67975440239dd20a6ec5025977aab58
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoMerge "Minor changes in md-sal tests."
Ed Warnicke [Thu, 9 Jan 2014 20:22:34 +0000 (20:22 +0000)]
Merge "Minor changes in md-sal tests."

10 years agoMinor changes in md-sal tests.
Martin Vitez [Thu, 9 Jan 2014 14:08:48 +0000 (15:08 +0100)]
Minor changes in md-sal tests.

Temporary ignored test, removed @Override annotation.

Change-Id: I4d483770a96bf57973164f82c27f20f7d29a1e1f
Signed-off-by: Martin Vitez <mvitez@cisco.com>
10 years agoBug 267: Fixed augmentation read from configuration store
Tony Tkacik [Tue, 7 Jan 2014 13:00:32 +0000 (14:00 +0100)]
Bug 267: Fixed augmentation read from configuration store

  - Fixed missing support of direct read of augmentation
    from configuration store.
  - Added regresion unit test, which test storing Node with
    FlowCapableNode augmentation and reading it directly
    via InstanceIdentifier pointing to the augmentation.

Change-Id: I31c1f14d09e8c6f22720d50d25b7c6c457f37c8b
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoMerge "Support for mount points in Restconf"
Ed Warnicke [Tue, 7 Jan 2014 03:37:25 +0000 (03:37 +0000)]
Merge "Support for mount points in Restconf"

10 years agoSupport for mount points in Restconf
Tony Tkacik [Mon, 6 Jan 2014 19:44:26 +0000 (20:44 +0100)]
Support for mount points in Restconf

Added support for mount points in Restconf paths, which allows for
deeper queries inside remote nodes such as Netconf.

Change-Id: I348e494bae138f7d46ca70ab051f36b5b021641d
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoMerge changes Idf3f69db,I4499d7c7,I512af911
Alessandro Boch [Fri, 3 Jan 2014 17:52:35 +0000 (17:52 +0000)]
Merge changes Idf3f69db,I4499d7c7,I512af911

* changes:
  Initial fix to topology-adapter.
  Fixed topology-manager now that we have topology-lldp-discovery
  Added topology-lldp-discovery module

10 years agoFixed topology-manager now that we have topology-lldp-discovery
Ed Warnicke [Wed, 25 Dec 2013 23:00:30 +0000 (15:00 -0800)]
Fixed topology-manager now that we have topology-lldp-discovery

Change-Id: I4499d7c76322c0a4e78e51eed84a0ce1497b62cc
Signed-off-by: Ed Warnicke <eaw@cisco.com>
10 years agoMerge "Fixed bug in discovering JVM loaded case classes during code generation"
Ed Warnicke [Thu, 19 Dec 2013 12:52:42 +0000 (12:52 +0000)]
Merge "Fixed bug in discovering JVM loaded case classes during code generation"

10 years agoFixed bug in discovering JVM loaded case classes during code generation
Tony Tkacik [Thu, 19 Dec 2013 11:15:18 +0000 (12:15 +0100)]
Fixed bug in discovering JVM loaded case classes during code generation

  - Added debug logging
       - routing table updates
       - rpc router creation, non-routed service registration
         proxy instantiation.

Change-Id: Iab0ad7451382ab8179cff2febf17c19e96daf464
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoMerge "Fixed Bug 250 - bits serialization between Binding Broker and DOM broker"
Ed Warnicke [Wed, 18 Dec 2013 16:10:41 +0000 (16:10 +0000)]
Merge "Fixed Bug 250 - bits serialization between Binding Broker and DOM broker"

10 years agoFixed Bug 250 - bits serialization between Binding Broker and DOM broker
Tony Tkacik [Wed, 18 Dec 2013 13:59:11 +0000 (14:59 +0100)]
Fixed Bug 250 - bits serialization between Binding Broker and DOM broker

  - fixed serialization bug for YANG bits type when crossing brokers
  - Added regression test for bug, based on provided bug report
  - Decreased log level to debug and trace for some code generation
    functionality.

Change-Id: I07982bb7ffefb4350ec4922c02207eb4dc368ab8
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoMD-SAL Statistics Manager - Changed Group/Meter Augmentataion location in operational...
Anil Vishnoi [Tue, 17 Dec 2013 13:28:30 +0000 (18:58 +0530)]
MD-SAL Statistics Manager - Changed Group/Meter Augmentataion location in operational data tree
Also added check, to only entertain multipart responses associated to the multipart request sent
by statistics-manager.

Change-Id: I51b1f4c9245ca30914293add0ea5fbefb3f1945b
Signed-off-by: Anil Vishnoi <avishnoi@in.ibm.com>
10 years agoMerge "Fixed bug in cross-broker RPC routing"
Ed Warnicke [Mon, 16 Dec 2013 15:23:04 +0000 (15:23 +0000)]
Merge "Fixed bug in cross-broker RPC routing"

10 years agoMerge "Fixed union serialization and deserialization"
Ed Warnicke [Fri, 13 Dec 2013 19:54:40 +0000 (19:54 +0000)]
Merge "Fixed union serialization and deserialization"

10 years agoFixed bug in cross-broker RPC routing
Tony Tkacik [Fri, 13 Dec 2013 13:11:03 +0000 (14:11 +0100)]
Fixed bug in cross-broker RPC routing

  - Fixed cross-broker (Binding to DOM) and (DOM to Binding)
    rpc routing by adding explicit routing and invocation strategies

  - Lowered reporting level for fingAugmentableArgument to DEBUG
    so it does not polute logs

  - Extracted and converted RpcProviderRegistry implementation
    from BindingAwareBrokerImpl (Xtend) to RpcProviderRegistryImpl
    (java).

Change-Id: I8339abdc864162c70a149cf59fdbdf97093ae8c0
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoFixed union serialization and deserialization
Tony Tkacik [Fri, 13 Dec 2013 19:04:32 +0000 (20:04 +0100)]
Fixed union serialization and deserialization

Change-Id: I8cd8b325fcea1dfd52e2b4166cf6ba4d9ec866a9
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoMerge "Added more granular error reporting during commit validation."
Ed Warnicke [Thu, 12 Dec 2013 14:41:01 +0000 (14:41 +0000)]
Merge "Added more granular error reporting during commit validation."

10 years agoAdded more granular error reporting during commit validation.
Tony Tkacik [Wed, 11 Dec 2013 15:28:43 +0000 (16:28 +0100)]
Added more granular error reporting during commit validation.

Change-Id: I96a9f2fdd256e1b394d3a21fbaccf16f7350d316
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoMerge "Bug 211 - Fixed codec generation when transitive dependencies (parents) are...
Ed Warnicke [Tue, 10 Dec 2013 19:40:02 +0000 (19:40 +0000)]
Merge "Bug 211 - Fixed codec generation when transitive dependencies (parents) are not available"

10 years agoBug 211 - Fixed codec generation when transitive dependencies (parents) are not available
Tony Tkacik [Tue, 10 Dec 2013 14:21:07 +0000 (15:21 +0100)]
Bug 211 - Fixed codec generation when transitive dependencies (parents) are not available

  - Classloader for each encountered generated class is added to javassist ClassPool
    if not already there, to make sure we have full visibility into supertype hierarchy
    of class

Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
Change-Id: I760b6d53df2e07a9ed5e73fecd655999061cc3be

10 years agoFix to allow RESTCONF PUTing of Flows
Tony Tkacik [Sun, 1 Dec 2013 16:53:21 +0000 (17:53 +0100)]
Fix to allow RESTCONF PUTing of Flows

- Due to a bug in the JAXB spec, which is propogated to
JAXRS, which forbids '/', even escaped, in path segments
in URLs... we can't use the nesting by refs under /flows.

- Therefore I've moved flow config to
nodes -> node -> table -> flow

- Making that change in the existing FlowConsumerImpl proved extremely
hard.  Due to the press of time I've introduced a very simple set of
FlowProvider, FlowCommitHandler, FlowTransaction, FlowTransactionValidator,
to cleanly separate the logic.  We can migrate over the validation rules as
need be.

PatchSet 11: Abstract the Transaction.  Add Groups.
PatchSet 12: Fixes for Meters

PatchSet 13: Yet another rebase

PatchSet 14: Squashing https://git.opendaylight.org/gerrit/#/c/3304/8

Must proceed: http://git.opendaylight.org/gerrit/3596/1
in openflowplugin

Change-Id: I1f1cd04a04f7a30630062725e63112cda4b049f1
Signed-off-by: Ed Warnicke <eaw@cisco.com>
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoMerge "Implementation for enabling remote rpc calls between 2 instances of md-sal"
Ed Warnicke [Mon, 9 Dec 2013 17:39:39 +0000 (17:39 +0000)]
Merge "Implementation for enabling remote rpc calls between 2 instances of md-sal"

10 years agoMerge "Fix for bug 211, where direct write and read of augmentation was not processed...
Ed Warnicke [Mon, 9 Dec 2013 17:10:49 +0000 (17:10 +0000)]
Merge "Fix for bug 211, where direct write and read of augmentation was not processed correctly"

10 years agoFix for bug 211, where direct write and read of augmentation was not processed correctly
Tony Tkacik [Fri, 6 Dec 2013 15:40:56 +0000 (16:40 +0100)]
Fix for bug 211, where direct write and read of augmentation was not processed correctly

  - Fixed TypeNotAvailable issue with end-to-end Openflow

Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
Change-Id: I9797fb4a1b71d456cc9126f98e4f3043e49b5666

10 years agoImplementation for enabling remote rpc calls between 2 instances of md-sal
Tony Tkacik [Thu, 5 Dec 2013 20:51:46 +0000 (21:51 +0100)]
Implementation for enabling remote rpc calls between 2 instances of md-sal

 - This provides implementation for enabling remote rpc calls between 2 instances of md-sal.
   The current implementation enables remote execution of globally unique services in the
   cluster. For details, please refer to this wiki page
   (https://wiki.opendaylight.org/view/Zeromq_connector). This wiki page is a draft.
 - Added relativePath in pom so that parent pom can be found.
 - Removed dependency to sal-infinispan-routingtable
 - Exported "impl" as well from zeromq-routingtable. Fixed dependencies in RouterTest.
 - Removed oss.sonatype release repo from md-sal pom. ODL nexus repo mirrors it.
 - Updated server code to handle exception
 - Server code now uses WB pattern instead of listerner pattern.
 - Fixed pom so that parent can be resolved
 - Rebased due to changed in unmerged dependency
 - Added state machine to RpcSocket.
 - Added unit tests to RpcSocketTest and SocketManagerTest.
 - Added CompositeNode methods to ExampleConsumer & XML files for creation of CompositeNodes
 - Added CompositeNode testcases to RouterTest
 - Translated scala code to java
 - Added code to convert CompositeNode to xml and back to help
 - with serialization.
 - Added more unit and integration tests.

This is squash for:

https://git.opendaylight.org/gerrit/2882
https://git.opendaylight.org/gerrit/3022
https://git.opendaylight.org/gerrit/3028
https://git.opendaylight.org/gerrit/3159

Change-Id: I44739fd8ad61043c2e786875bb7787e3fa68e435
Signed-off-by: Abhishek Kumar <abhishk2@cisco.com>
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
Signed-off-by: Alex Fan <railor33@gmail.com>
10 years agoMerge "Added transactions statistics for BI Broker."
Ed Warnicke [Sat, 7 Dec 2013 23:03:29 +0000 (23:03 +0000)]
Merge "Added transactions statistics for BI Broker."

10 years agoAdded transactions statistics for BI Broker.
Lukas Sedlak [Fri, 6 Dec 2013 13:35:50 +0000 (14:35 +0100)]
Added transactions statistics for BI Broker.

Added implementation of gathering transaction statistics when binding independent broker is used.

Signed-off-by: Lukas Sedlak <lsedlak@cisco.com>
Change-Id: Ia7fb9374575be62bb6bd6b2ace3112d28524bde5

10 years agoMoved IT code to separate project, Fix for Bug 184, created test-jar
Tony Tkacik [Wed, 4 Dec 2013 16:18:11 +0000 (17:18 +0100)]
Moved IT code to separate project, Fix for Bug 184, created test-jar

Change-Id: I9ed91016c93aba64548498b48de6ff1995cee021
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoAdded documentation generator to yang-maven-plugin.
Milos Fabian [Tue, 3 Dec 2013 18:11:43 +0000 (19:11 +0100)]
Added documentation generator to yang-maven-plugin.

Generated html files are located in target/site/models.

Change-Id: I6cc8a8a3a2a7b6c420efaa211ed48c5ad34c0105
Signed-off-by: Milos Fabian <milfabia@cisco.com>
10 years agoMerge "Exposed binding-rpc-registry to config subsystem."
Ed Warnicke [Tue, 3 Dec 2013 12:20:46 +0000 (12:20 +0000)]
Merge "Exposed binding-rpc-registry to config subsystem."

10 years agoExposed binding-rpc-registry to config subsystem.
Tony Tkacik [Tue, 3 Dec 2013 09:26:38 +0000 (10:26 +0100)]
Exposed binding-rpc-registry to config subsystem.

Change-Id: I68920fd7547bab5dd868140322db03366e0d15a3
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoMerge "Fixed serialization of InstanceIdentifier's which contains Augmentation in...
Ed Warnicke [Mon, 2 Dec 2013 20:38:38 +0000 (20:38 +0000)]
Merge "Fixed serialization of InstanceIdentifier's which contains Augmentation in path."

10 years agoFixed serialization of InstanceIdentifier's which contains Augmentation in path.
Tony Tkacik [Mon, 2 Dec 2013 11:46:22 +0000 (12:46 +0100)]
Fixed serialization of InstanceIdentifier's which contains Augmentation in path.

Change-Id: I0ef71ec04eaa14f95fc0f4857254eef506d78bb4
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoAdded transactions statistics support.
Lukas Sedlak [Mon, 2 Dec 2013 11:38:03 +0000 (12:38 +0100)]
Added transactions statistics support.

Added implementation of DataBrokerImplRuntimeMXBean as DataBrokerRuntimeMXBeanImpl;
Modified DataBrokerImplModule with DataBrokerRuntimeMXBeanImpl;
Added "submitted" leaf into opendaylight-md-sal-common.yang;

Signed-off-by: Lukas Sedlak <lsedlak@cisco.com>
Change-Id: I5494c7175b37c14e39d6b2b3d87fccd3358f1a57

10 years agoMerge "Wired ClusteredDataStore with Configuration Subsytem"
Ed Warnicke [Sun, 1 Dec 2013 18:13:32 +0000 (18:13 +0000)]
Merge "Wired ClusteredDataStore with Configuration Subsytem"

10 years agoWired ClusteredDataStore with Configuration Subsytem
Tony Tkacik [Wed, 27 Nov 2013 16:48:30 +0000 (17:48 +0100)]
Wired ClusteredDataStore with Configuration Subsytem

MD-SAL clustered Data Store is available as separete
configurable modules.

Change-Id: I15a98f19dd2eb851e8dfb73a9c4df461e6860db5
Signed-off-by: Moiz Raja <moraja@cisco.com>
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoMerge "Fixed major sonar warnings in Binding Aware Broker"
Ed Warnicke [Sun, 1 Dec 2013 14:34:41 +0000 (14:34 +0000)]
Merge "Fixed major sonar warnings in Binding Aware Broker"

10 years agoFixed major sonar warnings in Binding Aware Broker
Tony Tkacik [Sun, 1 Dec 2013 13:30:02 +0000 (14:30 +0100)]
Fixed major sonar warnings in Binding Aware Broker

Change-Id: I3c5721372778bc963d4fb1d5ff38585a7aa133af
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoMerge "Fixed bug in Data store where multiple readers could overwrite other augmentat...
Ed Warnicke [Sun, 1 Dec 2013 12:25:12 +0000 (12:25 +0000)]
Merge "Fixed bug in Data store where multiple readers could overwrite other augmentations"

10 years agoFixed bug in Data store where multiple readers could overwrite
Tony Tkacik [Sun, 1 Dec 2013 01:39:43 +0000 (02:39 +0100)]
Fixed bug in Data store where multiple readers could overwrite
other augmentations

  - Added configuration / operational data validation - Commit
    with operational data stored in configuration store will fail.
  - Added initial data change event.

Change-Id: I5383cc28286bff98b95b11b63c56cd175ea2c7e9
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoMerge "Fixed Group and Meter RPC model to use MD-SAL routing correctly"
Ed Warnicke [Thu, 28 Nov 2013 10:49:40 +0000 (10:49 +0000)]
Merge "Fixed Group and Meter RPC model to use MD-SAL routing correctly"

10 years agoMerge changes I178e467a,Ia8720c2c
Ed Warnicke [Thu, 28 Nov 2013 10:28:01 +0000 (10:28 +0000)]
Merge changes I178e467a,Ia8720c2c

* changes:
  Mark deprecated methods in DataModification as such
  Remove executable permissions from pom.xml

10 years agoFixed Group and Meter RPC model to use MD-SAL routing correctly
Tony Tkacik [Thu, 28 Nov 2013 08:36:49 +0000 (09:36 +0100)]
Fixed Group and Meter RPC model to use MD-SAL routing correctly

  - Changed RPCs in Group and Meter to use node-context-ref
    instead of node for routing information (same pattern as
    in flow-services).

  - Updated statistics manager to use updated code.

Change-Id: I7e6b156665008fea5814f6cdb16ed8de2511759a
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoMark deprecated methods in DataModification as such
Robert Varga [Thu, 28 Nov 2013 07:30:23 +0000 (08:30 +0100)]
Mark deprecated methods in DataModification as such

Change-Id: I178e467a3885841175755e3e9ff8f977a4276e85
Signed-off-by: Robert Varga <robert.varga@pantheon.sk>
10 years agoMerge "Moved Schema Aware logic from DataStore to SchemaAwareDataStore adapter"
Ed Warnicke [Wed, 27 Nov 2013 21:34:49 +0000 (21:34 +0000)]
Merge "Moved Schema Aware logic from DataStore to SchemaAwareDataStore adapter"

10 years agoMoved Schema Aware logic from DataStore to SchemaAwareDataStore adapter
Tony Tkacik [Wed, 27 Nov 2013 14:45:51 +0000 (15:45 +0100)]
Moved Schema Aware logic from DataStore to SchemaAwareDataStore adapter

    All YANG schema logic necessary for proper function of DataStore
    for all components was moved to separate component which
    provides this functionality unified from one place for multiple
    datastores.

Change-Id: I840f752b03e22047e8a7f3d2b7dbe3026fb087c9
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoMerge "Fixed bug with multiple DataReaders participating in one read operation"
Ed Warnicke [Wed, 27 Nov 2013 12:11:24 +0000 (12:11 +0000)]
Merge "Fixed bug with multiple DataReaders participating in one read operation"

10 years agoFixed bug with multiple DataReaders participating in one read operation
Tony Tkacik [Tue, 26 Nov 2013 18:01:08 +0000 (19:01 +0100)]
Fixed bug with multiple DataReaders participating in one read operation

Change-Id: I562c070acb0b16b1ffe41abb014c22319e1b5f2a
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoFixed two-phase commit bug when change originated in DOM Broker
Tony Tkacik [Mon, 25 Nov 2013 15:58:53 +0000 (16:58 +0100)]
Fixed two-phase commit bug when change originated in DOM Broker

  - DataServiceConnector is now tracking all opened transaction
    in order to prevent creating loop if transaction was
    already forwarded from other broker (DataServiceConnector
    is not publishing it back).
  - Added logging to TwoPhase Commit and Transaction
    forwarding
  - Fixed some warnings regarding wildcards in generics.

Change-Id: I6e3169f20ac84222ed0837735c3ddd95115db38a
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoAdded configuration options to MD-SAL
Tony Tkacik [Tue, 19 Nov 2013 07:27:07 +0000 (08:27 +0100)]
Added configuration options to MD-SAL

   Added default configuration to distribution
   which wires MD-SAL components together.

   Support for configuring wiring of following services:
     - Binding Aware Broker
        - Binding Aware Notification Service
        - Binding Aware Data Broker Service
        - Mapping service
     - Binding Independent Broker
     - Data Store

   Default configuration wires BA Broker, BA Notification service
   BA Data Broker and BI Broker together.

   BA Broker requires now BI Broker to be loaded in order to
   provide datastore functionality right from the beginning.

   Updated integration tests, added new test cases for BA to BI
   integration

Change-Id: I7776bb9b2ed75bd5589757633c17f2466b86a04c
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoFix for Bug 144, Bug 147, 148 - improved codec
Tony Tkacik [Fri, 15 Nov 2013 14:43:43 +0000 (15:43 +0100)]
Fix for Bug 144, Bug 147, 148 - improved codec

  - Added defensive locking mechanism to class generation code
  - Provider's and Consumer's crossing boundatories between
    brokers are blocked util their YANG schema is ready and processed.
  - Added set of APIs to make generated codec contracts and interactions
    more explicit.
  - Extracted augmentation serialization / deserialization to sepparate
    generated codec (one codec per augmentation type).
  - Fixed NPE

Change-Id: I299924e911f63aba1fdeca3debeb8cc80f66f5ac
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoMerge "bug 152"
Ed Warnicke [Tue, 19 Nov 2013 14:24:18 +0000 (14:24 +0000)]
Merge "bug 152"

10 years agoID's are made in sync with openflow specification. Flow/Group/Table/Port/Queue/Meter...
Prasanna Huddar [Tue, 19 Nov 2013 09:07:23 +0000 (14:37 +0530)]
ID's are made in sync with openflow specification. Flow/Group/Table/Port/Queue/Meter all Id's where string. The Spec points to uint32. So all ID have been moved to uint32 type.

Signed-off-by: Prasanna Huddar <prasanna.huddar@ericsson.com>
Change-Id: I75382f32ba715879db25cff1513283035c0d2dfd

10 years agobug 152
David Bainbridge [Mon, 18 Nov 2013 22:38:17 +0000 (14:38 -0800)]
bug 152

add a null check when setting delgates, as when implementations are unregistered, registrations are closed, the delegate is set to null. this was causing a null pointer exception.

Change-Id: Ib37937cee768ba03c61154cc227316d6aef69cb8
Signed-off-by: David Bainbridge <dbainbri@ciena.com>
10 years agoMerge "Fix for Bug 144"
Ed Warnicke [Thu, 14 Nov 2013 21:21:22 +0000 (21:21 +0000)]
Merge "Fix for Bug 144"

10 years agoFix for Bug 144
Tony Tkacik [Thu, 14 Nov 2013 19:07:29 +0000 (20:07 +0100)]
Fix for Bug 144

  - Fixed bug in generated code which tried to access non-existing field
  - Added common root for tests dealing with models and their storage.
  - Added regresion unit test to test situation from original bug report.

Change-Id: If71d5dab8f188c0189aa343859321d238188a76e
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoMerge "Fixed performance issues with implementation of BA-to-BI mapping"
Ed Warnicke [Thu, 14 Nov 2013 12:36:13 +0000 (12:36 +0000)]
Merge "Fixed performance issues with implementation of BA-to-BI mapping"

10 years agoFixed performance issues with implementation of BA-to-BI mapping
Tony Tkacik [Wed, 13 Nov 2013 15:40:24 +0000 (16:40 +0100)]
Fixed performance issues with implementation of BA-to-BI mapping

   Codecs are lazily created on first need when traversing
   boundatories between brokers

Change-Id: I72967babd613ecbc3c9f8f7bd04a4b938f7c0086
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoAdded fix for InstanceIdentifier breakage in SAL-Compatibility
Tony Tkacik [Wed, 13 Nov 2013 17:58:40 +0000 (18:58 +0100)]
Added fix for InstanceIdentifier breakage in SAL-Compatibility

Change-Id: Ib2ac2f87c34c22a08094b085aa20d44121755751
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoMerge "Fixed Restconf bug on reading Operational Data."
Giovanni Meo [Mon, 11 Nov 2013 17:47:01 +0000 (17:47 +0000)]
Merge "Fixed Restconf bug on reading Operational Data."

10 years agoFixed Restconf bug on reading Operational Data.
Ed Warnicke [Mon, 11 Nov 2013 15:55:45 +0000 (09:55 -0600)]
Fixed Restconf bug on reading Operational Data.

Change-Id: If84906b198d6da8c925072e1b444104203caa14c
Signed-off-by: Ed Warnicke <eaw@cisco.com>
10 years agoMerge changes Ifdaf681e,Ifc13df7c
Ed Warnicke [Mon, 11 Nov 2013 14:09:05 +0000 (14:09 +0000)]
Merge changes Ifdaf681e,Ifc13df7c

* changes:
  Fixed merge of entries in mock data store
  Added paths and mediatypes from Restconf draft 02

10 years agoFixed merge of entries in mock data store
Tony Tkacik [Mon, 11 Nov 2013 13:27:23 +0000 (14:27 +0100)]
Fixed merge of entries in mock data store

Change-Id: Ifdaf681ecfc846e58afe0358568e86afe1822b4e
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoMerge "Unified Two Phase Commit implementation, fixed BA to BI connection"
Ed Warnicke [Mon, 11 Nov 2013 12:30:54 +0000 (12:30 +0000)]
Merge "Unified Two Phase Commit implementation, fixed BA to BI connection"

10 years agoUnified Two Phase Commit implementation, fixed BA to BI connection
Tony Tkacik [Sun, 10 Nov 2013 21:45:44 +0000 (22:45 +0100)]
Unified Two Phase Commit implementation, fixed BA to BI connection

  - Unified implementation of Two Phase Commit, Data Reading by abstract
    sal-common-impl.

  - Updated implementation of BA to BI connector to do schema-aware
    serialization / deserialization.

Change-Id: Ibcfa2c4d96e4fa72f1b2499483a2752f62db8b50
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoUpdated MountPoint implementation
Tony Tkacik [Sat, 9 Nov 2013 19:00:28 +0000 (20:00 +0100)]
Updated MountPoint implementation

  - Fixed bug in AbstractDataReadRouter

Change-Id: Ie00387f57328ed5c0e8130e4456be8c1e9f0456d
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoMerge "Bump versions of config-subsystem and netconf-subsystem to 0.2.3-SNAPSHOT...
Ed Warnicke [Fri, 8 Nov 2013 21:02:48 +0000 (21:02 +0000)]
Merge "Bump versions of config-subsystem and netconf-subsystem to 0.2.3-SNAPSHOT. Remove ConfigProvider."

10 years agoBump versions of config-subsystem and netconf-subsystem to 0.2.3-SNAPSHOT.
Maros Marsalek [Fri, 8 Nov 2013 12:15:23 +0000 (13:15 +0100)]
Bump versions of config-subsystem and netconf-subsystem to 0.2.3-SNAPSHOT.
Remove ConfigProvider.

Change-Id: I6d578f5c3b934456cf37a0893e816cfc8d6340f1
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
10 years agoMerge "Unified implementations of BrokerService Proxies which are provided to Consume...
Ed Warnicke [Fri, 8 Nov 2013 10:46:25 +0000 (10:46 +0000)]
Merge "Unified implementations of BrokerService Proxies which are provided to Consumers/Producers."

10 years agoUnified implementations of BrokerService Proxies which are provided to Consumers...
Tony Tkacik [Fri, 8 Nov 2013 00:29:42 +0000 (01:29 +0100)]
Unified implementations of BrokerService Proxies which are provided to Consumers/Producers.

    - Added AbstractBrokerServiceProxy which is Autocloseable,
      and specific for each provider.

      This proxy is convenience wrapper, which keeps track of all
      object listeners retrieved from proxied service,
      so when proxy is closed (deregistered) all registrations
      are also removed.

    - Added concrete implementations of AbstractBrokerServiceProxy
      for Data*Services, Notification*Services and SchemaService
    - Updated implementation of SchemaService to provide notifications
      when new bundle with model is loaded.

Change-Id: I92b67dcb7f376fcf05ea41213aac719c7a3e902e
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoMerge "Updated AbstractDataModification to also implement DataChange"
Ed Warnicke [Thu, 7 Nov 2013 14:53:12 +0000 (14:53 +0000)]
Merge "Updated AbstractDataModification to also implement DataChange"

10 years agoUpdated AbstractDataModification to also implement DataChange
Tony Tkacik [Thu, 7 Nov 2013 14:28:27 +0000 (15:28 +0100)]
Updated AbstractDataModification to also implement DataChange

  - AbstractDataModification now creates DataChange in the background
    during the creation of diff.
    This DataChange is easier for Commit Handlers to read
    and do processing based on more granular changes.

Change-Id: Id0e41c444afa415c804922d0c87650dd50c555f7
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoMerge "Unification of broker concepts implementations"
Ed Warnicke [Thu, 7 Nov 2013 14:06:23 +0000 (14:06 +0000)]
Merge "Unification of broker concepts implementations"

10 years agoUnification of broker concepts implementations
Tony Tkacik [Sun, 3 Nov 2013 19:37:46 +0000 (20:37 +0100)]
Unification of broker concepts implementations

  - Introduced AbstractDataReadRouter into sal-common-impl
    which deals with data read routing.

  - AbstractDataReadRouter is then used inside sal-binding-broker
    to route reads between binding aware components

    and inside sal-dom-broker to route reads inside a mount point
    or between binding independent components.

    Extracted Rpc Routing logic from BrokerImpl.xtend and moved it to
    separate class, which is used in the broker (global context)
    and also in the mount-points (nested subsystems).

Change-Id: I7eaaddafe9f4dcb2ca6d25090246dfd51940b2d7
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoAdded Compatibility for Switch Manager and Topology Manager
Tony Tkacik [Tue, 5 Nov 2013 07:05:13 +0000 (08:05 +0100)]
Added Compatibility for Switch Manager and Topology Manager

  - Created model-topology under controller for easier
    retrieval of topology models (baseline model is ietf draft
    and is present in YANGTools git).
  - Added aggregate topology view
  - Added mapping to inventory

Change-Id: I26d73415bd19478984908d34d77a476a7a842c9f
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoFix {} vs. %s mixup
Robert Varga [Wed, 6 Nov 2013 21:42:13 +0000 (22:42 +0100)]
Fix {} vs. %s mixup

Change-Id: I8aa3d3600c977d7836d0aea8c0d5af30dfcb2004
Signed-off-by: Robert Varga <robert.varga@pantheon.sk>
10 years agoUpdated ZeroMQ implementation
Tony Tkacik [Mon, 28 Oct 2013 18:30:40 +0000 (19:30 +0100)]
Updated ZeroMQ implementation

ZeroMQ implementation listens for rpc service implementations
on one controller node and when new implementation is registered
on controller it announces it via message bus.

The receivers of announcement registers itself as the implementation
of the same service in that node, and delegates actual processing
via message bus to originating controller instance.

This allows for deployment where one controller has a bundle
which provides service A, and other which has bundle which
only consumes service A to cooperate.

Change-Id: If5a2220e05858693db6297a7592893a09021e97d
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoAdded listener for rpc registrations.
Tony Tkacik [Fri, 25 Oct 2013 18:21:47 +0000 (20:21 +0200)]
Added listener for rpc registrations.

Change-Id: I17d4fbcee58b15b2bc34c83f8dce4495f995292d
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoFix configuration for default modules
Maros Marsalek [Wed, 6 Nov 2013 11:44:48 +0000 (12:44 +0100)]
Fix configuration for default modules

Automatically add default modules to jmx, even if they do not use dependencyResolverFactory

Change-Id: I4c1129e02ba6243c3209899a3fba05e6b43055cc
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
10 years agoAdded reuse support to MD-SAL for config subsystem
Tony Tkacik [Mon, 4 Nov 2013 12:32:51 +0000 (13:32 +0100)]
Added reuse support to MD-SAL for config subsystem

Change-Id: I8a61b1d689feab71b750781a398756a2cd0d2547
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoBase integration of Binding Aware Broker with Config Subsystem
Tony Tkacik [Wed, 30 Oct 2013 12:32:29 +0000 (13:32 +0100)]
Base integration of Binding Aware Broker with Config Subsystem

Binding Aware Broker is now initialized via config subsystem
as default module, not bundle activator, this allows for
configurable modules declare BindingAwareBroker and MD-SAL as
one of their dependencies.

MD-SAL is still also available via OSGI registry and provided
Activators.

Change-Id: I81315312b921fcc2317d93e5dcf001174d02b644
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoFix FileNotFound jacoco.exec in sal poms and remove duplicate jacoco
Alissa Bonas [Mon, 28 Oct 2013 16:41:29 +0000 (18:41 +0200)]
Fix FileNotFound jacoco.exec in sal poms and remove duplicate jacoco
setting from pom.

The parent module should not have the jacoco plugin in plugins section, because it causes all the modules, even those without tests to inherit it.
Removed it from parent pom (kept it only in plugins management section)and added it to relevant poms of modules that have tests.

Change-Id: I4d33da1e490a7260d6f7809496dd67d10a45aca9
Signed-off-by: Alissa Bonas <abonas@redhat.com>
10 years agoUpdated implementation of broker (data services, generated code), added Integration...
Tony Tkacik [Wed, 23 Oct 2013 17:13:35 +0000 (19:13 +0200)]
Updated implementation of broker (data services, generated code), added Integration test.

  - Added Javadoc to Bidning Aware APIs
  - Updated implementation of data services
- Added default data store for integration testing
        - added integration test for data modifications and reads
  - Updated implementation of generated RpcRouters to get rid of reflection in cases
    where invoker does not known RPC name, only payload.

Change-Id: I30b8d8b5b4b35ff1879d0a67c2f8717294841063
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoFixed bug when SAL Proxy service was not returned to the consumer
Tony Tkacik [Tue, 22 Oct 2013 15:53:14 +0000 (17:53 +0200)]
Fixed bug when SAL Proxy service was not returned to the consumer

Change-Id: I5ba2e330c86925e8e893734a7f5b64ca1eb4c1e4
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoProper unregistration of provider's session
msunal [Tue, 22 Oct 2013 07:43:28 +0000 (09:43 +0200)]
Proper unregistration of provider's session
- if provider's session is closed, all RPCs from broker are removed

Change-Id: Ie59c19868b340588c2b7114830493986d1be3b6b
Signed-off-by: Martin Sunal <msunal@cisco.com>
10 years agoRefactored implementation of Notification Invoker
Tony Tkacik [Sun, 20 Oct 2013 16:57:33 +0000 (18:57 +0200)]
Refactored implementation of Notification Invoker

sal-binding-broker:
  Refactored implementation of listener invoker to be avoid reflection
  when invoking notification callbacks to avoid reflection.

sal-binding-it:
  Added integration test which tests basic notification scenarios
  such as publishing and receiving notifications using generated
  interfaces.

Change-Id: I7afcf25e6f29608d76143058f2eb6aec12a7ccd2
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoUpdated BindingAware Activators to prevent premature initialization
Tony Tkacik [Thu, 17 Oct 2013 08:26:47 +0000 (10:26 +0200)]
Updated BindingAware Activators to prevent premature initialization

Fixes a bug when BindingAwareActivators loaded in wrong order and
tried to retrieve MD-SAL broker before broker bundle was started.

Change-Id: I87f807974b8581a14b387928a52c2ee2fd83208c
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoFix warnings in poms - duplicate and incorrect dependencies
Alissa Bonas [Wed, 16 Oct 2013 14:12:51 +0000 (17:12 +0300)]
Fix warnings in poms - duplicate and incorrect dependencies

Change-Id: Ia8978555a51ae9be02782b8c70d8867fe2052c7a
Signed-off-by: Alissa Bonas <abonas@redhat.com>
10 years agoUpdated implementation of internal RPC Router for Binding-Aware Broker and added...
Tony Tkacik [Wed, 16 Oct 2013 15:01:47 +0000 (17:01 +0200)]
Updated implementation of internal RPC Router for Binding-Aware Broker and added IT to it

sal-binding-broker:
    Updated implementation of runtime code generator to adhere to RpcRouter contract,
    which is used by binding aware broker for introspection and configuration of runtime generated
    instances without need to use Reflection.

sal-binding-it:
    Added end-to-end integration test which tests following scenarios:
      - Registration of 2 Providers of Flow Service, 1 Consumer
        after registration 4 instances of Flow Service are existing:
         MD-SAL Northbound (runtime generated) - returned to the consumer.
         Optimized RpcRouter (runtime generated) - internal to MD-SAL
         2 implementations supplied by Provider.

      - Test verifies that implementations are not leaked to the Consumer

      - Routing of messages (calls):
         1. Provider 1. registers as provider for Node One, Consumer sends message to Node One, Provider 1. is invoked.
         2. Provider 2. registers as provider for Node Rwo, consumer sends message to Node Two, Provider 2. is invoked.
 3. Provider 1. unregisters as provider for Node One, Provider 2. registers as provider  for Node One,
            Consumer sends message to Node One, Provider 2. is invoked.

Change-Id: I101e26c190cd1770aaff1db974f9b0c341506482
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoRemoved xTend from private packages. Added OSGI-fied XTend to distribution
Tony Tkacik [Tue, 15 Oct 2013 10:41:21 +0000 (12:41 +0200)]
Removed xTend from private packages. Added OSGI-fied XTend to distribution

 - Removed XTend library from Private packages in XTend projects
 - In runtime (distribution) XTend packages are provided by
   OSGI-fied XTend bundle org.opendaylight.yangtools.thirdpary:xtend-lib-osgi:2.4.3

Change-Id: Ib79e678d740ffbcf4c4e5f6c370271af5ca76019
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoFix for breakage regarding DataStoreIdentifiers
Tony Tkacik [Mon, 14 Oct 2013 16:54:03 +0000 (18:54 +0200)]
Fix for breakage regarding DataStoreIdentifiers

Change-Id: I74ec719f5e3be040e6f399a24d2859a0ef89665e
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoUpdated RESTCONF implementation
Tony Tkacik [Mon, 14 Oct 2013 12:43:05 +0000 (14:43 +0200)]
Updated RESTCONF implementation

  - Restconf implementation now implements new SAL readign contracts
    in form of <String,CompositeNode> where String is Restconf version
    of instance identifier.

    Translation of Restconf InstanceIdentifier into Binding-Independent
    Restconf Instance-Identifier is done by ControllerContext class
    which implements stateful translation of identifier based on schema
    context.

    After translation of instence-identifier most of actions maps
    directly to Binding-Independent APIs.

Change-Id: I248470e282826a3f04f6e99f54aae8fd14ea2eb3
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoUpdated Flow Capable Models & AD SAL Compatibility mapping
Tony Tkacik [Sun, 13 Oct 2013 17:20:39 +0000 (19:20 +0200)]
Updated Flow Capable Models & AD SAL Compatibility mapping

  - Updated Inventory notifications of Flow Capable Nodes
  - Updated SAL Compatibility to use XTend for easier readability
    of Model-to-Model Mapping (AD-SAL to MD-SAL)
  - Added Adapter for: AD-SAL Inventory, Read services

Change-Id: I564301cdea66a3b843eb469520ba4383b1e92e23
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoUpdated integration test for broker
Tony Tkacik [Fri, 11 Oct 2013 14:54:31 +0000 (16:54 +0200)]
Updated integration test for broker

Change-Id: Ibcf908c651599890e72b8d2e9c0f137e04d99b49
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoUpdate to MD-SAL models
Tony Tkacik [Wed, 9 Oct 2013 16:56:26 +0000 (18:56 +0200)]
Update to MD-SAL models

Fixed bug in MD-SAL activation

Change-Id: I636d4d7c7b696c68572e94456a87edc358af4850
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoUpdate to MD-SAL APIs
Tony Tkacik [Wed, 9 Oct 2013 10:51:17 +0000 (12:51 +0200)]
Update to MD-SAL APIs

Introduced new Common APIs from which Binding-Aware and Binding-Independent
APIs are derived, this allows to maintain similar contract between
sal-binding-api and sal-dom-api which provides different access to MD SAL.

 - Fixed typos in YANG models
 - Bumped version of YANG Maven Plugin to 0.5.9-SNAPSHOT which now enforces
   valid YANG models
 - Removed OFPort.yang - Part of that model should be part of flow-node-inventory.yang
 - Removed spaces and tabs from various files
 - Updated implementations to adhere to new API definitions.

Change-Id: I5661a76398e8c8d82250de532aef6e5d268123e8
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoFixed most comments from https://git.opendaylight.org/gerrit/#/c/1721/
Ed Warnicke [Tue, 8 Oct 2013 22:34:55 +0000 (17:34 -0500)]
Fixed most comments from https://git.opendaylight.org/gerrit/#/c/1721/

Change-Id: I174a3662b13a3a6f2f07954c2d0c742e98cc5ff2
Signed-off-by: Ed Warnicke <eaw@cisco.com>
10 years agoReworked pom files
Tony Tkacik [Mon, 7 Oct 2013 13:21:28 +0000 (15:21 +0200)]
Reworked pom files

Each pom (artifact) declares it's dependencies (internal and external)
No dependencies declared at parent POM level, only dependency Management.

Also moved the <modules> from distribution/opendaylight to the root pom.xml
distribution/opendaylight now builds entirely from dependencies

I have intentionally left some things in here I think are wrong,
because the goal of this commit is to reproduce the existing build
(which it does, I've checked).  Subsequent commits will clean up other things.

Change-Id: I358bdac1c0f6a59b37a418a811a30235967fdfdc
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoUpdated bundle instructions.
Tony Tkacik [Mon, 7 Oct 2013 12:19:58 +0000 (14:19 +0200)]
Updated bundle instructions.

Change-Id: Id33f04cbab2cad79710c617ad1c342dd6cc2daf9
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>