mdsal.git
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>
10 years agoUpdate to the SAL Data APIs. Added Flow Configuration model
Tony Tkacik [Mon, 7 Oct 2013 11:12:02 +0000 (13:12 +0200)]
Update to the SAL Data APIs. Added Flow Configuration model

Change-Id: I17a10b5651f63ab9bc1d2a2ed64bf6ca8493b418
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoAdded xtend as private package.
Tony Tkacik [Mon, 7 Oct 2013 08:03:42 +0000 (10:03 +0200)]
Added xtend as private package.

Change-Id: Ida3cb56116e7a525d776d576eaea486de5dfb3b3
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoRemove commented out code to fix sonar warnings
Alissa Bonas [Tue, 1 Oct 2013 10:57:18 +0000 (13:57 +0300)]
Remove commented out code to fix sonar warnings

Change-Id: I541069ede01e456824e8e10eb196a34e477bdbd8
Signed-off-by: Alissa Bonas <abonas@redhat.com>
10 years agoFixed incorrect manifests for newly added MD-SAL components
Tony Tkacik [Wed, 2 Oct 2013 09:57:35 +0000 (11:57 +0200)]
Fixed incorrect manifests for newly added MD-SAL components

Change-Id: I03e38cab3301f7ad801c91b777e08c114c28f917
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoAdded Binding-Aware APIs for Mount YANG extension
Tony Tkacik [Tue, 1 Oct 2013 17:34:46 +0000 (19:34 +0200)]
Added Binding-Aware APIs for Mount YANG extension

Change-Id: If9e68625b38962e0f5432d605cb2e0300b217472
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoUpdated SAL Binding APIs
Tony Tkacik [Mon, 30 Sep 2013 13:33:31 +0000 (15:33 +0200)]
Updated SAL Binding APIs

  Data Services
    - Added DataModification contract which is used to track
      reads and writes regarding configuration change.

    - Updated Transaction APIs to use nwe DataModification object
    - Deprecated old APIs for Data Modification which supported
      only one unsubmitted transaction per consumer / provider

  Rpc Services
    - Added Registration for Routed Rpcs
    - Added Registration for Mounted Rpcs

  Util classes
    - Updated implementation of AbstractBindingAwareConsumer
    - Updated implementation of AbstractBindingAwareProvider

Change-Id: I0adb98ae6faf6d214484e4b276d6c3df930ca4e9
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoMigrated dom.BrokerImpl to xtend code.
Tony Tkacik [Wed, 25 Sep 2013 17:02:02 +0000 (19:02 +0200)]
Migrated dom.BrokerImpl to xtend code.

Change-Id: Ibf2a63c2d26be8dfa2f10f5467040dc753418362
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoAdded sal-connector-* skeletons (REST connector, MB, Netconf).
Tony Tkacik [Wed, 25 Sep 2013 16:52:19 +0000 (18:52 +0200)]
Added sal-connector-* skeletons (REST connector, MB, Netconf).

FIxed version of YANG Tools to 0.5.8 release

Change-Id: Id20c9cd8798948f79c655b4d7f8ecad0d1dd392c
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
10 years agoDeclare junit version and use junit dependencyManagement section.
Alissa Bonas [Sun, 29 Sep 2013 11:52:50 +0000 (14:52 +0300)]
Declare junit version and use junit dependencyManagement section.

Change-Id: Ic290c0055ea0b3385d92a493ddc42decc0a4b12f
Signed-off-by: Alissa Bonas <abonas@redhat.com>
10 years agoDeclare version property for maven bundle plugin, reuse it in poms and
Alissa Bonas [Mon, 23 Sep 2013 11:58:34 +0000 (14:58 +0300)]
Declare version property for maven bundle plugin, reuse it in poms and
use version 2.3.7 instead of 2.3.6 and 2.4.0 used in parallel.

Change-Id: I3749f69ea38edbcacbe217386ac8accb19837c50
Signed-off-by: Alissa Bonas <abonas@redhat.com>
10 years agoMoved MD SAL from sal/yang-prototype to md-sal
Tony Tkacik [Mon, 23 Sep 2013 11:54:29 +0000 (13:54 +0200)]
Moved MD SAL from sal/yang-prototype to md-sal

Moved MD SAL sources, artefacts from
 opendaylight/sal/yang-prototype to opendaylight/md-sal

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