controller.git
9 years agoAdded following mapping: 22/522/10
Jozef Gloncak [Wed, 26 Jun 2013 09:45:12 +0000 (11:45 +0200)]
Added following mapping:
from:
- subelement >>PATTERN<< of YANG build-in type string
to:
- constant list string >>PATTERN_CONSTANTS<< which contains list of regular expressions specified in >>PATTENR<<
- member class attribute >>patterns<< which is list of Pattern objects.

Change-Id: I47ec9f4a5cd3e7eef85b78189a3788dd2f9e007f
Signed-off-by: Jozef Gloncak <jgloncak@cisco.com>
9 years agoMerge "Added StatusCode to Response.Status Mapping"
Alessandro Boch [Thu, 27 Jun 2013 19:49:20 +0000 (19:49 +0000)]
Merge "Added StatusCode to Response.Status Mapping"

9 years agoMerge "HA - Cache sync for forwarding.staticrouting"
Alessandro Boch [Thu, 27 Jun 2013 19:48:16 +0000 (19:48 +0000)]
Merge "HA - Cache sync for forwarding.staticrouting"

9 years agoRefactor ForwardingRulesmanager 18/518/4
Alessandro Boch [Fri, 21 Jun 2013 17:09:11 +0000 (10:09 -0700)]
Refactor ForwardingRulesmanager

- Refactor flow entries database in order to remove synchronized methods which hit performance and
  to better accomodate cluster cache syncing:
  - Installed entries as a flat concurrent map of FlowInstallEntry key/elements
  - Modified FlowEntry hashCode function to take into account only the flow parameters which uniquely identify
    a flow entry: node, match and priority. Modified FlowEntryInstall hashCode function to only account install
    FlowEntry hash code.
  - Added a per node and per group index databases for efficiently access node or group flow entries in the flat map
  - Fixed bugs in MatchField hashcode (did not account MAC addresses), added Junit test for hashcode in Match,
    FlowEntry and FlowEntryInstall
- Have flow entries parameter classes implement Serializable so that FRM flow DB is synced across cluster cntroller nodes
- Added api to remove all flows part of a group, uninstallFlowEntryGroup()
- Added a event handler thread in FRM so that FRM does not hog switch handler thread on southbound events processing
- Changed the installation of startup configured static flows from synchronous to asynchronous flow install
- Modified FlowConfig.isValid() to return a status object, changed test code accordingly
- Fixed issue where internal generated static flows (the ones for proactive forwarding switches) were getting removed on container creation
- Fixed Flows GUI which was not showing static flow state correctly
- Minor coding style changes
- Changes tested with 2K static flows on two software switches with a custer of two controllers

Change-Id: Ic4c0167094988c0ebd44763e45541fe728d95ead
Signed-off-by: Alessandro Boch <aboch@cisco.com>
9 years agoMerge "Bumped version of YANG tools to 0.5.3-SNAPSHOT"
Ed Warnicke [Thu, 27 Jun 2013 16:06:14 +0000 (16:06 +0000)]
Merge "Bumped version of YANG tools to 0.5.3-SNAPSHOT"

9 years agoMerge "Fixed bug in GeneratedPropertyBuilderImpl."
Ed Warnicke [Thu, 27 Jun 2013 16:05:54 +0000 (16:05 +0000)]
Merge "Fixed bug in GeneratedPropertyBuilderImpl."

9 years agoFixed bug in GeneratedPropertyBuilderImpl. 29/529/1
lsedlak [Thu, 27 Jun 2013 14:26:15 +0000 (16:26 +0200)]
Fixed bug in GeneratedPropertyBuilderImpl.

Default value for GeneratedProperty is set to true;
Added extends of AbstractBaseType for EnumerationBuilderImpl, AnnotationTypeBuilderImpl, AbstractGeneratedTypeBuilder and AbstractGeneratedType;

Signed-off-by: Lukas Sedlak <lsedlak@cisco.com>
9 years agoBumped version of YANG tools to 0.5.3-SNAPSHOT 27/527/1
Tony Tkacik [Thu, 27 Jun 2013 10:56:15 +0000 (12:56 +0200)]
Bumped version of YANG tools to 0.5.3-SNAPSHOT

Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
9 years agoAdded StatusCode to Response.Status Mapping 25/525/1
Pramila Singh [Thu, 27 Jun 2013 00:26:53 +0000 (17:26 -0700)]
Added StatusCode to Response.Status Mapping

Signed-off-by: Pramila Singh <pramisin@cisco.com>
9 years agoTopology discovery is broken in Active/Active controllers 26/526/1
Alessandro Boch [Thu, 27 Jun 2013 00:25:55 +0000 (17:25 -0700)]
Topology discovery is broken in Active/Active controllers

    ISSUE: Edges which endpoints are managed by different controllers cannot be discovered
           This happens because Discovery discards LLDP frames coming from non-local node connectors
    CHANGES:
    - in processDiscoveryPacket():
      + do not discard LLDP frames coming in from non-local node connectors
      + after discovering an edge, put it in the timeout map (pendingMap) keyed by the incoming port (tail node connector)
    - in doDiscovery():
      + do not add local node connectors to the timeout map (pendingMap)
        This map now contains the time (ticks) elapsed since last LLDP frame was received on the respective node connector.
    - Some style and minor static analysis fix changes

Signed-off-by: Alessandro Boch <aboch@cisco.com>
9 years agoMerge "Performance improvements:"
Alessandro Boch [Wed, 26 Jun 2013 23:47:32 +0000 (23:47 +0000)]
Merge "Performance improvements:"

9 years agoHA - Cache sync for forwarding.staticrouting 23/523/1
Diti Bhatia [Wed, 26 Jun 2013 18:45:28 +0000 (11:45 -0700)]
HA - Cache sync for forwarding.staticrouting

Signed-off-by: Diti Bhatia <dibhatia@cisco.com>
9 years agoMerge "Added support for parsing yang models with already resolved context."
Ed Warnicke [Wed, 26 Jun 2013 12:52:16 +0000 (12:52 +0000)]
Merge "Added support for parsing yang models with already resolved context."

9 years agoMerge "Added YANG models for base concepts in the controller"
Ed Warnicke [Wed, 26 Jun 2013 12:51:58 +0000 (12:51 +0000)]
Merge "Added YANG models for base concepts in the controller"

9 years agoAdded support for parsing yang models with already resolved context. 19/519/4
Martin Vitez [Mon, 24 Jun 2013 09:48:14 +0000 (11:48 +0200)]
Added support for parsing yang models with already resolved context.

Added rebuild method to AugmentationTargetBuilder interface to support augmentation of resolved context.
Refactored YangParserImpl to improve readability, internal utility methods moved to ParserUtils class.
Added test to check parsing with context.
Added YangErrorListener to redirect antlr4 error messages from standard error output to logger.
Added more javadocs.

Change-Id: I838646cc4b3593a03420c1b578ee39c043f89e3d
Signed-off-by: Martin Vitez <mvitez@cisco.com>
9 years agoAdded YANG models for base concepts in the controller 97/497/5
Tony Tkacik [Tue, 11 Jun 2013 16:28:05 +0000 (18:28 +0200)]
Added YANG models for base concepts in the controller

  - Added model parent project and model-ietf parent project
  - Added ietf-inet-types and ietf-yang-types YANG modules
    to generate base types defined in YANG
  - Added prototype of topology model in YANG
  - Updated maven sal api gen plugin tu support loading YANG files
    from dependencies.

Change-Id: Id70ef8afd02fbe9d4da5fa844cebe8cb80c3725c
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
9 years agoPerformance improvements: 21/521/1
Jason Ye [Wed, 26 Jun 2013 06:24:00 +0000 (23:24 -0700)]
Performance improvements:

Solution: Use LinkedBlockingQueue with fixed capacity. The MAXQUEUESIZE is now set to 50,000. With the change, the system become stable.

Solution: Implemented more efficient way to compute header checksum. As a result, the throughout has more than doubled.See test results below. Used Cbench for testing.

Before:
RESULT: 16 switches 9 tests min/max/avg/stdev =
9598.35/10395.48/10193.23/225.24 responses/s

After:
RESULT: 16 switches 9 tests min/max/avg/stdev =
28767.44/32073.92/30335.74/999.70 responses/s

Solution: Transmit messages in a tight while loop until the Tx queue is empty.

Signed-off-by: Jason Ye <yisye@cisco.com>
9 years agoMerge "Bug #25: Installing/removing flows with ".""
Alessandro Boch [Tue, 25 Jun 2013 13:55:09 +0000 (13:55 +0000)]
Merge "Bug #25: Installing/removing flows with ".""

9 years agoBug #25: Installing/removing flows with "." 20/520/1
Kalvin Hom [Mon, 24 Jun 2013 20:43:23 +0000 (13:43 -0700)]
Bug #25: Installing/removing flows with "."

Fix for bug #25:
Cannot remove or install flows that have a "."
in their name
http://bugs.opendaylight.org/show_bug.cgi?id=25

By default @RequestMapping is parsing for file
extension types, so anything after the "." gets
lost in the flow name.  This overrides that
behavior so the whole name in "a.b" is used.

Change-Id: I4aeba037aa34e3b61190c91cf43e599969fe5106
Signed-off-by: Kalvin Hom <kahom@cisco.com>
9 years agoMerge "Host updates for Topology"
Alessandro Boch [Mon, 24 Jun 2013 18:09:14 +0000 (18:09 +0000)]
Merge "Host updates for Topology"

9 years agoUI Fix: device popup not appearing 17/517/1
Yevgeny Khodorkovsky [Sat, 22 Jun 2013 01:53:33 +0000 (18:53 -0700)]
UI Fix: device popup not appearing

Change-Id: I8092201c7853823b87b6e98386c048aa238c7b54
Signed-off-by: Yevgeny Khodorkovsky <ykhodork@cisco.com>
9 years agoHost updates for Topology 05/505/2
Kalvin Hom [Wed, 19 Jun 2013 23:02:26 +0000 (16:02 -0700)]
Host updates for Topology

new HostTracker will now properly update
topologyManager when hosts get added/removed.
UI's diagram will now show the hosts.

Change-Id: Ia7b4b9c97fc979fec5cfe147c050c303c06a0add
Signed-off-by: Kalvin Hom <kahom@cisco.com>
9 years agoMerge "HostTracker StaticHost changes"
Alessandro Boch [Thu, 20 Jun 2013 23:56:20 +0000 (23:56 +0000)]
Merge "HostTracker StaticHost changes"

9 years agoMerge "Extended binding-model-api to support of Enclosed Generated Types and TOs."
Alessandro Boch [Thu, 20 Jun 2013 23:50:01 +0000 (23:50 +0000)]
Merge "Extended binding-model-api to support of Enclosed Generated Types and TOs."

9 years agoMerge "Fix container authorization - front end"
Alessandro Boch [Thu, 20 Jun 2013 16:02:26 +0000 (16:02 +0000)]
Merge "Fix container authorization - front end"

9 years agoExtended binding-model-api to support of Enclosed Generated Types and TOs. 08/508/2
lsedlak [Wed, 19 Jun 2013 15:26:23 +0000 (17:26 +0200)]
Extended binding-model-api to support of Enclosed Generated Types and TOs.

Added javadocs for whole binding-model-api project (including builders);
Refactored model structure for MethodSignature - added TypeMember interface which extracts common functionality for methods and properties.
MethodSignature and GeneratedProperty now extends TypeMember.
Added TypeMemberBuilder interface.

In Binding-generator-util project Refactored whole Building mechanism - removed code duplicities and added more abstraction layeres for abstract builders.
Automaticly modified all dependant project java files that uses binding-model-api.
Added isAbstract flag method into GeneratedType interface and setAbstract method into GeneratedTypeBuilder to notify if generated type (class) is declared as abstract.
Added isAbstract flag method into MethodSignature interface and setAbstract method into MethodSignatureBuilder to notify if generated method is declared as abstract.
Fixed bug (bad typecast) when resolving Identityref type definition in TypeProviderImpl in binding-generator-impl.

Added Support to generate Bits types - JG.

Change-Id: I983cdad79c8779940e75937f97ba0575e753830e
Signed-off-by: Lukas Sedlak <lsedlak@cisco.com>
Signed-off-by: Jozef Gloncak <jgloncak@cisco.com>
9 years agoAdd Packet code for vlan tagged ethernet frames 07/507/1
Tetsuhiro Sato [Wed, 19 Jun 2013 23:59:52 +0000 (16:59 -0700)]
Add Packet code for vlan tagged ethernet frames
also Fix bug in BitBufferHelper.java

Change-Id: I64d5787a44772d1c93ddb3c6fbc58eba55e07160

Signed-off-by: Tetsuhiro Sato <tetsusat@cisco.com>
9 years agoFix container authorization - front end 04/504/1
Yevgeny Khodorkovsky [Wed, 19 Jun 2013 22:43:27 +0000 (15:43 -0700)]
Fix container authorization - front end

This complements commit 168aaa8d2474bc82f1fac82521cf93e53e362df7

Change-Id: I40c32907050da81902065e5d73e0213f20a05252
Signed-off-by: Yevgeny Khodorkovsky <ykhodork@cisco.com>
9 years agoMerge "Added validation of range and length constraints. Fixed base range constraints...
Ed Warnicke [Wed, 19 Jun 2013 17:40:16 +0000 (17:40 +0000)]
Merge "Added validation of range and length constraints. Fixed base range constraints of yang uint built-in types. Made rpc input and output statement optional. Changed formatting of files to conform new sun_coding_style template. Added more tests."

9 years agoMerge "Fix collateral caused by split of UserManager in api and implementation"
Madhu Venugopal [Wed, 19 Jun 2013 03:40:42 +0000 (03:40 +0000)]
Merge "Fix collateral caused by split of UserManager in api and implementation"

9 years agoHostTracker StaticHost changes 01/501/1
Kalvin Hom [Wed, 19 Jun 2013 00:08:53 +0000 (17:08 -0700)]
HostTracker StaticHost changes

Added "staticHost" attribute for Device
so ported HostTracker can distinguish
between dynamically discovered hosts
and static hosts given through the API.

Implemented the add/remove/get static host
methods.

Change-Id: I1374b6c40919c6f31b48c8191bf2021620a9509d
Signed-off-by: Kalvin Hom <kahom@cisco.com>
9 years agoFix collateral caused by split of UserManager in api and implementation 99/499/1
Alessandro Boch [Tue, 18 Jun 2013 15:27:01 +0000 (08:27 -0700)]
Fix collateral caused by split of UserManager in api and implementation

    - Login into web UI is broken in presence of multiple controller because
      infinispan fails marshalling cache for ActiveUser and exception is thrown.
      This is because ActiveUser class is not visible, being part of user manage
      implementation, not being exported.
    - Proposed fix is to move ActiveUsers class in user manager api.
      Also moved respective Junit.

Signed-off-by: Alessandro Boch <aboch@cisco.com>
9 years agoThe reverse method in Match clones the current object and swaps the reversible match... 96/496/1
Madhu Venugopal [Tue, 18 Jun 2013 07:51:11 +0000 (00:51 -0700)]
The reverse method in Match clones the current object and swaps the reversible match fields.
While doing so, it fails to reset the field in the cloned object if the corresponding reversible field is not present.

Change-Id: I0a2356ac9d4f0306f77afa2c3aa7908277c4c30e
Signed-off-by: Madhu Venugopal <vmadhu@cisco.com>
9 years agoUpdate visual topology adjacency data structure 95/495/1
Andrew Kim [Tue, 18 Jun 2013 01:06:43 +0000 (20:06 -0500)]
Update visual topology adjacency data structure

Add additional field to each adjacency. The source node port description
and the destination node port description.

Signed-off-by: Andrew Kim <andrekim@cisco.com>
9 years agoMerge "Adding container authorization code in web bundles"
Madhu Venugopal [Mon, 17 Jun 2013 21:39:29 +0000 (21:39 +0000)]
Merge "Adding container authorization code in web bundles"

9 years agoFix CacheUpdateAware mechanism in cluster.services-implementation 93/493/1
Giovanni Meo [Mon, 17 Jun 2013 14:57:43 +0000 (16:57 +0200)]
Fix CacheUpdateAware mechanism in cluster.services-implementation
bundle

- Add the logic for clustering.services_implementation bundle to track
all the ICacheUpdateAware services and to relate them to a container
or a global context. Make sure to be able to handle the service
registering and unregistering case. In case of
registration/deregistration of an ICacheUpdateAware check for the
"cacheNames" property and then use it for learning for what caches the
updates will be generated. Also make sure in phase of registration if
there is an attempt to override a registration for an existing cache
to avoid it and to raise an error message.
- Given the LDAP filter that allows to track for the global
ICacheUpdateAware services match also the per-container ones, make
sure that ClusterGlobalManager filter them out before reaching the
ClusterManagerCommon, in fact that would prevent to handle seamlessly
the case of cache name being the same in global context as well
per-container.
- Removed stale OSGi declarative service file in
clustering.services-implementation bundle.
- Created extensive integration test case for clustering.services to
make sure the logic is correct and automatically tested.
- Added two new ServiceHelper methods that allow to register and OSGi
service and to get back a ServiceRegistration, extremely useful in
integration tests to test difference between when a service is present
and when it's gone.
- Added logback.xml for the unit tests of
clustering.services-implementation bundle to avoid to print out infos
while executing the unit test that would be useless
- Modified ClusteringServicesIT to use the versionAsInProject on all
the configured bundles, so to avoid too much manual sync process
between the versions in the POM and in the configuration

Change-Id: Id1ae2e22e2896df686a377fd3ae9f232f3545bca
Signed-off-by: Giovanni Meo <gmeo@cisco.com>
9 years agoAdded validation of range and length constraints. 92/492/1
Martin Vitez [Mon, 17 Jun 2013 13:04:54 +0000 (15:04 +0200)]
Added validation of range and length constraints.
Fixed base range constraints of yang uint built-in types. Made rpc input and output statement optional.
Changed formatting of files to conform new sun_coding_style template. Added more tests.

Signed-off-by: Martin Vitez <mvitez@cisco.com>
9 years agoMerge "Recent Usermanager impl and api split broke Web UI. Fixing it here."
Alessandro Boch [Sat, 15 Jun 2013 16:09:37 +0000 (16:09 +0000)]
Merge "Recent Usermanager impl and api split broke Web UI. Fixing it here."

9 years agoMerge "Add IfNewHostNotify to DeviceManager"
Giovanni Meo [Sat, 15 Jun 2013 09:14:15 +0000 (09:14 +0000)]
Merge "Add IfNewHostNotify to DeviceManager"

9 years agoRecent Usermanager impl and api split broke Web UI. Fixing it here. 91/491/1
Madhu Venugopal [Sat, 15 Jun 2013 01:24:17 +0000 (18:24 -0700)]
Recent Usermanager impl and api split broke Web UI. Fixing it here.

Change-Id: Id34831eeda5593aed996d731af0907bda8fd7a18
Signed-off-by: Madhu Venugopal <vmadhu@cisco.com>
9 years agoAdding container authorization code in web bundles 90/490/1
Alessandro Boch [Sat, 15 Jun 2013 00:16:01 +0000 (17:16 -0700)]
Adding container authorization code in web bundles

- This is for passing the front-end the privilege the current user has on the container and for enforcing the authorization filter in the web bundles rest api handlers.

Signed-off-by: Alessandro Boch <aboch@cisco.com>
9 years agoMerge "Changed sun_coding_style.xml to have 120 line wrap instead of 80"
Bhushan Kanekar [Fri, 14 Jun 2013 22:39:28 +0000 (22:39 +0000)]
Merge "Changed sun_coding_style.xml to have 120 line wrap instead of 80"

9 years agoChanged sun_coding_style.xml to have 120 line wrap instead of 80 89/489/1
Ed Warnicke [Fri, 14 Jun 2013 19:15:30 +0000 (14:15 -0500)]
Changed sun_coding_style.xml to have 120 line wrap instead of 80

See thread on controller-dev starting here:
https://lists.opendaylight.org/pipermail/controller-dev/2013-June/000673.html

Signed-off-by: Ed Warnicke <eaw@cisco.com>
9 years agoMerge "Disable unit tests on integration tests plugin"
Ed Warnicke [Fri, 14 Jun 2013 19:12:47 +0000 (19:12 +0000)]
Merge "Disable unit tests on integration tests plugin"

9 years agoDisable unit tests on integration tests plugin 88/488/2
Giovanni Meo [Fri, 14 Jun 2013 13:08:44 +0000 (15:08 +0200)]
Disable unit tests on integration tests plugin

- This patch disable unit tests to be even looked on the integration
tests bundles, so that we are sure that integration tests are only
looked by failsafe and so they can be disabled without impacting unit
tests.

Change-Id: I54a5c1f81e04ea9ebb0c4d398d214b7a93148ffc
Signed-off-by: Giovanni Meo <gmeo@cisco.com>
9 years agoMerge "Parents pom distribution"
Ed Warnicke [Fri, 14 Jun 2013 18:53:08 +0000 (18:53 +0000)]
Merge "Parents pom distribution"

9 years agoAdd IfNewHostNotify to DeviceManager 84/484/2
Kalvin Hom [Fri, 14 Jun 2013 01:25:52 +0000 (18:25 -0700)]
Add IfNewHostNotify to DeviceManager

Small changes so that DeviceManager uses
IfNewHostNotify as listener to pass new
host info.  SimpleForwardingManager app should
now function, creating flows and allowing hosts
to ping each other.

Change-Id: I457696238c9bd14d7b897ef76dbbf8c738578329
Signed-off-by: Kalvin Hom <kahom@cisco.com>
9 years agoMerge "Enable checkstyle for other non-source files"
Jason Ye [Fri, 14 Jun 2013 16:01:14 +0000 (16:01 +0000)]
Merge "Enable checkstyle for other non-source files"

9 years agoSubnets Northbound integration tests. 85/485/5
patrichu [Fri, 14 Jun 2013 05:52:31 +0000 (22:52 -0700)]
Subnets Northbound integration tests.

Change-Id: I8dc1017565b8e0f7aef72e01c915fa479458f1d8
Signed-off-by: patrichu <patrichu@cisco.com>
9 years agoEnable checkstyle for other non-source files 74/474/2
Giovanni Meo [Thu, 13 Jun 2013 10:00:36 +0000 (12:00 +0200)]
Enable checkstyle for other non-source files

Just to make sure there is uniformity of threatment, also other files
are being exposed to checkstyle, limited to space and tabs rules.
Along with the rules, bulk changing the code to avoid breakages in the
build.

Change-Id: I11c6a10d00fc7fc6a14d41369e2a39fd6ad01d6b
Signed-off-by: Giovanni Meo <gmeo@cisco.com>
9 years agoMerge "Bumped version of YANG tools to 0.5.2-SNAPSHOT"
Giovanni Meo [Fri, 14 Jun 2013 13:54:48 +0000 (13:54 +0000)]
Merge "Bumped version of YANG tools to 0.5.2-SNAPSHOT"

9 years agoBumped version of YANG tools to 0.5.2-SNAPSHOT 87/487/2
Tony Tkacik [Fri, 14 Jun 2013 12:29:39 +0000 (14:29 +0200)]
Bumped version of YANG tools to 0.5.2-SNAPSHOT

Change-Id: I4151e59cfb51ff934ce3c3c18090a30fb4a4179e
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
9 years agoMerge "Configuration integrationtest to test save config functionality"
Giovanni Meo [Fri, 14 Jun 2013 13:15:58 +0000 (13:15 +0000)]
Merge "Configuration integrationtest to test save config functionality"

9 years agoMerge "Rooted out the last of the ReflectionToStringBuilder usage"
Giovanni Meo [Fri, 14 Jun 2013 12:54:27 +0000 (12:54 +0000)]
Merge "Rooted out the last of the ReflectionToStringBuilder usage"

9 years agoConfiguration integrationtest to test save config functionality 83/483/9
Dheeraj Uppalapati [Thu, 13 Jun 2013 21:29:01 +0000 (14:29 -0700)]
Configuration integrationtest to test save config functionality

- Renamed to make sure the integration test runs only as part of
failsafe phase, so it can be skipped

Change-Id: If69d30f1f653ec35e96861df541c94114c6ce791
Signed-off-by: Dheeraj Uppalapati <duppalap@cisco.com>
9 years agoMerge "Added support for source code generation from identity statement, grouping...
Giovanni Meo [Fri, 14 Jun 2013 11:25:28 +0000 (11:25 +0000)]
Merge "Added support for source code generation from identity statement, grouping statement and identityref type statement. Introduce new BaseIdentity class as base for all classes generated from identity statements. Introduce new WildcardType interface to add possibility to generate wildcard java type parameters in generated code. Updated tests."

9 years agoMerge "Generation of Notifications and RPCs from YANG"
Giovanni Meo [Fri, 14 Jun 2013 11:21:37 +0000 (11:21 +0000)]
Merge "Generation of Notifications and RPCs from YANG"

9 years agoMerge "Added Static Routing Northbound integration tests for all available REST APIs."
Giovanni Meo [Fri, 14 Jun 2013 11:00:23 +0000 (11:00 +0000)]
Merge "Added Static Routing Northbound integration tests for all available REST APIs."

9 years agoMerge "HostTracker Fixes"
Giovanni Meo [Fri, 14 Jun 2013 10:59:53 +0000 (10:59 +0000)]
Merge "HostTracker Fixes"

9 years agoAdded support for source code generation from identity statement, grouping statement... 78/478/2
Martin Vitez [Thu, 13 Jun 2013 15:25:18 +0000 (17:25 +0200)]
Added support for source code generation from identity statement, grouping statement and identityref type statement.
Introduce new BaseIdentity class as base for all classes generated from identity statements.
Introduce new WildcardType interface to add possibility to generate wildcard java type parameters in generated code.
Updated tests.

Change-Id: I99de20dc4268be43ec9966461aeb75521fe5dd6c
Signed-off-by: Martin Vitez <mvitez@cisco.com>
9 years agoRooted out the last of the ReflectionToStringBuilder usage 24/424/3
Ed Warnicke [Mon, 3 Jun 2013 23:02:19 +0000 (18:02 -0500)]
Rooted out the last of the ReflectionToStringBuilder usage

Change-Id: I0597e09797f30a43354902ee7e4a6d1477b1627d
Signed-off-by: Ed Warnicke <eaw@cisco.com>
9 years agoCorrection for TopologyManager jUNIT test. Arguments for Edge() was in 70/470/2
taochang [Thu, 13 Jun 2013 00:12:33 +0000 (17:12 -0700)]
Correction for TopologyManager jUNIT test. Arguments for Edge() was in
wrong order.

Signed-off-by: taochang <taochang@cisco.com>
9 years agoMerge "Separate UserManager into api and implementation bundles"
Giovanni Meo [Fri, 14 Jun 2013 10:19:04 +0000 (10:19 +0000)]
Merge "Separate UserManager into api and implementation bundles"

9 years agoAdded Static Routing Northbound integration tests for all available REST APIs. 71/471/2
patrichu [Thu, 13 Jun 2013 00:32:29 +0000 (17:32 -0700)]
Added Static Routing Northbound integration tests for all available REST APIs.

Change-Id: I7eb0b1ac7b951fccbf4b5c16f8769e11594fab43
Signed-off-by: patrichu <patrichu@cisco.com>
9 years agoGeneration of Notifications and RPCs from YANG 80/480/2
Tony Tkacik [Thu, 13 Jun 2013 17:50:49 +0000 (19:50 +0200)]
Generation of Notifications and RPCs from YANG

 - Added generation of RPC Service interfaces
 - Added generation of RPC Messages
 - Added generation of Notifications
 - Updated JUnit tests to reflect changes

Change-Id: Ic98d11ef70f42fbef680265d8eff71e2a3a51861
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
9 years agoSeparate UserManager into api and implementation bundles 68/468/2
taochang [Wed, 12 Jun 2013 19:43:04 +0000 (12:43 -0700)]
Separate UserManager into api and implementation bundles

Change-Id: I3fd0fec1378b31ab330700d6cd0dd5319a6f7f5b
Signed-off-by: taochang <taochang@cisco.com>
9 years agoHostTracker Fixes 81/481/2
Kalvin Hom [Thu, 13 Jun 2013 21:12:31 +0000 (14:12 -0700)]
HostTracker Fixes

Fixes the following:
Hosts not being added due to SwitchManager
not being set and NullPointerException

Conversion added from Device to HostNodeConnector

REST Service nb/v2/host/default will show hosts

Known problems still need fixing:
- hosts cannot ping each other.
- When mininet is already running and switches are there,
  startup for controller is fine.  If controller already
  running, then mininet started and new switches added,
  controller is throwing errors.
- GUI isn't showing hosts in the diagram.

Change-Id: I16290feb269f4bfff8bb0f28e9d5601f0d9b1386
Signed-off-by: Kalvin Hom <kahom@cisco.com>
9 years agoMerge "Fix bulk sync in SwitchMananger."
Giovanni Meo [Thu, 13 Jun 2013 16:46:56 +0000 (16:46 +0000)]
Merge "Fix bulk sync in SwitchMananger."

9 years agoMerge "HostTracker Bundle Separation"
Giovanni Meo [Thu, 13 Jun 2013 16:33:55 +0000 (16:33 +0000)]
Merge "HostTracker Bundle Separation"

9 years agoFix bulk sync in SwitchMananger. 79/479/1
Jason Ye [Thu, 13 Jun 2013 05:18:03 +0000 (22:18 -0700)]
Fix bulk sync in SwitchMananger.

When node connector is added to a container, notify node addition if it was not present in the container.

Signed-off-by: Jason Ye <yisye@cisco.com>
9 years agoMerge "Added Support for conversion yang binary type to java type;"
Giovanni Meo [Thu, 13 Jun 2013 16:07:14 +0000 (16:07 +0000)]
Merge "Added Support for conversion yang binary type to java type;"

9 years agoMerge "Fixed schema path of types in augment statements. Updated tests."
Giovanni Meo [Thu, 13 Jun 2013 16:02:35 +0000 (16:02 +0000)]
Merge "Fixed schema path of types in augment statements. Updated tests."

9 years agoMerge "Fixed platform dependant bugs in maven plugin"
Giovanni Meo [Thu, 13 Jun 2013 15:32:33 +0000 (15:32 +0000)]
Merge "Fixed platform dependant bugs in maven plugin"

9 years agoAdded Support for conversion yang binary type to java type; 77/477/1
lsedlak [Thu, 13 Jun 2013 13:30:01 +0000 (15:30 +0200)]
Added Support for conversion yang binary type to java type;

Added support for generation of primitive java types;
Added support for conversion yang binary type to java byte array;

Updated toString method in AbstractBaseType in case that primitive type does not contain package name;

Added documentation into TypeProvider javaTypeForSchemaDefinitionType method;
Updated GeneratorUtil methods to not generate fully qualified names or imports in case of generating of java primitive types;

Signed-off-by: Lukas Sedlak <lsedlak@cisco.com>
9 years agoMerge "removing DataPacketService's receive queue"
Giovanni Meo [Thu, 13 Jun 2013 14:47:30 +0000 (14:47 +0000)]
Merge "removing DataPacketService's receive queue"

9 years agoMerge "UserManager as role coordinator"
Giovanni Meo [Thu, 13 Jun 2013 14:43:40 +0000 (14:43 +0000)]
Merge "UserManager as role coordinator"

9 years agoremoving DataPacketService's receive queue 59/459/2
Colin Dixon [Sat, 8 Jun 2013 02:53:21 +0000 (19:53 -0700)]
removing DataPacketService's receive queue

Change-Id: Ib1d0e929f6679935f9f0d5a86afafecea4e3ce5d
Signed-off-by: Colin Dixon <ckd@us.ibm.com>
9 years agoFixed schema path of types in augment statements. 75/475/1
Martin Vitez [Thu, 13 Jun 2013 12:44:28 +0000 (14:44 +0200)]
Fixed schema path of types in augment statements.
Updated tests.

Signed-off-by: Martin Vitez <mvitez@cisco.com>
9 years agoSwitchNorthbound tests 50/450/3
patrichu [Sun, 9 Jun 2013 06:36:31 +0000 (23:36 -0700)]
SwitchNorthbound tests

Added tests for all available SwitchManager REST APIs.
Made changes to stub InventoryService to allow for updating nodeProps and nodeConnectorProps.
Made changes to SwitchNorthbound.java to check for both nodeType and nodeId when getting a Node.
Made changes in all northbound tests to throw JSONException instead of simple assertion failure.

Change-Id: I816dcbaea2ed10833e3270395fe894e5c152f5d8
Signed-off-by: patrichu <patrichu@cisco.com>
9 years agoFixed platform dependant bugs in maven plugin 73/473/1
Maros Marsalek [Thu, 13 Jun 2013 07:21:59 +0000 (09:21 +0200)]
Fixed platform dependant bugs in maven plugin

Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
9 years agoUserManager as role coordinator 67/467/1
Alessandro Boch [Wed, 12 Jun 2013 19:24:41 +0000 (12:24 -0700)]
UserManager as role coordinator

- UM to expose API to check if a role name is already in use
- Included search in local authorization configurations when querying for roles on user, getUserRoles()
- Added local authorization code to Junit to exercise the above
- Minor code refactoring to resuse getUserRoles() to avoid code duplication
- Downgrade and changed log level on cache allocation when cache is already present
- Removed new line in UM log messages to be in line with other bundles

Signed-off-by: Alessandro Boch <aboch@cisco.com>
9 years agoHostTracker Bundle Separation 66/466/6
Kalvin Hom [Wed, 12 Jun 2013 16:56:03 +0000 (09:56 -0700)]
HostTracker Bundle Separation

Moved the new HostTracker into
hostracker_new bundles.

Added exclusion to bin.xml so it doesn't
get assembled into distribution.

Added original hosttracker back.

Goal is to allow collaboration and
incremental check-ins for this
module without breaking anything else.

Original information from Rob Adams:
    Author: Rob Adams <rob.adams@bigswitch.com>
    Date:   Wed Jun 5 14:58:02 2013 -0700

    Initial port of device manager to cisco controller.  Currently capable
    of tracking devices but still a long list of TODOs:
    - No VLAN support - Ethernet frame parser can't parse VLAN tags and
      would be a bit of work to add it since current code can't handle
      anything but fixed-format header field which doesn't cover 802.1Q
    - No shared framework for asynchronous tasks.  For now device manager
      just allocates its own scheduled thread pool but a shared thread
      pool would be much better.
    - No clustering support in this code.  There is code that uses an
      eventually-consistent data store to support this but it's commented
      out since this is not available in daylight.  It would be possible
      to port this to the consistent store but this would lose valuable
      semantics and a component in the core should handle eventual
      consistency.
    - No web API support.  Would need to write a new implementation of the
      API; shouldn't be too hard presumably
    - Debug counters not ported
    - No mechanism for documenting log messages.  This doesn't exist in
      ODL.
    - DHCP parsing not supported; disable pulling hostname from DHCP.
    - Node/Port IDs are derived from Object and have no useful semantics.
      Device manager needs them to be comparable in order to get
      attachment points correct and consistent in all cases.  At the
      moment it just blindly casts them
    - Topology module doesn't implement the needed semantics.  First need
      to port net-virt-platform topology code, but there are impedance
      mismatches in the APIs to resolve first
    - Need to merge host tracker and device manager APIs to a new unified
      API and port all existing code to the new API, or adopt the device
      manager API.
    - Need to replace ARP handler to just handle ARPs and not be
      responsible for trying to discover devices
    - Unit tests need to be ported as well; currently commented out

Change-Id: If65e6582599a9c6fafaabfeb4b93b1d931965ab1
Signed-off-by: Kalvin Hom <kahom@cisco.com>
9 years agoAdded Support for Union Type def resolving and bug fixes. 65/465/3
lsedlak [Tue, 11 Jun 2013 15:08:25 +0000 (17:08 +0200)]
Added Support for Union Type def resolving and bug fixes.

Added implementation into TypeProviderImpl to proper resolve union type definitions;
Added UnionDependencySort for correct resolution of multiple unions in same yang model;
Added support for resolving of imported union types from multiple modules;
Added tests for Union Type def resolving;

Fixed Resolving of typedef Enumerations - now the Enumeration is resolved as standalone enum typedef name .java;
Fixed resolving of Inner Enumerations;
Fixed resolving of referenced Inner Enumerations through leafref definition;
Added EnumGenerator class for generating of Enum definitions and inner Enum definitions;
Fixed generation of Enumeration type through code writer;
Fixed generation of Enumeration package name in case of inner enum definition in Class and Generated Transfer Objects;
Added capability to generate inner enums into ClassCodeGenerator and InterfaceGenerator;

Fixed of missing apostrophe in createToString method in GeneratorUtil.java in case when more than one property should be generated in toString method;

Fixed platform specific bug in maven-yang-plugin incorrect retieval of maven dependency in YangToSourcesProcessor.java;
Fixed platform specific bug in maven-yang-plugin-it - hard coded resource paths replaced for getClass().getResource calls;

Added support into BindingGenerator API to suppor of generation of Types with restriction of specified modules that will be generated;
Added implementation of generateTypes in BindingGeneratorImpl;

Added tests and test resources for testing Enumeration gen. types
Added test resources for augment relative xpath testing;

Fixed improper implementation of hashCode and equals in ExtendedType in yang-model-util;
Fixed findParentModule method in SchemaContextUtil in yang-model-util project;

Change-Id: I144acbeec9ce547da856e2979d27b2c072174a52
Signed-off-by: Lukas Sedlak <lsedlak@cisco.com>
9 years agoMerge "Checkstyle enforcer"
Madhu Venugopal [Wed, 12 Jun 2013 16:49:08 +0000 (16:49 +0000)]
Merge "Checkstyle enforcer"

9 years agoMerge "Yang-maven-plugin refactored and config attributes and spi adjusted."
Giovanni Meo [Wed, 12 Jun 2013 16:25:22 +0000 (16:25 +0000)]
Merge "Yang-maven-plugin refactored and config attributes and spi adjusted."

9 years agoCheckstyle enforcer 57/457/3
Giovanni Meo [Wed, 12 Jun 2013 15:43:29 +0000 (17:43 +0200)]
Checkstyle enforcer

Started to enforce checkstyle, if the code style doesn't match the
checkstyle settings build will break. This is needed in order to make
sure folks comply to one code style and don't start diverging.

For now the enforcement is only limited to:
- make sure no TABS are present in the java files
- make sure that no trailing whitespaces are present

Along with code style enforcement updates all the files that didn't
comply else compilation would not be successful.

Added new exclusion in .gitignore

Added new parent for commons.opendaylight, please read the README in
the commons.parent project for the reason for it.

Make sure the violation of checkstyle are reported on the console to
avoid for a developer to be able to dig through the log in the target
directory

Change-Id: I4e35aa74e685e5cebb8182caf0b3b39da0906948
Signed-off-by: Giovanni Meo <gmeo@cisco.com>
9 years agoFixed bug in parser in augment resolving process. 63/463/2
Martin Vitez [Wed, 12 Jun 2013 14:37:50 +0000 (16:37 +0200)]
Fixed bug in parser in augment resolving process.

Signed-off-by: Martin Vitez <mvitez@cisco.com>
9 years agoFixed parsing of typedef statement. Refactored YangParserImpl to improve code readabi... 56/456/2
Martin Vitez [Tue, 11 Jun 2013 09:55:29 +0000 (11:55 +0200)]
Fixed parsing of typedef statement. Refactored YangParserImpl to improve code readability.
Added methods to LeafSchemaNode interface. Updated tests.

Change-Id: I63c84a5c0c3c4f6c68b8c2dabdcbb66266496000
Signed-off-by: Martin Vitez <mvitez@cisco.com>
9 years agoParents pom distribution 58/458/1
Giovanni Meo [Tue, 11 Jun 2013 12:49:10 +0000 (14:49 +0200)]
Parents pom distribution

- Introduced a distribution that gather all the parents module and
allow for their deployment in one shot rather in multiple single calls
as done right now by jenkins

Change-Id: I11c485c2d50e7de69cea7a8091cd0e62068a3641
Signed-off-by: Giovanni Meo <gmeo@cisco.com>
9 years agoYang-maven-plugin refactored and config attributes and spi adjusted. 44/444/6
Maros Marsalek [Fri, 7 Jun 2013 10:20:29 +0000 (12:20 +0200)]
Yang-maven-plugin refactored and config attributes and spi adjusted.

Removed project base dir parameter from CodeGenerator
since it can be acquired via additionalConfiguration.
Added resourceBaseDir config attribute that allows resources
to be added to packaged jar.
Added mavenProject config attribute that provides any additional
configuration to code generators if necessary.
Adjusted log levels for the plugin.

Plugin refactored and generate sources test fixed.

Change-Id: Ic3cc1342bb8eb8d6cc374da8af28fa9905ee8fcf
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
9 years agoMerge "Updated example with OF model done during HackFest."
Giovanni Meo [Mon, 10 Jun 2013 15:24:04 +0000 (15:24 +0000)]
Merge "Updated example with OF model done during HackFest."

9 years agoMerge "Samples/maven-code-gen-sample pom.xml updated after recent changes."
Giovanni Meo [Mon, 10 Jun 2013 15:19:52 +0000 (15:19 +0000)]
Merge "Samples/maven-code-gen-sample pom.xml updated after recent changes."

9 years agoMerge "Modified construction of built-in yang types."
Giovanni Meo [Mon, 10 Jun 2013 15:19:00 +0000 (15:19 +0000)]
Merge "Modified construction of built-in yang types."

9 years agoMerge "Adding Set Next Hop action"
Giovanni Meo [Mon, 10 Jun 2013 14:59:12 +0000 (14:59 +0000)]
Merge "Adding Set Next Hop action"

9 years agoSamples/maven-code-gen-sample pom.xml updated after recent changes. 53/453/1
Maros Marsalek [Mon, 10 Jun 2013 11:18:08 +0000 (13:18 +0200)]
Samples/maven-code-gen-sample pom.xml updated after recent changes.

Added insepctDependencies config attribute.
Yang-maven-plugin integration tests marked as IT and now run by failsafe.

Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
9 years agoMerge "Manual link addition feature assumes Long for Switch identifier and Short...
Jason Ye [Mon, 10 Jun 2013 06:03:37 +0000 (06:03 +0000)]
Merge "Manual link addition feature assumes Long for Switch identifier and Short for Port identifier. This commit fixes that assumption."

9 years agoFixed Openflow InventoryService to return the property cache. 52/452/1
Madhu Venugopal [Mon, 10 Jun 2013 01:57:00 +0000 (18:57 -0700)]
Fixed Openflow InventoryService to return the property cache.

Change-Id: I82466d3af47e7b0f2bcc1c0cbedc4fef1e25d915
Signed-off-by: Madhu Venugopal <vmadhu@cisco.com>
9 years agoManual link addition feature assumes Long for Switch identifier and Short for Port... 51/451/1
Madhu Venugopal [Mon, 10 Jun 2013 01:43:22 +0000 (18:43 -0700)]
Manual link addition feature assumes Long for Switch identifier and Short for Port identifier. This commit fixes that assumption.

Change-Id: Ibffd2c1b8704465e928dd180832ad026ce749d48
Signed-off-by: Madhu Venugopal <vmadhu@cisco.com>
9 years agoMerge "Revert "Checkstyle enforcer""
Madhu Venugopal [Sat, 8 Jun 2013 14:24:11 +0000 (14:24 +0000)]
Merge "Revert "Checkstyle enforcer""

9 years agoRevert "Checkstyle enforcer" 49/449/1
Ed Warnicke [Sat, 8 Jun 2013 14:08:53 +0000 (14:08 +0000)]
Revert "Checkstyle enforcer"

This reverts commit 541d0a36997f292bb037a2199463431eee538358

We are going to talk a bit more about this before doing it.

Change-Id: I788ecea18796c6eb325285dfaa83a6aae300634c