10 years agoProcess host pending list on a Cache sync update. 12/812/2
Madhu Venugopal [Wed, 7 Aug 2013 05:27:20 +0000 (22:27 -0700)]
Process host pending list on a Cache sync update.

In a Clustered Controller environment, with switches connected to different controllers, ARP messages originated from
a Controller may not see the ARP reply on the same controller. The ARP response from the Host might end up in another
controller. Hence it is not appropriate to expect responses from host to terminate in the originating controller.
discoverHost is one such method that has this wrong assumption. This fix is to listen to Active Cache update and
trigger a Pending list processing (In addition to existing code that just waits on a Future object for ARP response
on the local controller).

Change-Id: I4223db66ff75bbf4d60011c9581e4dff594c0a9c
Signed-off-by: Madhu Venugopal <>
10 years agoMerge "HA - ARPHandler Event sync"
Giovanni Meo [Wed, 7 Aug 2013 07:41:40 +0000 (07:41 +0000)]
Merge "HA -  ARPHandler Event sync"

10 years agoHA - ARPHandler Event sync 11/811/2
Yevgeny Khodorkovsky [Fri, 2 Aug 2013 23:38:14 +0000 (16:38 -0700)]
HA -  ARPHandler Event sync

- Replay ARP request/reply events across the cluster using cluster
  allocated cache. Then the appropriate controller handles sending the
- Add isUnicastMAC() to NetUtils

Change-Id: I2d2b60348341710ffbd3ffc749ff52869b9c0b3f
Signed-off-by: Yevgeny Khodorkovsky <>
10 years agoMerge "Speed up builds"
Alessandro Boch [Tue, 6 Aug 2013 22:27:46 +0000 (22:27 +0000)]
Merge "Speed up builds"

10 years agoMerge "Small enhancement to ClusteringServicesIT"
Alessandro Boch [Tue, 6 Aug 2013 22:27:33 +0000 (22:27 +0000)]
Merge "Small enhancement to ClusteringServicesIT"

10 years agoMerge "Enhanced"
Alessandro Boch [Tue, 6 Aug 2013 22:27:17 +0000 (22:27 +0000)]
Merge "Enhanced"

10 years agoReplaced updateSwitchConfig() with updateNodeConfig() in loadSwitchConfiguration... 10/810/1
Pramila Singh [Tue, 6 Aug 2013 17:33:31 +0000 (10:33 -0700)]
Replaced updateSwitchConfig() with updateNodeConfig() in loadSwitchConfiguration method of SwitchManager

Change-Id: Ib29f53abc8f914a3d3fedc2eb98658054d6a749c
Signed-off-by: Pramila Singh <>
10 years agoMerge "Controller inventory service doesn't come up - After the commit e55cbeebfe5bae...
Alessandro Boch [Tue, 6 Aug 2013 16:21:29 +0000 (16:21 +0000)]
Merge "Controller inventory service doesn't come up - After the commit e55cbeebfe5bae130becc3facd7c6235a56529ee the InventoryShimService in OF protocol plugin was not coming up because was waiting on a service that was provided by SAL InventoryService, but this was waiting on a service provided by the protocol plugin (a typical circular dependency condition). SAL implementations should never wait on the protocol plugin, rather should track them dynamically. - In InventoryService in protocol plugin the list of pluginOutInventoryServices was initialized during init, but init is called after the necessary dependency have been met, that means that the list may already have the proper listener sets, and those will not be relearnt again. The proper initialization is the instance init, and clearing when the protocol plugin is stopping."

10 years agoSpeed up builds 07/807/1
Giovanni Meo [Tue, 6 Aug 2013 14:27:58 +0000 (16:27 +0200)]
Speed up builds

Skip Unit Test, Integration Tests as well enunciate for the skip UT

Signed-off-by: Giovanni Meo <>
Change-Id: Ibfb05737685d2eecb3d2ecd654a5a179b33f844f

10 years agoSmall enhancement to ClusteringServicesIT 05/805/1
Giovanni Meo [Tue, 6 Aug 2013 14:14:11 +0000 (16:14 +0200)]
Small enhancement to ClusteringServicesIT

- Enhance the clusteringServicesIT to be able to cover the case of the
double update.

Change-Id: Ic28c760ec06dc21ace51bcffb5b79255a289fa1a
Signed-off-by: Giovanni Meo <>
10 years agoEnhanced 04/804/1
Giovanni Meo [Tue, 6 Aug 2013 14:01:08 +0000 (16:01 +0200)]

- Allowing to enable JVM debug for remote troubleshooting and
also to accept extra JVM parameters from command line when launching
the controller.
- Allowing to start the controller in background and to check status
of background process as well to stop a running daemon.

Change-Id: I3bd8d49b513f9379313589e4e4152c304e84f6ea
Signed-off-by: Giovanni Meo <>
10 years agoMerge "Removed 'code-generator' and 'model' projects."
Giovanni Meo [Tue, 6 Aug 2013 13:22:36 +0000 (13:22 +0000)]
Merge "Removed 'code-generator' and 'model' projects."

10 years agoRemoved 'code-generator' and 'model' projects. 03/803/1
Martin Vitez [Tue, 6 Aug 2013 13:09:42 +0000 (15:09 +0200)]
Removed 'code-generator' and 'model' projects.

Updated pom.

Change-Id: I3c9498af4a545215cecc441c995bcb47c6bf82fe
Signed-off-by: Martin Vitez <>
10 years agoController inventory service doesn't come up 01/801/1
Giovanni Meo [Tue, 6 Aug 2013 09:29:25 +0000 (11:29 +0200)]
Controller inventory service doesn't come up
- After the commit e55cbeebfe5bae130becc3facd7c6235a56529ee the
InventoryShimService in OF protocol plugin was not coming up because
was waiting on a service that was provided by SAL InventoryService,
but this was waiting on a service provided by the protocol plugin (a
typical circular dependency condition). SAL implementations should
never wait on the protocol plugin, rather should track them
- In InventoryService in protocol plugin the list of
pluginOutInventoryServices was initialized during init, but init is
called after the necessary dependency have been met, that means that
the list may already have the proper listener sets, and those will not
be relearnt again. The proper initialization is the instance init, and
clearing when the protocol plugin is stopping.

Change-Id: I6ad24cb8e6e9fd5b4ae89a3b2557ec233b86ebed
Signed-off-by: Giovanni Meo <>
10 years agoBugfix: switch removal not notified to FMs 96/796/1
Yevgeny Khodorkovsky [Tue, 6 Aug 2013 04:20:17 +0000 (21:20 -0700)]
Bugfix: switch removal not notified to FMs

This fixes a bug where switch removal event is discarded in OF plugin
because node locality is established incorrectly.

Change-Id: I90f2c27cb0c59af58940433c468502e9900306b6
Signed-off-by: Yevgeny Khodorkovsky <>
10 years agoMerge "OF plugin classes must have a strict dependency on Connection Service"
Chi-Vien Ly [Tue, 6 Aug 2013 04:01:55 +0000 (04:01 +0000)]
Merge "OF plugin classes must have a strict dependency on Connection Service"

10 years agoMerge "Controller MAC to be synced in cluster"
Chi-Vien Ly [Tue, 6 Aug 2013 03:59:43 +0000 (03:59 +0000)]
Merge "Controller MAC to be synced in cluster"

10 years agoOF plugin classes must have a strict dependency on Connection Service 95/795/1
Alessandro Boch [Mon, 5 Aug 2013 22:19:05 +0000 (15:19 -0700)]
OF plugin classes must have a strict dependency on Connection Service

In scaled setup we see NPE in OF protocol plugin code as switches connect before the IPluginOUConnectionService reference is set
- Have OF proto plugin Activator express a required dependency on IPluginOUConnectionService for the interested classes
- Removed stale unused conenction mgr related code from OF plugin classes

Change-Id: If8aa7239d5be0c1c206c3b4d42bfcbbe029b4588
Signed-off-by: Alessandro Boch <>
10 years agoMake the checkstyle artifact a snapshot else it will fail deploy in merge job 93/793/1
Giovanni Meo [Mon, 5 Aug 2013 21:11:55 +0000 (23:11 +0200)]
Make the checkstyle artifact a snapshot else it will fail deploy in merge job

Change-Id: I0d4d5bb76fc1b33786793567a871441b2a340a8d
Signed-off-by: Giovanni Meo <>
10 years agoFactored checkstyle config into it's own mvn project 81/781/3
Ed Warnicke [Sat, 3 Aug 2013 00:04:14 +0000 (19:04 -0500)]
Factored checkstyle config into it's own mvn project

This allows correct handling of multimodule checkstyle as
documented here:

This involved:
- Adding a commons/checkstyle module to hold the space_and_tabs_checks.xml
- Altering commons/opendaylight to use commons/checkstyle
- Altering commons/concepts to use commons/checkstyle
- Altering commons/integrationtest to use commons/checkstyle
- Altering opendaylight/distribution to make sure to build commons/opendaylight
    and commons/checkstyle
- Altering opendaylight/distribution to exclude commons/checkstyle from the
    distribution zip file.

Change-Id: I36c23fc92ab8ec711861c7e9251a63b1aa60fd40
Signed-off-by: Ed Warnicke <>
10 years agoMerge "Test for YANG choices added"
Giovanni Meo [Mon, 5 Aug 2013 11:43:31 +0000 (11:43 +0000)]
Merge "Test for YANG choices added"

10 years agoTest for YANG choices added 89/789/1
Jozef Gloncak [Mon, 5 Aug 2013 11:02:08 +0000 (13:02 +0200)]
Test for YANG choices added

Test for YANG choices was programmed.

Fixed bug:
- in BindingGeneratorImpl was in method addInterfaceDefinition changed
  type of object which contains information about implemented interfaces
  from ReferencedType to GeneratedType

Change-Id: Ie580f74aeebfa53c77e01995ff0f361fb1ec6224
Signed-off-by: Jozef Gloncak <>
10 years agoGeneration of java files from templates 87/787/2
msunal [Mon, 5 Aug 2013 09:09:48 +0000 (11:09 +0200)]
Generation of java files from templates

- generation of classes, interfaces, enums, builders is doing by using Xtend templates
- deleted unnecessary file BuilderClassDescriptor

Change-Id: I385604abdb883f2a1ca927b8e7245a692c179744
Signed-off-by: Martin Sunal <>
10 years agoController MAC to be synced in cluster 79/779/3
Alessandro Boch [Sat, 3 Aug 2013 16:34:23 +0000 (09:34 -0700)]
Controller MAC to be synced in cluster

- Add a new property database for controller properties in switch manager.
  Switch manager maintains the container inventory and we could have
   different controller properties in different container instances.
- Have switch mgr acquire the hardware mac and set the MacAddress
  controller property only if no other controller has already done so
- Removed ReasonCode enum that was old and unused
- Rename SwitchManagerImpl class to SwitchManager as it is already part
  of the implementaiton package

Change-Id: Id3859d0ca7873ea2e3c2f597e0003bd220e90d9a
Signed-off-by: Alessandro Boch <>
10 years agoMerge "Fix to allow Switch configuration modification(Description and Tier) in non...
Alessandro Boch [Fri, 2 Aug 2013 23:24:31 +0000 (23:24 +0000)]
Merge "Fix to allow Switch configuration modification(Description and Tier) in non-default container"

10 years agoFix to allow Switch configuration modification(Description and Tier) in non-default... 80/780/1
Pramila Singh [Fri, 2 Aug 2013 22:35:56 +0000 (15:35 -0700)]
Fix to allow Switch configuration modification(Description and Tier) in non-default container

Change-Id: Id431dc31cfb43a0fb840c456e0d73935f82dfdeb
Signed-off-by: Pramila Singh <>
10 years agoThis is a fix for the latch to countdown in case of exceptions and 78/778/1
Asad Ahmed [Fri, 2 Aug 2013 22:40:33 +0000 (15:40 -0700)]
This is a fix for the latch to countdown in case of exceptions and
error conditions so that we dont wait indefinitely

Change-Id: Ic37adf700d92ce8a0c84726492643d8728d20ad2
Signed-off-by: Asad Ahmed <>
10 years agoFixed a minor bug (replace VLAN enum with string to Configuration map) in the Bridge... 77/777/1
Madhu Venugopal [Fri, 2 Aug 2013 21:22:08 +0000 (14:22 -0700)]
Fixed a minor bug (replace VLAN enum with string to Configuration map) in the Bridge Domain Northbound API.

Change-Id: Id2d3e6df7ef059d5f435409c30300f724b13bd02
Signed-off-by: Madhu Venugopal <>
10 years agoMerge "NorthBound APIs for the Bridge Domain configuration Service. This is the first...
Giovanni Meo [Fri, 2 Aug 2013 15:59:04 +0000 (15:59 +0000)]
Merge "NorthBound APIs for the Bridge Domain configuration Service. This is the first cut NB-APIs and the enunciate documentation will be generated once the Jenkins Verify is complete @"

10 years agoNorthBound APIs for the Bridge Domain configuration Service. 74/774/3
Madhu Venugopal [Fri, 2 Aug 2013 13:59:47 +0000 (06:59 -0700)]
NorthBound APIs for the Bridge Domain configuration Service.
This is the first cut NB-APIs and the enunciate documentation will be generated once the Jenkins Verify is complete

At a high level, the current version supports the following APIs :

1. Connect : PUT http://localhost:8080/controller/nb/v2/networkconfig/bridgedomain/connect/mgmt1/
             Response Data : xml : <node type="STUB" id="mgmt1"/>
                             json: {"@type": "STUB","@id": "mgmt1"}
2. Connect : PUT http://localhost:8080/controller/nb/v2/networkconfig/bridgedomain/connect/STUB/mgmt1/
             Response Data : xml : <node type="STUB" id="mgmt1"/>
                             json: {"@type": "STUB","@id": "mgmt1"}

3. Create Bridge  : POST http://localhost:8080/controller/nb/v2/networkconfig/bridgedomain/bridge/STUB/mgmt1/bridge1
4. Add Port       : POST http://localhost:8080/controller/nb/v2/networkconfig/bridgedomain/port/STUB/mgmt1/bridge1/port1
5. Add Port, Vlan : POST http://localhost:8080/controller/nb/v2/networkconfig/bridgedomain/port/STUB/mgmt1/bridge1/port2/200

Change-Id: Ic55f6bd20859b78a0e004a39388ee358eae5e61a
Signed-off-by: Madhu Venugopal <>
10 years agoMerge "Fix minor bug in FRM proactive flow code path"
Giovanni Meo [Fri, 2 Aug 2013 14:55:00 +0000 (14:55 +0000)]
Merge "Fix minor bug in FRM proactive flow code path"

10 years agoMerge "Increased version of binding-generator to 0.5.5-SNAPSHOT."
Giovanni Meo [Fri, 2 Aug 2013 14:46:34 +0000 (14:46 +0000)]
Merge "Increased version of binding-generator to 0.5.5-SNAPSHOT."

10 years agoMerge "Enhancement in switch configuration"
Giovanni Meo [Fri, 2 Aug 2013 14:28:03 +0000 (14:28 +0000)]
Merge "Enhancement in switch configuration"

10 years agoEnabled classes not in org.opendaylight.controller package to output log. 71/771/1
Hideyuki Tai [Thu, 1 Aug 2013 22:19:08 +0000 (18:19 -0400)]
Enabled classes not in org.opendaylight.controller package to output log.

Change-Id: I81aeda25d698445e069d8e0c12752e42dcc98d17
Signed-off-by: Hideyuki Tai <>
10 years agoMerge "NetworkConfiguration -> BridgeDomain Configuration Service"
Giovanni Meo [Thu, 1 Aug 2013 20:31:06 +0000 (20:31 +0000)]
Merge "NetworkConfiguration -> BridgeDomain Configuration Service"

10 years agoFix minor bug in FRM proactive flow code path 70/770/1
Alessandro Boch [Thu, 1 Aug 2013 19:03:51 +0000 (12:03 -0700)]
Fix minor bug in FRM proactive flow code path

When proactive flows are installed on a switch
(as a result of user configuring the forwarding mode of the node to proactive)
in case switch fails to install any of these flows, the informational log still
reports that the proactive flow was succesfully installed.
When calling addStaticFlowInternal() make sure to pass the restore flag as false

Change-Id: I7f1e85d40624a145c6d71bb1149b14c825894312
Signed-off-by: Alessandro Boch <>
10 years agoIncreased version of binding-generator to 0.5.5-SNAPSHOT. 68/768/2
Martin Vitez [Thu, 1 Aug 2013 15:17:47 +0000 (17:17 +0200)]
Increased version of binding-generator to 0.5.5-SNAPSHOT.

Added dependency on 'yangtools' project. Removed 'yang' dependency. Updated imports.

Change-Id: I7dcc1f7f1ac36a21316b8cdd4ed7a4ad8d4baedc
Signed-off-by: Martin Vitez <>
10 years agoA race condition occurs between ARPHandler and HostTracker if the ARP 64/764/1
Maurice Qureshi [Thu, 1 Aug 2013 04:03:17 +0000 (21:03 -0700)]
A race condition occurs between ARPHandler and HostTracker if the ARP
response comes before the call to the method which is sending the ARP
has returned back to the HostTracker. The result will be that
ARPPendingList will not be processed properly.

Change-Id: If119aed19f0762ff48fde5c9ac687f92fb336f56
Signed-off-by: Maurice Qureshi <>
10 years agoEnhancement in switch configuration 63/763/3
Pramila Singh [Thu, 1 Aug 2013 01:57:23 +0000 (18:57 -0700)]
Enhancement in switch configuration

- Enhance SwitchConfig object to carry any property and not only the three hardcoded fields it has now
- Added removeNodeConfig() and updateNodeConfig() (for adding and modifying) methods to ISwitchConfig
- Deprecated updateSwitchConfig() in favor of updateNodeConfig()
- Deprecated the ISwitchManager.getNodeDescription() in favor of the more extensible existing approach
   of directly requesting the description property
- Bumped switchmanager version number

Change-Id: I000f4b22ec37f9c61fdb5c1ea4e6fdac93811f02
Signed-off-by: Pramila Singh <>
10 years agoNetworkConfiguration -> BridgeDomain Configuration Service 60/760/1
Madhu Venugopal [Wed, 31 Jul 2013 14:35:28 +0000 (07:35 -0700)]
NetworkConfiguration -> BridgeDomain Configuration Service

This commit brings in BridgeDomain Configuration Service under the umbrella of SAL Network Configuration Services.
The idea of this SAL service is to provide a Protocol Plugin agnostic way of configuring Bridge Domains.
SAL NetworkConfiguration services are implemented as a pluggable bundle on its own to showcase the extensibility of SAL layer.
NetworkConfiguration bundle is subdivided into various Services under their own package structure.

Change-Id: I60e12e304bfa9e3200d1e42b3b516a9717a51407
Signed-off-by: Madhu Venugopal <>
10 years agoMerge "Fixed a bug and added a function for operating on MAC addresses."
Giovanni Meo [Wed, 31 Jul 2013 08:02:48 +0000 (08:02 +0000)]
Merge "Fixed a bug and added a function for operating on MAC addresses."

10 years agoFixed a bug and added a function for operating on MAC addresses. 54/754/1
Hideyuki Tai [Wed, 31 Jul 2013 02:50:01 +0000 (22:50 -0400)]
Fixed a bug and added a function for operating on MAC addresses.

- Fixed a bug in longToByteArray6(byte[]) that converted a long number to a byte array in little endian form.
- Added a method to convert a byte array into a long number.

Signed-off-by: Hideyuki Tai <>
10 years agoGracefully stop Host Tracker task threads 53/753/1
Yevgeny Khodorkovsky [Wed, 31 Jul 2013 00:52:39 +0000 (17:52 -0700)]
Gracefully stop Host Tracker task threads

- On bundle stop, stop ARP probe/refresh threads
  to avoid calling stopped services or reading terminated cache.

Change-Id: Ifa1224d1b9e9fbb245844cc8fb1a6d7a02bb5867
Signed-off-by: Yevgeny Khodorkovsky <>
10 years agoStatistics Mgr to avoid unnucessary cache updates 52/752/3
Yevgeny Khodorkovsky [Wed, 31 Jul 2013 00:28:11 +0000 (17:28 -0700)]
Statistics Mgr to avoid unnucessary cache updates

- Update cache only if stats value has changed since last update
- Add hashcode and equals overrides to stats classes

Change-Id: I6cbce35c26ec389efe26e7a53c886b9e4e580ed5
Signed-off-by: Yevgeny Khodorkovsky <>
10 years agoMerge "Fixed a typo on a comment in"
Alessandro Boch [Wed, 31 Jul 2013 00:34:08 +0000 (00:34 +0000)]
Merge "Fixed a typo on a comment in"

10 years agoOpenFlow Protocol_plugin changes to make use of the Connection Manager infrastructure... 49/749/2
Madhu Venugopal [Tue, 30 Jul 2013 21:09:19 +0000 (14:09 -0700)]
OpenFlow Protocol_plugin changes to make use of the Connection Manager infrastructure in order to support
Active-Active Clustering support. Notable changes are :
1. Interested Protocol_plugin services registers with SAL for Connection Service.
2. isLocal API is used by InventoryServiceShim to decide whether or not to advertise the learnt node on a particular controller.
3. isLocal API is used by other services to handle node specific events
4. InventoryService instance can now represent Global inventory in addition to its additional instances being container specific
5. Controller provides the disconnect API to allow the Connection manager disconnect a switch. (Connect API is stubbed out)

Change-Id: I163fa7b14fa998bb4654b01c0a904c1fec09b0bb
Signed-off-by: Madhu Venugopal <>
10 years agoMerge "Connection Manager infrastructure supporting the Clustering Active-Active...
Alessandro Boch [Wed, 31 Jul 2013 00:12:42 +0000 (00:12 +0000)]
Merge "Connection Manager infrastructure supporting the Clustering Active-Active requirement. This commit brings in the following changes : 1. Connection Manager as a functional module that runs above SAL providing common services to various south-bound plugins.    The initial version of Connection Manager takes in Node as the only argument and let the Connection Management Scheme to determine the fate of the connection.    Primary use-case that is addressed here is the HA/Clustering's Active-Active mode with the ability for Nodes to connect to different controller in a cluster."

10 years agoPer container flow statistics filtering to account cFlows 50/750/2
Alessandro Boch [Tue, 30 Jul 2013 22:45:31 +0000 (15:45 -0700)]
Per container flow statistics filtering to account cFlows

ReadServiceFilter in openflow protocol plugin while trying to derive
to which container a flow statistics object belongs, it does not take into
account the container flows (cFlows).
- Have ReadServiceFilter maintain a map of container to container flows
- Have flowBelongToContainer() account the cFlows while filtering the Flow objects
- Changed the other container maps to concurrent maps
- Other minor style changes

Change-Id: I2d41fa2111334d57ef3179e907fea0bf268943e7
Signed-off-by: Alessandro Boch <>
10 years agoFixed a typo on a comment in 51/751/1
Hideyuki Tai [Tue, 30 Jul 2013 23:10:56 +0000 (19:10 -0400)]
Fixed a typo on a comment in

Signed-off-by: Hideyuki Tai <>
10 years agoConnection Manager infrastructure supporting the Clustering Active-Active requirement. 48/748/1
Madhu Venugopal [Tue, 30 Jul 2013 18:05:43 +0000 (11:05 -0700)]
Connection Manager infrastructure supporting the Clustering Active-Active requirement.
This commit brings in the following changes :
1. Connection Manager as a functional module that runs above SAL providing common services to various south-bound plugins.
   The initial version of Connection Manager takes in Node as the only argument and let the Connection Management Scheme to determine the fate of the connection.
   Primary use-case that is addressed here is the HA/Clustering's Active-Active mode with the ability for Nodes to connect to different controller in a cluster.

2. SAL Connection service is implemented as a seperate bundle in order to show case the possibility of SAL being extensible and not a monolith piece of infra.

3. The only API that is exposed now is the isLocal functionality which can be used by Apps and Protocol plugins alike to take care of their individual funcationalities.

The corresponding Protocol-plugin changes will be pushed as a different commit.

Change-Id: I0ffad694b1a21ff4ec7e2139bb81a398412b9de0
Signed-off-by: Madhu Venugopal <>
10 years agoFixed a bug that failed specifying the value 0 on VLAN ID field for a match condition... 47/747/1
Hideyuki Tai [Tue, 30 Jul 2013 17:03:10 +0000 (13:03 -0400)]
Fixed a bug that failed specifying the value 0 on VLAN ID field for a match condition, and enabled to match VLAN untagged frames on OpenFlow switches.

- Fixed MatchType class to allow the value 0 on VLAN ID field for VLAN untagged frames.
- Changed FlowConverter class to convert the value 0 on VLAN ID field of SAL Flow into the value 0xffff of OF Flow, and vice-versa.

Signed-off-by: Hideyuki Tai <>
10 years agoMerge "Added uses to extends list. Groupings in YANG are used through key word uses...
Giovanni Meo [Tue, 30 Jul 2013 15:46:00 +0000 (15:46 +0000)]
Merge "Added uses to extends list. Groupings in YANG are used through key word uses. YANG elements which contains uses "something" are now generated as interface which extends "something"."

10 years agoMerge "Created Yang to Java Builder pattern class generator"
Giovanni Meo [Tue, 30 Jul 2013 15:42:46 +0000 (15:42 +0000)]
Merge "Created Yang to Java Builder pattern class generator"

10 years agoMerge "Fixed bug in resolving of conditional Revision Aware XPath."
Giovanni Meo [Tue, 30 Jul 2013 15:34:21 +0000 (15:34 +0000)]
Merge "Fixed bug in resolving of conditional Revision Aware XPath."

10 years agoMerge "NullPointer Exceptions in HostTracker if ARPHandler is shutdown"
Giovanni Meo [Tue, 30 Jul 2013 15:30:11 +0000 (15:30 +0000)]
Merge "NullPointer Exceptions in HostTracker if ARPHandler is shutdown"

10 years agoMerge "Get/remove inactive hosts"
Giovanni Meo [Tue, 30 Jul 2013 15:27:20 +0000 (15:27 +0000)]
Merge "Get/remove inactive hosts"

10 years agoMerge "Fixed the problem with the Vlan PCP not being passed on to the switch. Also...
Alessandro Boch [Tue, 30 Jul 2013 15:16:22 +0000 (15:16 +0000)]
Merge "Fixed the problem with the Vlan PCP not being passed on to the switch. Also fixed the problem with the Masks not being properly applied when a part of the Vlan TCI like either vlan id or the vlan pcp are being set."

10 years agoMerge "Adding Inactive Static Hosts"
Giovanni Meo [Tue, 30 Jul 2013 15:08:12 +0000 (15:08 +0000)]
Merge "Adding Inactive Static Hosts"

10 years agoAdded uses to extends list. 94/694/4
Jozef Gloncak [Wed, 24 Jul 2013 11:34:28 +0000 (13:34 +0200)]
Added uses to extends list.
Groupings in YANG are used through key word uses. YANG elements which
contains uses "something" are now generated as interface which extends

Change-Id: Icc3db4191876e31cf1d27d9ddc71e4b0702a956f
Signed-off-by: Jozef Gloncak <>
10 years agoFixed the problem with the Vlan PCP not being passed on to the switch. 35/735/1
Asad Ahmed [Mon, 29 Jul 2013 17:44:22 +0000 (10:44 -0700)]
Fixed the problem with the Vlan PCP not being passed on to the switch.
Also fixed the problem with the Masks not being properly applied
when a part of the Vlan TCI like either vlan id or the vlan pcp are being set.

Change-Id: I637a0570ade4e32dde52e555bfdbc1e186da7b1e
Signed-off-by: Asad Ahmed <>
10 years agoNullPointer Exceptions in HostTracker if ARPHandler is shutdown 14/714/1
Maurice Qureshi [Fri, 26 Jul 2013 22:11:29 +0000 (15:11 -0700)]
NullPointer Exceptions in HostTracker if ARPHandler is shutdown

Check for availability of ARPHandler Services in HostTracker. Aslo enhanced

Signed-off-by: Maurice Qureshi <>
10 years agoCreated Yang to Java Builder pattern class generator 02/702/3
msunal [Thu, 25 Jul 2013 11:37:39 +0000 (13:37 +0200)]
Created Yang to Java Builder pattern class generator

- added Xtend tool to dependencies
- created builder xtend class template
- created BuilderClassDescriptor class which is used as source of information in template
- integrated generating of Builder pattern classes for interfaces
- updated jUnit test

Maven generates .java file as a translation of .xtend template into src/main/xtend-gen. Therefore /binding-java-api-generator/src/main/xtend-gen was added into .gitignore file.
If you use Xtend plugin for Eclipse, you should check a configuration of Xtend compiler in Eclipse, whether there is choosen xtend-gen as an output direcotory.

Change-Id: I72e733c7d8f2587848b0e0d32368f7f1700a44d0
Signed-off-by: Martin Sunal <>
10 years agoMerge "Out of Memory when static Routes are configured with unresolved next hop Root...
Madhu Venugopal [Thu, 25 Jul 2013 21:48:40 +0000 (21:48 +0000)]
Merge "Out of Memory when static Routes are configured with unresolved next hop Root cause: This problem happens when there are staticRoutes configured but their next hop IP are unresolved (ie. not responding to ARP Request). spawns a thread requesting hostTracker to discover the host, this thread is waiting forever due to a bug in the thread (HostTrackerCallable) that handles the discovery which never returns since the host is not responding."

10 years agoFixed bug in resolving of conditional Revision Aware XPath. 03/703/1
lsedlak [Thu, 25 Jul 2013 14:13:09 +0000 (16:13 +0200)]
Fixed bug in resolving of conditional Revision Aware XPath.

Fixed implementation in TypeProviderImpl - if leafref references the leaf through the conditional XPath the method will no more returns null but wrapped Type as java.lang.Object.
Added test into GeneratedTypesTest for conditional XPath.
Fixed controller-network-ne.yang - changed name of flow-tables to flow-tables2 - the build should no more fail.
Fixed wrong transformation of yang namespace to java package in case that yang namespace contains numbers right after the "."
Added check into BindingGeneratorUtil - validateJavaPackage.
Refactored and commented

Signed-off-by: Lukas Sedlak <>
10 years agoOut of Memory when static Routes are configured with unresolved next hop 97/697/1
Chi-Vien Ly [Thu, 25 Jul 2013 05:51:03 +0000 (22:51 -0700)]
Out of Memory when static Routes are configured with unresolved next hop
Root cause: This problem happens when there are staticRoutes configured but their
next hop IP are unresolved (ie. not responding to ARP Request). spawns a thread requesting hostTracker to discover the host,
this thread is waiting forever due to a bug in the thread (HostTrackerCallable)
that handles the discovery which never returns since the host is not responding.

- Instead of creating threads dynamically, we create a threadpool of 2 and reuse
  the threads.
- Fix the bug in HostTrackerCallable to sleep(2000) and returns.

Change-Id: Ic04d1dbaf17d5cd6672646050d71abb9885695e9
Signed-off-by: Chi-Vien Ly <>
10 years agoFix a wrong notification in ComponentActivatorAbstractBase 40/640/1
Giovanni Meo [Wed, 24 Jul 2013 11:04:46 +0000 (13:04 +0200)]
Fix a wrong notification in ComponentActivatorAbstractBase

The ComponentActivatorAbstractBase is currently looking for the
"stopping" method on the component that is stopping, during the
"stopped" phase provided by Apache Dependency Manager, while that
should be raised during the "stopping" phase. Correcting the

Change-Id: I1ff703ce071e2f5c80215b748b4f046760445b21
Signed-off-by: Giovanni Meo <>
10 years agoMerge "Fix IPv6 + subnet flow installation"
Chi-Vien Ly [Wed, 24 Jul 2013 03:10:27 +0000 (03:10 +0000)]
Merge "Fix IPv6 + subnet flow installation"

10 years agoMerge "When a node is going down, remove edges in both directions associated with...
Alessandro Boch [Wed, 24 Jul 2013 00:19:33 +0000 (00:19 +0000)]
Merge "When a node is going down, remove edges in both directions associated with the node."

10 years agoMerge "InventoryShim to check node presence, before notifying in container Signed...
Alessandro Boch [Tue, 23 Jul 2013 14:32:04 +0000 (14:32 +0000)]
Merge "InventoryShim to check node presence, before notifying in container Signed-off-by: Pramila Singh <>"

10 years agoMerge "Projects moved under correct parent."
Giovanni Meo [Tue, 23 Jul 2013 12:32:35 +0000 (12:32 +0000)]
Merge "Projects moved under correct parent."

10 years agoProjects moved under correct parent. 16/616/4
Martin Vitez [Fri, 19 Jul 2013 09:15:10 +0000 (11:15 +0200)]
Projects moved under correct parent.

Moved code-generator/maven-yang -> yang/.
Moved code-generator/maven-yang-plugin -> yang/.
Moved code-generator/maven-yang-plugin-it -> yang/.
Moved code-generator/yang-model-parser-api -> yang/.
Moved code-generator/yang-model-parser-impl -> yang/.

Configured site plugin for project. Fixed some javadocs.
Fixed bug in ParserUtils causing NullPointerException.
Fixed bug in resolving uses statement.
Improved tests.

Change-Id: Ia7567544fbe006f0cf87055c6633c04b5ce2c50e
Signed-off-by: Martin Vitez <>
10 years agoFix IPv6 + subnet flow installation 25/625/1
Alessandro Boch [Mon, 22 Jul 2013 21:29:03 +0000 (14:29 -0700)]
Fix IPv6 + subnet flow installation

    ISSUE: Flows matching on IPv6 packets are not installed when a mask is specified
    - Set the proper field in V6Match for subnets
    - Cleanup V6Match to make use of parent OFMatch fields for IPv4 matches
    - Fix subnet methods in NetUtils
    - Fix MatchType and MatchField to consider the network prefix address when
      checking equality and building hashcode for a Match on NW_SRC and NW_DST

Signed-off-by: Alessandro Boch <>
10 years agoMerge "Fixed bug of IPv4 option handling."
Madhu Venugopal [Mon, 22 Jul 2013 23:53:49 +0000 (23:53 +0000)]
Merge "Fixed bug of IPv4 option handling."

10 years agoWhen a node is going down, remove edges in both directions associated with the node. 23/623/1
Jason Ye [Mon, 22 Jul 2013 22:11:59 +0000 (15:11 -0700)]
When a node is going down, remove edges in both directions associated with the node.

Signed-off-by: Jason Ye <>
10 years agoAdded toester demo yang file. 22/622/2
Tony Tkacik [Mon, 22 Jul 2013 14:22:21 +0000 (16:22 +0200)]
Added toester demo yang file.

Signed-off-by: Tony Tkacik <>
10 years agoMerge "Package names for enclosed Types of TOs were changed to fully qualified. Fully...
Ed Warnicke [Sun, 21 Jul 2013 05:51:17 +0000 (05:51 +0000)]
Merge "Package names for enclosed Types of TOs were changed to fully qualified. Fully qualified package names are added to enclosed Types of transport objects. In previous version there was bug (name of enclosing type was missing in package name)."

10 years agoMerge "Fix for Switchmanager Save Configuration. Signed-off-by: Pramila Singh <pramis...
Alessandro Boch [Fri, 19 Jul 2013 23:15:13 +0000 (23:15 +0000)]
Merge "Fix for Switchmanager Save Configuration. Signed-off-by: Pramila Singh <>"

10 years agoFixed bug of IPv4 option handling. 21/621/1
Hideyuki Tai [Fri, 19 Jul 2013 22:05:51 +0000 (18:05 -0400)]
Fixed bug of IPv4 option handling.

Signed-off-by: Hideyuki Tai <>
10 years agoInventoryShim to check node presence, before notifying in container 20/620/1
Pramila Singh [Fri, 19 Jul 2013 20:01:44 +0000 (13:01 -0700)]
InventoryShim to check node presence, before notifying in container
Signed-off-by: Pramila Singh <>
10 years agoMerge "Make statistic queue size configurable via config.ini"
Jason Ye [Fri, 19 Jul 2013 18:06:51 +0000 (18:06 +0000)]
Merge "Make statistic queue size  configurable via config.ini"

10 years agoMerge "Simpleforwarding cache synch doesn't work"
Madhu Venugopal [Fri, 19 Jul 2013 17:54:30 +0000 (17:54 +0000)]
Merge "Simpleforwarding cache synch doesn't work"

10 years agoMake statistic queue size configurable via config.ini 19/619/1
Chi-Vien Ly [Fri, 19 Jul 2013 17:34:58 +0000 (10:34 -0700)]
Make statistic queue size  configurable via config.ini

Currently the queue size is fixed at 64. For large network support, this can't accommodate large network support. This enhancement is to make this size configurable through config.ini. A new system parameter is created "of.statsQueueSize" and is default to 64 (same as today).

Change-Id: I0f9c02ee3228a51ba3ec8ad2047dfff8ddae50a1
Signed-off-by: Chi-Vien Ly <>
10 years agoSimpleforwarding cache synch doesn't work 17/617/1
Giovanni Meo [Fri, 19 Jul 2013 13:36:11 +0000 (15:36 +0200)]
Simpleforwarding cache synch doesn't work

- When Simple forwarding cache syncs the HostNodePair it will cause
exceptions in the clustering services because cannot find HostNodePair
class, this is simply because the Export-Package of SimpleForwarding
bundle was exporting no packages and this was due to the mis-spelling
in the package name.

Change-Id: Iadc6609f0ae9dffc32567c04e034e025dc247584
Signed-off-by: Giovanni Meo <>
10 years agoFix for Switchmanager Save Configuration. 14/614/1
Pramila Singh [Thu, 18 Jul 2013 21:10:41 +0000 (14:10 -0700)]
Fix for Switchmanager Save Configuration.
Signed-off-by: Pramila Singh <>
10 years agoCluster mgr to remove caches when container is destroyed 13/613/1
Alessandro Boch [Thu, 18 Jul 2013 19:47:56 +0000 (12:47 -0700)]
Cluster mgr to remove caches when container is destroyed

DESCRIPTION: When a container is destroyed, cluster manager should clear all the caches
that were allocated in that container.

CHANGE: Have cluster mgr implement IContainerAware and cleanup the caches
on the container destroy notification

Signed-off-by: Alessandro Boch <>
10 years agoMerge "HA - Cache synch for Topology Manager"
Alessandro Boch [Thu, 18 Jul 2013 18:22:44 +0000 (18:22 +0000)]
Merge "HA - Cache synch for Topology Manager"

10 years agoMerge changes I69928220,Ia0704c89
Chi-Vien Ly [Thu, 18 Jul 2013 16:40:27 +0000 (16:40 +0000)]
Merge changes I69928220,Ia0704c89

* changes:
  Change default timeout to 30 sec.
  REST APIs to add/delete ports to/from a subnet.

10 years agoPackage names for enclosed Types of TOs were changed to fully qualified. 12/612/1
Jozef Gloncak [Thu, 18 Jul 2013 12:39:14 +0000 (14:39 +0200)]
Package names for enclosed Types of TOs were changed to fully qualified.
Fully qualified package names are added to enclosed Types of transport
objects. In previous version there was bug (name of enclosing type was
missing in package name).

Signed-off-by: Jozef Gloncak <>
10 years agogroovy node-tree integration 93/593/5
Michal Rehak [Mon, 24 Jun 2013 06:31:00 +0000 (08:31 +0200)]
groovy node-tree integration

fixing groovy tree generating

added params for surefire

lazy node2node map fixing

changed api according to dom usage
added lazy implementation of dom
added unit tests of this dom
changed abstract implementation in yang-data-util according to new api

improved groovy generated tree and testing
removed large testing files
added copyright comments
removed maven-surefire-plugin jConsole argument (plugin fails to start, if property not defined)

Change-Id: I00b9fcbc20ce5d120128940b7b569d7a14628a6e
Signed-off-by: Michal Rehak <>
10 years agoMerge "fix maven warnings regarding missing versions of some plugins"
Giovanni Meo [Thu, 18 Jul 2013 08:02:01 +0000 (08:02 +0000)]
Merge "fix maven warnings regarding missing versions of some plugins"

10 years agoMerge "YANG typedefs generation as class with extends key word In case that YANG...
Giovanni Meo [Thu, 18 Jul 2013 08:00:28 +0000 (08:00 +0000)]
Merge "YANG typedefs generation as class with extends key word In case that YANG typedef isn't specified as base type then corresponding class will be generated with EXTENDS key word and corresponding extended class."

10 years agoMerge "Added more descriptive parsing exceptions."
Giovanni Meo [Thu, 18 Jul 2013 07:59:42 +0000 (07:59 +0000)]
Merge "Added more descriptive parsing exceptions."

10 years agoChange default timeout to 30 sec. 11/611/1
Jason Ye [Thu, 18 Jul 2013 04:55:55 +0000 (21:55 -0700)]
Change default timeout to 30 sec.

Signed-off-by: Jason Ye <>
10 years agoHA - Cache synch for Topology Manager 09/609/4
Yevgeny Khodorkovsky [Wed, 17 Jul 2013 18:12:10 +0000 (11:12 -0700)]
HA - Cache synch for Topology Manager

- Allocate/retrieve cluster cache for topology mgr caches
- Remove destroyCache from bundle shutdown callbacks
  in HostTracker, TopologyMgr and StaticRouting
- Style fixes

Change-Id: I352f5cb4cfab8fd06b15be708cf07ae1ef64c9bf
Signed-off-by: Yevgeny Khodorkovsky <>
10 years agoMerge "Fix for maintaining properties for non-default container. Signed-off-by:...
Alessandro Boch [Thu, 18 Jul 2013 01:50:50 +0000 (01:50 +0000)]
Merge "Fix for maintaining  properties for non-default container. Signed-off-by: Pramila Singh <>"

10 years agoREST APIs to add/delete ports to/from a subnet. 10/610/1
Jason Ye [Thu, 18 Jul 2013 01:32:14 +0000 (18:32 -0700)]
REST APIs to add/delete ports to/from a subnet.

Signed-off-by: Jason Ye <>
10 years agoMerge "Fix for bug 28 Updated surefi...
Alessandro Boch [Thu, 18 Jul 2013 01:04:32 +0000 (01:04 +0000)]
Merge "Fix for bug 28 Updated surefire and failsafe plugin configurations to set heap to 1gb and permgen to 256mb.  These settings allow the Northbound integration tests to pass in both unit test and integration modes."

10 years agoMerge "Changes in DiscoveryService to cope with recently introduced HA active-active...
Alessandro Boch [Wed, 17 Jul 2013 21:04:51 +0000 (21:04 +0000)]
Merge "Changes in DiscoveryService to cope with recently introduced HA active-active model: - Fixed logic in addEdge() when discovery pkt is received. - Added retry mechanism for newly added ports. - Added some user configurable parameters in config.ini."

10 years agoChanges in DiscoveryService to cope with recently introduced HA active-active model: 08/608/1
Jason Ye [Wed, 17 Jul 2013 15:12:03 +0000 (08:12 -0700)]
Changes in DiscoveryService to cope with recently introduced HA active-active model:
- Fixed logic in addEdge() when discovery pkt is received.
- Added retry mechanism for newly added ports.
- Added some user configurable parameters in config.ini.

Signed-off-by: Jason Ye <>
10 years agoFix null pointer exception in FRM 07/607/1
Alessandro Boch [Wed, 17 Jul 2013 01:55:46 +0000 (18:55 -0700)]
Fix null pointer exception in FRM

Signed-off-by: Alessandro Boch <>