3637 Commits

Author SHA1 Message Date
Jonathan Hart
4fd4ebb9d0 Continue updating GossipIntentStore to new API.
Includes changes to ECMap to support generating timestamps based on values.

Change-Id: Ide55979aaa4f7757e67a6b3efed6e51d45ee318c
2015-02-13 14:12:30 -08:00
Brian O'Connor
2ba63fdba0 Adding version stamping/checking to SimpleIntentStore
Change-Id: I08c0bf5e0f5a89275a72fa0900e52ca996942b79
2015-02-13 14:10:56 -08:00
Ray Milkey
f9af43c2ea Refactoring of IntentId based APIs
- getIntent
- getIntentState
- getInstallableIntents

Change-Id: I6d2073dfa165e0e5adcef46fe5908b563b481a43
2015-02-13 14:10:55 -08:00
Brian O'Connor
5811ac2285 Updating MockFlowRuleService with new semantics
Change-Id: I0a373e6cb25728ca48736902feedc3ed8869fa44
2015-02-13 14:10:55 -08:00
Jonathan Hart
74c83135c4 Implemented a PartitionManager to keep track of partitions
assigned to instances.

Also updated GossipIntentStore a little to the new API. This work is not
yet complete.

Change-Id: I64d1779b669de51c35da686b65006a80ac4819b0
2015-02-13 14:10:55 -08:00
Jonathan Hart
82b9feca35 Add term information in HazelcastLeadershipService
Implementation based on Hazelcast IAtomicLong.

Change-Id: I9dca40228a84fdb3edf02ffd2cc32d7d38c90378
2015-02-13 14:10:55 -08:00
Sho SHIMIZU
b5cd581d4e Handle exception when installing fails
- Catch an IntentException in InstallCoordinating and Installing
- Remove FlowRuleBatchOperationConvertionException because it is unused

Change-Id: I99cf07df811ba8489feb75088f83ddc4ebd93c9e
2015-02-13 14:10:55 -08:00
Sho SHIMIZU
877ec2c51f Handle exception when compiling fails
- Change arguments of the constructor of PathNotFoundException
- Change the catched exception in Compiling.execute()

Change-Id: I3b639ffd585900c2a6dd99aeeb313bf20c6104f4
2015-02-13 14:10:55 -08:00
Sho SHIMIZU
37a24a887a Split Withdrawing class into two classes WithdrawCoordinating and Withdrawing
Resolve ONOS-992
- Rename Coordinating to InstallCoordinating for naming consistency
- Add Javadoc to newly added/modified classes
- Rename uninstallIntent() to uninstallCoordinate() in IntentManager
- Rename coordinate() to installCoordinate() in IntentManager

Change-Id: I226592d96cfd8caf248addab2db0d28803c7ca12
2015-02-13 14:10:55 -08:00
Brian O'Connor
b488b19706 Adding SimpleIntentStore to distributed bundle
Also deactivating GossipIntentStore for now.

Change-Id: I9af7352c64adcf252ed01f7c32c84358146aee93
2015-02-13 14:10:48 -08:00
Ray Milkey
c357381fc1 ONOS-989 - Add key to toString() methods of intents
Change-Id: Ic82b25e26ab7fb767f3ca571ef7594679c501ba5
2015-02-13 14:10:48 -08:00
Brian O'Connor
ba1abbe032 adding log for error case
Change-Id: Id0f779ad951ef9d11f6b0afeda2d3cba9239f46a
2015-02-13 14:10:48 -08:00
Brian O'Connor
7775bdaa09 Intent F/W improvements
- aggregate installables into FlowRuleOperations
 - added some impl. to SimpleIntentStore
 - created Coordinating State

Change-Id: I5b26ec1fdb7aaff9d5da4f21b2d5a249568ac5ac
2015-02-13 14:10:48 -08:00
Sho SHIMIZU
0e5cdf259d Remove obsolete comment
Change-Id: Ib14cfa5b287d5852011fe9b16f7397a1da306a45
2015-02-13 14:10:47 -08:00
Sho SHIMIZU
d2d9974332 Ensure a CompletedIntentUpdate subclass is the final state
Change-Id: Icecf8a45fad7cb80f3953dcfc081c344d3fa0adb
2015-02-13 14:10:47 -08:00
Sho SHIMIZU
6a2952909a Add missing @Override annotation
Change-Id: Id6bf4bd0ef9a9094ea5523b2df8ecdaee365ee50
2015-02-13 14:10:47 -08:00
Ray Milkey
5b3717ea46 Add keys to intents
- use Key class rather than String for intent keys
- add CLI option to specify a string key
- add key field to constructors for connectivity intents
- translate id into a key if no key is specified

Change-Id: I69ffbad93bc3daddf06a67cb0cffa2130e781b37
2015-02-13 14:10:47 -08:00
Brian O'Connor
055fb975c9 Adding Key class for intents
Change-Id: Ib6e586bcc938e062de0b1d6c92e3b885334a4769
2015-02-13 14:10:47 -08:00
Brian O'Connor
0e271dc6d2 Refactored intermediate IntentUpdate classes
Change-Id: I3d4a435ef4aa97559d5407d49f45519098c3f193
2015-02-13 14:10:47 -08:00
Sho SHIMIZU
5f281a45e4 Refactor: rename "ops" to "data"
Change-Id: I92fc471e545e880d90079923c47c405b29853ed2
2015-02-13 14:10:47 -08:00
Brian O'Connor
db15b04081 started work to parrallize compliation and "installation"
Change-Id: I2e7f03b9f8074ef6f9e1c186009ed3cad6980b49
2015-02-13 14:10:46 -08:00
Brian O'Connor
098da072fe fixed typo and undeprecated a method
Change-Id: Ia15c4df9978ac66d4cd5288f9462d3238958893e
2015-02-13 14:10:46 -08:00
Sho SHIMIZU
5cb438e386 Pull out inner IntentUpdate sub-classes from IntentManager
Change-Id: Iefec2e3d5929d0e85e40bee24ba4fd0679c13b19
2015-02-13 14:10:46 -08:00
Sho SHIMIZU
8d9d136bd2 Extract a method to create a list of FlowRuleBatchOperation
- Define FlowRuleBatchOperationConvertionException, which is a
  new IntentException sub-class

Change-Id: I798303fa986f573c885b8712ac1dfee1bcaadf95
2015-02-13 14:10:46 -08:00
Sho SHIMIZU
c708f3b4af Remove CompilingFailed because it does nothing
Change-Id: Ibeb244d0a9ebfbf019bc72e1efeacb73c3140cb2
2015-02-13 14:10:46 -08:00
Sho SHIMIZU
46f48fb7e9 Change the return type of IntentAccumulator.reduce()
Change-Id: I31b57537c800e1599f19e4c0a4156db9df0406af
2015-02-13 14:10:46 -08:00
Sho SHIMIZU
946913c275 Remove calls of IntentStore.batchWrite()
We are changing the write behavior to IntentStore, then
calls of IntentStore.batchWrite will be replaced.

Change-Id: Id9685d5631fea02f1d2ef30e12c503c7cf2c44ef
2015-02-13 14:10:45 -08:00
Ray Milkey
2468502d4c Removed deprecated intent operations
Change-Id: I2ca316dab4c1ac1a66fb4ddf101c4adf3302dcd2
2015-02-13 14:10:45 -08:00
Ray Milkey
2da272b94e Removed deprecated classes/interfaces
IntentBatchLeaderEvent
IntentBatchListener
IntentBatchService

Change-Id: I712f0eb0b26d9bfaa820a14022c1dd30943fab27
2015-02-13 14:10:45 -08:00
Sho SHIMIZU
55a551869f Remove comments that won't get meaningful during refactoring
Change-Id: Ia826e01b48821d167bb5f690b768e8305798a2fd
2015-02-13 14:10:45 -08:00
Sho SHIMIZU
62808d1165 Enforce overrinding execute() method in IntentUpdate subclasses
Change-Id: I02cf03abd60f771357b98bbd79c83eb3e0dce958
2015-02-13 14:10:45 -08:00
Sho SHIMIZU
4931ee5dc6 Delete unnecessary semicolon
Change-Id: I2eaa4d900342a665f6dc4731a298b30a9ec40696
2015-02-13 14:10:41 -08:00
Sho SHIMIZU
6cb01e282b Remove class that is no longer used
Change-Id: I473b70e1cffba9728a3ebac23250b846a593a040
2015-02-13 14:09:08 -08:00
Sho SHIMIZU
39db1bb497 Remove classes that are no longer used
Change-Id: Idb5cfdadf9e6062b59500200a551ed5deaa362d7
2015-02-13 14:09:08 -08:00
Brian O'Connor
03406a4702 IntentStore interface changes
Change-Id: Ifa8728fb4c7edcc6d58a5e071f7252493ab2a578
2015-02-13 14:07:52 -08:00
Brian O'Connor
b499b3594d Updates to Intent Manager and store interface
Change-Id: Ida612bf5d0f4abe7e81d2f307a80f989603015e7
2015-02-13 13:59:20 -08:00
Ray Milkey
24226a2175 Start IntentOperations removal
Change-Id: Ib5fb9c19b37e447a62c61fa33bb98f3d789cbefa
2015-02-13 13:59:20 -08:00
Brian O'Connor
cff03322bf Started refactoring Intent Manager
Introduced IntentData and reworked APIs

Change-Id: I1fa437ceb1b72c4017ac2da1573bfbeb64c0632a
2015-02-13 13:59:19 -08:00
Pavlin Radoslavov
1d21866a74 Fix for ONOS-1032 : Add missing class registrations to the Kryo serializer
- Criteria.MetadataCriterion
 - Criteria.IPDscpCriterion
 - Criteria.IPEcnCriterion
 - Criteria.UdpPortCriterion
 - Criteria.SctpPortCriterion
 - Criteria.IcmpTypeCriterion
 - Criteria.IcmpCodeCriterion
 - Criteria.IPv6FlowLabelCriterion
 - Criteria.Icmpv6TypeCriterion
 - Criteria.Icmpv6CodeCriterion
 - Criteria.IPv6NDTargetAddressCriterion
 - Criteria.IPv6NDLinkLayerAddressCriterion
 - Criteria.IPv6ExthdrFlagsCriterion
 - Instructions.GroupInstruction
 - L2ModificationInstruction.PushHeaderInstructions
 - L2ModificationInstruction.ModMplsLabelInstruction
 - L2ModificationInstruction.ModMplsTtlInstruction
 - L3ModificationInstruction.ModTtlInstruction

Change-Id: I6c2db9103c85b06120a5e471d015f387f04c5893
2015-02-13 11:34:30 -08:00
Pavlin Radoslavov
cef5206209 Use the correct IPv6 source address when forwarding NDP requests
on external ports.

This fixes ONOS-1021

Also, a minor optimization when forwarding the ARP or NDP request
on external ports.

Change-Id: Ic745e1af1f0a0602751977726a850f48afe84262
2015-02-13 14:19:58 +00:00
Madan Jampani
393e0f0745 1. Refactored ConsistentMap and StorageServive (renamed from DatabaseService) to api bundle.
2. Misc bug fixes uncovered during testing

Change-Id: I1219c5264831bcfa93565f764511f89de35a949d
2015-02-13 01:57:23 +00:00
Dusan Pajin
a22b970637 ProxyArpManager - fix IPv6 ND Adv issue with Option fields and ARP/NDP Reply
with first IP address from Host service

This fixes ONOS-1010

Also, add protocol-related constants to class NeighborAdvertisement.

Change-Id: Iacf9e48a8a03a86e1cc4e89e7e2b2b4ccc4a7e3a
2015-02-12 22:25:31 +00:00
Pavlin Radoslavov
febe82cc82 Implement some of the missing IPv6 flowmod treatments
Work toward ONOS-509

The following treatments are added/implemented:
  - IPV6_SRC
  - IPV6_DST
  - IPV6_FLABEL

Also:
 - Renamed L3ModificationInstruction.L3SubType.IP_SRC and IP_DST
   to IPV4_SRC and IPV4_DST (for naming consistency).
 - Few minor fixes in related code: Javadocs, comments, log messages,
   and IP address usage.

Change-Id: I551056f767a37e7cb6ae7d79f4a3929183500b57
2015-02-12 18:24:54 +00:00
Ray Milkey
7b3981b529 Fix Javadoc warnings
Change-Id: I2975b3d7bb581d5574969037e1f99401b94ef3dc
2015-02-12 09:15:44 -08:00
Yuta HIGUCHI
0a0b9e46bf Log more info when inter-Node messaging fails.
Change-Id: Ifd749a3023854d688a675c7279c27868b8bed436
2015-02-12 01:43:12 +00:00
sangho
7ff01813fe ONOS-944: Implemented a Group operation failure handler in GroupManger and SimpleGroupStore.
Change-Id: Ib3be4d534ceff04af2dad0c062fd4cd63d49ee82
2015-02-11 23:56:53 +00:00
Brian O'Connor
72cb19a90e Implementation of new Flow Subsystem:
The subsystem no longer returns futures for tracking completion of work.
Notifications are explicitely returned via a call back mechanism. Also, the
subsystem is now asynchronous.

Change-Id: I1a4cef931c24820f9ae9ed9a5398f163f05dfbc9

more flowservice improvements

Change-Id: I5c9c1b6be4b2ebfa523b64f6f52e7634b7d3e05f

more flowservice impl

Change-Id: I05f6774460effb53ced8c36844bcda2f8f6c096f

Manager to store functional (at least i believe it)

Change-Id: I09b04989bd1004c98fe0bafed4c76714b9155d53

flow subsystem functional: need to fix unit tests

Change-Id: I1667f25b91320f625a03e5e1d5e92823184d9de0

flow subsystem functional

Change-Id: I429b3335c16d4fc16f5d55f233dd37c4d1d6111d

finished refactor of flow subsystem

Change-Id: I1899abc6ff6a974a2018d936cc555049c70a6804

fix for null flow provider to use new api

Change-Id: If2fd9bd5baf74d9c61c5c8085cef8bc2d204cbdc
2015-02-11 21:28:01 +00:00
Yuta HIGUCHI
802920559d Explicitly specify charset
- Explicitly specify app name encoding, which will go over the wire.
- Commented out unused Map for now

Change-Id: I9a076a5ef452850706bf15b0730aa149b4532fbd
2015-02-11 17:28:37 +00:00
Yuta HIGUCHI
c611d927aa Fix Cache Removal listener
- Removal lister will be called even if the entry was manually
  invalidated. Timeout handler should check for the cause.

Note: In both of the cases fixed in this patch, Future should silently ignore
  setException, external behavior-wise no change by this patch.

Change-Id: Id46f23c9ff8dfa607874cfd94807000f03a95b31
2015-02-11 06:21:35 +00:00
Madan Jampani
09342706b0 WIP: Consistent map implementation.
Change-Id: I51b2d954b7a8ff2c51c425d9a8125937d4eaa6b0

Change-Id: Ib27799d4eb60fc4bfaa8d2f21a904365ff5437eb

Change-Id: I95c937600ceb8f282a482280217671c471f40b9c
2015-02-11 05:26:26 +00:00