Class InterestPolicy

  • java.lang.Object
    • org.apache.geode.cache.InterestPolicy
  • All Implemented Interfaces:
    java.io.Serializable

    @Immutable
    public class InterestPolicy
    extends java.lang.Object
    implements java.io.Serializable
    Enumerated type for region subscription interest policy. The interest policy specifies what data a subscriber is interested in having in it's region.
    Since:
    GemFire 5.0
    See Also:
    SubscriptionAttributes, Serialized Form
    • Field Detail

      • ALL

        @Immutable
        public static final InterestPolicy ALL
        This subscriber is interested in all data. More specifically operations done in this cache and distributed operations done in remote caches.

        When combined with DataPolicy.EMPTY this region will receive events for every distributed operation but will not store the data.

        When combined with DataPolicy.NORMAL or DataPolicy.PRELOADED this region will accept Region.create(Object, Object) operations done remotely. Without the ALL interest policy, NORMAL and PRELOADED ignore creates that the region does not have an existing entry for.

        When combined with the replication policies this interest has no effect.

        When combined with DataPolicy.PARTITION this interest policy causes cache listeners to be notified of changes regardless of the physical location of the data affected. That is, a listener in a VM using this policy will receive notification of all changes to the partitioned region.

      • CACHE_CONTENT

        @Immutable
        public static final InterestPolicy CACHE_CONTENT
        This subscriber is interested in data that is already in its cache. More specifically operations done in this cache and distributed operations done in remote caches.

        When combined with DataPolicy.EMPTY this region will never receive events for distributed operations since its content is always empty. It will continue to get events for operations done locally.

        When combined with DataPolicy.NORMAL or DataPolicy.PRELOADED this region will accept remote operations done to entries it already has in its cache.

        When combined with the replication policies * this interest has no effect.

        When combined with DataPolicy.PARTITION this interest policy causes cache listeners to be notified in the VM holding the affected data. That is, listeners are only notified if the affected* key-value pair is in the same process as the listener.

      • ordinal

        public final byte ordinal
        used as ordinal to represent this InterestPolicy
    • Method Detail

      • fromOrdinal

        public static InterestPolicy fromOrdinal​(byte ordinal)
        Return the InterestPolicy represented by specified ordinal
        Parameters:
        ordinal - the ordinal representation of an InterestPolicy
        Returns:
        the InterestPolicy represented by specified ordinal
      • isAll

        public boolean isAll()
        Return true if this policy is ALL.
        Returns:
        true if this policy is ALL.
      • isCacheContent

        public boolean isCacheContent()
        Return true if this policy is CACHE_CONTENT.
        Returns:
        true if this policy is CACHE_CONTENT.
      • isDefault

        public boolean isDefault()
        Return true if this policy is the default.
        Returns:
        true if this policy is the default.
      • toString

        public java.lang.String toString()
        Returns a string representation for this interest policy.
        Overrides:
        toString in class java.lang.Object
        Returns:
        the name of this interest policy.