- using Optional in Leadership, and some commenting.
- using MutableBooleans + compute()
part of: Device Mastership store on top of LeadershipService
Reference: ONOS-76
Conflicts:
core/api/src/main/java/org/onosproject/cluster/LeadershipService.java
core/store/dist/src/main/java/org/onosproject/store/consistent/impl/DistributedLeadershipManager.java
Change-Id: I7f090abb123cf23bb5126a935a6e72be00f3e3ce
Change-Id: Ib2abb483456538e3e08e9790c4b4b0d50db8b384
implemented a distributed default flow registration mechanism to avoid
duplicate requests from other onos instances
Change-Id: I620cc51ac29cddaffa73cdbb20e9a9acbdd9ea69
leaders. Includes update to leaders CLI command to list candidates.
part of: Device Mastership store on top of LeadershipService
Reference: ONOS-76
Conflicts:
core/store/dist/src/main/java/org/onosproject/store/consistent/impl/DistributedLeadershipManager.java
Change-Id: I587bb9e9ad16a9c8392969dde45001181053e5e6
- Device, Port, Link can now be encoded and decoded back to Java Object,
which will be Object#equals to the original.
- Modified DeviceServiceAdapter to be null-safe when possible
- Modified JSON assertion/matcher not to check for exact number of attributes
Change-Id: I7cf02e2254cf17f6265fb15847912519e564b14f
These objective will be used to provide a layer of abstraction
that isolates applications for device pipeline details.
initial objective support
Change-Id: I019302822421f0fe1f508f2f7527d91578e30116
initial implemetation of a simple pipeline behaviour
Change-Id: Id0d9167896c717d05cda90e1524fc24c76e9fc9b
initial implementation of objectives
Change-Id: I768fa2020308d5feb95eaaff355aa511b323beca
leader/backups (candidates) for a topic. This includes removing the RoleInfo in
LeadershipEvent, to deduplicate information.
RoleInfo is also made a bit saner with the Optional leader field.
part of: Device Mastership store on top of LeadershipService
Reference: ONOS-76
Change-Id: I957c4d79125873d5a7280f60231d26d2806ab27f
- add test to be sure that all flows are removed when intents
are withdrawn
- add test to be sure that all flows are removed when an intent
installation fails. Currently disabled, intent cleanup is
not implemented
- enable installation time out test
Change-Id: I8c7a75292a97404ef89856647c67ef2f70ffcf6f
EventuallyConsistentMap has been moved to the API package so is now available outside the stores.
ONOS-1357
Change-Id: I1c892eb3dbefa72cb3f3eb3ccc74e9a02c7e2ac9
It resolves naming mismatch in naming of IntentProcessPhases and states
handled in the phases. It is described in ONOS-1064.
- Define FlowRuleIntent that enables flow rule level operation
as an intent.
- Remove IntentInstaller interface
- Existing installable intents such as PathIntent, LinkCollectionIntent,
OpticalPathIntent and MplsPathIntent now become non installable intents.
Only FlowRuleIntent is categorized as installable intent now.
- Implement intent compilers for PathIntent, LinkCollectionIntent,
OpticalPathIntent and MplsPathIntent. They generates FlowRuleIntents.
- Write unit tests for the newly created intent compilers according to
the intent installers' unit tests
- Remove all intent installers and their unit tests
Change-Id: I22d6c7acb65a4c066145de0018bd0727f44bd54a
- Each connectivity intent now has only one constructor
- Intent constructors are now private for leaf classes and
protected for classes that can be derived from
- Each intent class has a Builder class that accumulates
parameters for intent creation
- Each intent class has a public static builder() method
to create a builder
- Each Builder class has a build() method to create the
intent from the accumulated parameters
- Added keys to a few intent types that were missing them
- Tightened up usage of checkNotNull(), taking advantage of
the return value to save some lines of code
- Modified callers to use the builders instead of directly
calling the constructors
Change-Id: I713185d5ecbadbf51f87ef7f68fec41102106c78