Class GossipIntentStore

  • All Implemented Interfaces:
    org.onosproject.net.intent.IntentStore, org.onosproject.store.Store<org.onosproject.net.intent.IntentEvent,​org.onosproject.net.intent.IntentStoreDelegate>

    public class GossipIntentStore
    extends org.onosproject.store.AbstractStore<org.onosproject.net.intent.IntentEvent,​org.onosproject.net.intent.IntentStoreDelegate>
    implements org.onosproject.net.intent.IntentStore
    Manages inventory of Intents in a distributed data store that uses optimistic replication and gossip based techniques.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected org.onosproject.cluster.ClusterService clusterService  
      protected org.onosproject.cfg.ComponentConfigService configService  
      protected org.onosproject.net.intent.WorkPartitionService partitionService  
      protected org.onosproject.store.service.StorageService storageService  
      • Fields inherited from class org.onosproject.store.AbstractStore

        delegate
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void activate​(org.osgi.service.component.ComponentContext context)  
      void addPending​(org.onosproject.net.intent.IntentData data)  
      void batchWrite​(java.lang.Iterable<org.onosproject.net.intent.IntentData> updates)  
      void deactivate()  
      java.util.List<org.onosproject.net.intent.Intent> getInstallableIntents​(org.onosproject.net.intent.Key intentKey)  
      org.onosproject.net.intent.Intent getIntent​(org.onosproject.net.intent.Key key)  
      long getIntentCount()  
      java.lang.Iterable<org.onosproject.net.intent.IntentData> getIntentData​(boolean localOnly, long olderThan)  
      org.onosproject.net.intent.IntentData getIntentData​(org.onosproject.net.intent.Key key)  
      java.lang.Iterable<org.onosproject.net.intent.Intent> getIntents()  
      org.onosproject.net.intent.IntentState getIntentState​(org.onosproject.net.intent.Key intentKey)  
      java.lang.Iterable<org.onosproject.net.intent.Intent> getPending()  
      java.lang.Iterable<org.onosproject.net.intent.IntentData> getPendingData()  
      java.lang.Iterable<org.onosproject.net.intent.IntentData> getPendingData​(boolean localOnly, long olderThan)  
      org.onosproject.net.intent.IntentData getPendingData​(org.onosproject.net.intent.Key intentKey)  
      boolean isMaster​(org.onosproject.net.intent.Key intentKey)  
      void modified​(org.osgi.service.component.ComponentContext context)  
      void write​(org.onosproject.net.intent.IntentData newData)  
      • Methods inherited from class org.onosproject.store.AbstractStore

        hasDelegate, notifyDelegate, notifyDelegate, setDelegate, unsetDelegate
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      • Methods inherited from interface org.onosproject.store.Store

        hasDelegate, setDelegate, unsetDelegate
    • Field Detail

      • configService

        protected org.onosproject.cfg.ComponentConfigService configService
      • clusterService

        protected org.onosproject.cluster.ClusterService clusterService
      • storageService

        protected org.onosproject.store.service.StorageService storageService
      • partitionService

        protected org.onosproject.net.intent.WorkPartitionService partitionService
    • Constructor Detail

      • GossipIntentStore

        public GossipIntentStore()
    • Method Detail

      • activate

        public void activate​(org.osgi.service.component.ComponentContext context)
      • deactivate

        public void deactivate()
      • modified

        public void modified​(org.osgi.service.component.ComponentContext context)
      • getIntentCount

        public long getIntentCount()
        Specified by:
        getIntentCount in interface org.onosproject.net.intent.IntentStore
      • getIntents

        public java.lang.Iterable<org.onosproject.net.intent.Intent> getIntents()
        Specified by:
        getIntents in interface org.onosproject.net.intent.IntentStore
      • getIntentData

        public java.lang.Iterable<org.onosproject.net.intent.IntentData> getIntentData​(boolean localOnly,
                                                                                       long olderThan)
        Specified by:
        getIntentData in interface org.onosproject.net.intent.IntentStore
      • getIntentState

        public org.onosproject.net.intent.IntentState getIntentState​(org.onosproject.net.intent.Key intentKey)
        Specified by:
        getIntentState in interface org.onosproject.net.intent.IntentStore
      • getInstallableIntents

        public java.util.List<org.onosproject.net.intent.Intent> getInstallableIntents​(org.onosproject.net.intent.Key intentKey)
        Specified by:
        getInstallableIntents in interface org.onosproject.net.intent.IntentStore
      • write

        public void write​(org.onosproject.net.intent.IntentData newData)
        Specified by:
        write in interface org.onosproject.net.intent.IntentStore
      • batchWrite

        public void batchWrite​(java.lang.Iterable<org.onosproject.net.intent.IntentData> updates)
        Specified by:
        batchWrite in interface org.onosproject.net.intent.IntentStore
      • getIntent

        public org.onosproject.net.intent.Intent getIntent​(org.onosproject.net.intent.Key key)
        Specified by:
        getIntent in interface org.onosproject.net.intent.IntentStore
      • getIntentData

        public org.onosproject.net.intent.IntentData getIntentData​(org.onosproject.net.intent.Key key)
        Specified by:
        getIntentData in interface org.onosproject.net.intent.IntentStore
      • addPending

        public void addPending​(org.onosproject.net.intent.IntentData data)
        Specified by:
        addPending in interface org.onosproject.net.intent.IntentStore
      • isMaster

        public boolean isMaster​(org.onosproject.net.intent.Key intentKey)
        Specified by:
        isMaster in interface org.onosproject.net.intent.IntentStore
      • getPending

        public java.lang.Iterable<org.onosproject.net.intent.Intent> getPending()
        Specified by:
        getPending in interface org.onosproject.net.intent.IntentStore
      • getPendingData

        public java.lang.Iterable<org.onosproject.net.intent.IntentData> getPendingData()
        Specified by:
        getPendingData in interface org.onosproject.net.intent.IntentStore
      • getPendingData

        public org.onosproject.net.intent.IntentData getPendingData​(org.onosproject.net.intent.Key intentKey)
        Specified by:
        getPendingData in interface org.onosproject.net.intent.IntentStore
      • getPendingData

        public java.lang.Iterable<org.onosproject.net.intent.IntentData> getPendingData​(boolean localOnly,
                                                                                        long olderThan)
        Specified by:
        getPendingData in interface org.onosproject.net.intent.IntentStore