Package org.onosproject.store.meter.impl
Class DistributedMeterStore
- java.lang.Object
-
- org.onosproject.store.AbstractStore<org.onosproject.net.meter.MeterEvent,org.onosproject.net.meter.MeterStoreDelegate>
-
- org.onosproject.store.meter.impl.DistributedMeterStore
-
- All Implemented Interfaces:
org.onosproject.net.meter.MeterStore,org.onosproject.store.Store<org.onosproject.net.meter.MeterEvent,org.onosproject.net.meter.MeterStoreDelegate>
public class DistributedMeterStore extends org.onosproject.store.AbstractStore<org.onosproject.net.meter.MeterEvent,org.onosproject.net.meter.MeterStoreDelegate> implements org.onosproject.net.meter.MeterStoreA distributed meter store implementation. Meters are stored consistently across the cluster.
-
-
Field Summary
Fields Modifier and Type Field Description protected ConcurrentMap<org.onosproject.net.meter.MeterTableKey,org.onosproject.store.service.DistributedSet<org.onosproject.net.meter.MeterKey>>availableMeterIdsprotected org.onosproject.net.driver.DriverServicedriverServiceprotected booleanuserDefinedIndexMode
-
Constructor Summary
Constructors Constructor Description DistributedMeterStore()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidactivate()CompletableFuture<org.onosproject.net.meter.MeterStoreResult>addOrUpdateMeter(org.onosproject.net.meter.Meter meter)org.onosproject.net.meter.MeterCellIdallocateMeterId(org.onosproject.net.DeviceId deviceId, org.onosproject.net.meter.MeterScope meterScope)voiddeactivate()CompletableFuture<org.onosproject.net.meter.MeterStoreResult>deleteMeter(org.onosproject.net.meter.Meter meter)org.onosproject.net.meter.MeterStoreResultdeleteMeterFeatures(Collection<org.onosproject.net.meter.MeterFeatures> meterfeatures)org.onosproject.net.meter.MeterStoreResultdeleteMeterFeatures(org.onosproject.net.DeviceId deviceId)voidfailedMeter(org.onosproject.net.meter.MeterOperation op, org.onosproject.net.meter.MeterFailReason reason)protected voidfreeMeterId(org.onosproject.net.DeviceId deviceId, org.onosproject.net.meter.MeterCellId meterCellId)voidfreeMeterId(org.onosproject.net.DeviceId deviceId, org.onosproject.net.meter.MeterId meterId)protected voidfreeMeterId(org.onosproject.net.meter.MeterTableKey meterTableKey, org.onosproject.net.meter.MeterCellId meterCellId)Collection<org.onosproject.net.meter.Meter>getAllMeters()Collection<org.onosproject.net.meter.Meter>getAllMeters(org.onosproject.net.DeviceId deviceId)Collection<org.onosproject.net.meter.Meter>getAllMeters(org.onosproject.net.DeviceId deviceId, org.onosproject.net.meter.MeterScope scope)protected longgetMaxMeters(org.onosproject.net.meter.MeterTableKey key)org.onosproject.net.meter.MetergetMeter(org.onosproject.net.meter.MeterKey key)voidpurgeMeter(org.onosproject.net.meter.Meter m)voidpurgeMeters(org.onosproject.net.DeviceId deviceId)voidpurgeMeters(org.onosproject.net.DeviceId deviceId, org.onosproject.core.ApplicationId appId)org.onosproject.net.meter.MeterStoreResultstoreMeterFeatures(Collection<org.onosproject.net.meter.MeterFeatures> meterfeatures)org.onosproject.net.meter.MeterStoreResultstoreMeterFeatures(org.onosproject.net.meter.MeterFeatures meterfeatures)org.onosproject.net.meter.MeterupdateMeterState(org.onosproject.net.meter.Meter meter)booleanuserDefinedIndexMode(boolean enable)-
Methods inherited from class org.onosproject.store.AbstractStore
hasDelegate, notifyDelegate, notifyDelegate, setDelegate, unsetDelegate
-
-
-
-
Field Detail
-
availableMeterIds
protected final ConcurrentMap<org.onosproject.net.meter.MeterTableKey,org.onosproject.store.service.DistributedSet<org.onosproject.net.meter.MeterKey>> availableMeterIds
-
driverService
protected org.onosproject.net.driver.DriverService driverService
-
userDefinedIndexMode
protected boolean userDefinedIndexMode
-
-
Method Detail
-
activate
public void activate()
-
deactivate
public void deactivate()
-
addOrUpdateMeter
public CompletableFuture<org.onosproject.net.meter.MeterStoreResult> addOrUpdateMeter(org.onosproject.net.meter.Meter meter)
- Specified by:
addOrUpdateMeterin interfaceorg.onosproject.net.meter.MeterStore
-
deleteMeter
public CompletableFuture<org.onosproject.net.meter.MeterStoreResult> deleteMeter(org.onosproject.net.meter.Meter meter)
- Specified by:
deleteMeterin interfaceorg.onosproject.net.meter.MeterStore
-
storeMeterFeatures
public org.onosproject.net.meter.MeterStoreResult storeMeterFeatures(org.onosproject.net.meter.MeterFeatures meterfeatures)
- Specified by:
storeMeterFeaturesin interfaceorg.onosproject.net.meter.MeterStore
-
storeMeterFeatures
public org.onosproject.net.meter.MeterStoreResult storeMeterFeatures(Collection<org.onosproject.net.meter.MeterFeatures> meterfeatures)
- Specified by:
storeMeterFeaturesin interfaceorg.onosproject.net.meter.MeterStore
-
deleteMeterFeatures
public org.onosproject.net.meter.MeterStoreResult deleteMeterFeatures(org.onosproject.net.DeviceId deviceId)
- Specified by:
deleteMeterFeaturesin interfaceorg.onosproject.net.meter.MeterStore
-
deleteMeterFeatures
public org.onosproject.net.meter.MeterStoreResult deleteMeterFeatures(Collection<org.onosproject.net.meter.MeterFeatures> meterfeatures)
- Specified by:
deleteMeterFeaturesin interfaceorg.onosproject.net.meter.MeterStore
-
updateMeterState
public org.onosproject.net.meter.Meter updateMeterState(org.onosproject.net.meter.Meter meter)
- Specified by:
updateMeterStatein interfaceorg.onosproject.net.meter.MeterStore
-
getMeter
public org.onosproject.net.meter.Meter getMeter(org.onosproject.net.meter.MeterKey key)
- Specified by:
getMeterin interfaceorg.onosproject.net.meter.MeterStore
-
getAllMeters
public Collection<org.onosproject.net.meter.Meter> getAllMeters()
- Specified by:
getAllMetersin interfaceorg.onosproject.net.meter.MeterStore
-
getAllMeters
public Collection<org.onosproject.net.meter.Meter> getAllMeters(org.onosproject.net.DeviceId deviceId)
- Specified by:
getAllMetersin interfaceorg.onosproject.net.meter.MeterStore
-
getAllMeters
public Collection<org.onosproject.net.meter.Meter> getAllMeters(org.onosproject.net.DeviceId deviceId, org.onosproject.net.meter.MeterScope scope)
- Specified by:
getAllMetersin interfaceorg.onosproject.net.meter.MeterStore
-
failedMeter
public void failedMeter(org.onosproject.net.meter.MeterOperation op, org.onosproject.net.meter.MeterFailReason reason)- Specified by:
failedMeterin interfaceorg.onosproject.net.meter.MeterStore
-
purgeMeter
public void purgeMeter(org.onosproject.net.meter.Meter m)
- Specified by:
purgeMeterin interfaceorg.onosproject.net.meter.MeterStore
-
purgeMeters
public void purgeMeters(org.onosproject.net.DeviceId deviceId)
- Specified by:
purgeMetersin interfaceorg.onosproject.net.meter.MeterStore
-
purgeMeters
public void purgeMeters(org.onosproject.net.DeviceId deviceId, org.onosproject.core.ApplicationId appId)- Specified by:
purgeMetersin interfaceorg.onosproject.net.meter.MeterStore
-
userDefinedIndexMode
public boolean userDefinedIndexMode(boolean enable)
- Specified by:
userDefinedIndexModein interfaceorg.onosproject.net.meter.MeterStore
-
getMaxMeters
protected long getMaxMeters(org.onosproject.net.meter.MeterTableKey key)
-
allocateMeterId
public org.onosproject.net.meter.MeterCellId allocateMeterId(org.onosproject.net.DeviceId deviceId, org.onosproject.net.meter.MeterScope meterScope)- Specified by:
allocateMeterIdin interfaceorg.onosproject.net.meter.MeterStore
-
freeMeterId
public void freeMeterId(org.onosproject.net.DeviceId deviceId, org.onosproject.net.meter.MeterId meterId)- Specified by:
freeMeterIdin interfaceorg.onosproject.net.meter.MeterStore
-
freeMeterId
protected void freeMeterId(org.onosproject.net.DeviceId deviceId, org.onosproject.net.meter.MeterCellId meterCellId)
-
freeMeterId
protected void freeMeterId(org.onosproject.net.meter.MeterTableKey meterTableKey, org.onosproject.net.meter.MeterCellId meterCellId)
-
-