Resources under a link are tied to resources under both ends of the link,
and resources under a port are thought to be first-class objects compared
to concept of link resources. We will deal with only device related
resources from now on.
Change-Id: I6aa418d1bf64b28374f325db0bc7e393f770dcdd
- ConsistentMap's key equality is based on serialized byte[].
2 Problems fixed by this patch:
(1) By caching Key -> String representation,
Cache will use Key's Object#equals for look up,
which can possibly have different equality than byte[] equality,
leading to wrong String to be used as a key in backend Database.
Fixed by reversing the mapping.
(2) Similar issues with keySet(), entrySet()
Set based on reference equality needs to be used to avoid
deduplication based on Object#equals
Fixed by replacing Set implementation with MappingSet.
Change-Id: I1b727abd2614a9b72b5b1d02ecca2de26493adcc
Also includes:
Changes to Next Objective that adds metadata field for applications to optionally send auxillary info to drivers
Changes to Next Objective that allows more explicit modification of the next objective
Changes to Forwarding Objective and PendingNext to include hashCode() and equals() method
MplsBosInstruction included in kryo serializer
GroupKey's byte[] represented as a hex string
Bug fix in mpls flow installation to report failure in install
Bug fix in linkUp in SR app to disallow non-masters to modify groups
Bug fix in ordering of actions in group
Change-Id: I3e7003f55724c2de79589e43e11d05ff4815a81d
This is an enhanced version of gerrit 6085 that provides not only the old location
but also the entire old host subject.
The main purpose is allowing apps to be aware of the change of IP address as well
Change-Id: I448d73b0d1e705996259cb0ec777f959f485d9c2
There are three independent apps:
- openflow-base
- hostprovider
- lldpprovider
And there is also one meta-application called openflow that
contains all three of them.
Also fix the dependency issue when the apps are loaded from disk
Change-Id: I6da584e03593db9094b3a57976b28291f207c3c6
- directly call #hashCode() when hashed Object seems non-null
- replace with Objects.hashCode(Object) when Nullable
- replace with Long.hashCode(long), etc. when primitive
Change-Id: I08c24ebbe94cf4162d1491209a14baf953163e41
Additionally, remove catch block handling TransactionException, which
doesn't have to be caught in user side any more.
Change-Id: I359b50dbe0e1074a2bc4c8850459cb4463669aa8
- Added Cluster metadata service and metadata store interfaces
- Added a static cluster metadata store implementation that is backed by a local file.
- Consolidated the existing cluster.json and tablets.json metadata files into a single cluster.json file that has all the cluster related metadata.
- Removed dependency on ONOS_NIC env variable.
Change-Id: Ia0a8bb69740caecdcdde71a9408be37c56ae2504
- Reworking store commands to use compute for updates
- Trigger add/remove to devices on map events
Change-Id: I33391435945c1775a9ef0cdc83920fc1cadfd658