Interface Declarable

All Known Subinterfaces:
AccessControl, AsyncEventListener, Authenticator, AuthInitialize, CacheCallback, CacheListener<K,V>, CacheLoader<K,V>, CacheWriter<K,V>, CqListener, CqStatusListener, CustomExpiry<K,V>, FixedPartitionResolver<K,V>, GatewayEventFilter, GatewayEventSubstitutionFilter<K,V>, GatewayTransportFilter, InterestRegistrationListener, PartitionResolver<K,V>, RegionMembershipListener<K,V>, RegionRoleListener<K,V>, ServerLoadProbe, TransactionListener, TransactionWriter
All Known Implementing Classes:
CacheListenerAdapter, CacheWriterAdapter, CqListenerAdapter, ReflectionBasedAutoSerializer, RegionMembershipListenerAdapter, RegionRoleListenerAdapter, ServerLoadProbeAdapter, SniProxySocketFactory, StringPrefixPartitionResolver, TransactionListenerAdapter

public interface Declarable
An object that can be described in a declarative caching XML file.

Any user-defined object in the declarative caching xml file should implement this interface in order to be constructed.

For example, the user can declare a CacheLoader in a declarative XML file as follows:

        <cache-loader>
          <class-name>com.company.app.DBLoader</class-name>
          <parameter name="URL">
            <string>jdbc://12.34.56.78/mydb</string>
          </parameter>
        </cache-loader>
 

In this case, com.company.app.DBLoader must implement both the CacheLoader and Declarable interfaces. The cache service will construct a com.company.app.DBLoader object by invoking the loader's zero-argument constructor and then calling the init(java.util.Properties) method to pass in the parameters.

See package introduction.

Since:
GemFire 2.0
  • Method Summary

    Modifier and Type
    Method
    Description
    default void
    Deprecated.
    as of Geode 1.5 implement initialize instead.
    default void
    initialize(Cache cache, Properties properties)
    Initializes a user-defined object, owned by the given cache, using the given properties.
  • Method Details

    • init

      @Deprecated default void init(Properties props)
      Deprecated.
      as of Geode 1.5 implement initialize instead.
      Initializes a user-defined object using the given properties. Note that any uncaught exception thrown by this method will cause the Cache initialization to fail.
      Parameters:
      props - Contains the parameters declared in the declarative xml file.
      Throws:
      IllegalArgumentException - If one of the configuration options in props is illegal or malformed.
    • initialize

      default void initialize(Cache cache, Properties properties)
      Initializes a user-defined object, owned by the given cache, using the given properties. Note that any uncaught exception thrown by this method will cause the Cache initialization to fail. Note that if this method is implemented then the deprecated init method should not be implemented. The product will call both methods assuming that only one will have a non-default implementation.
      Parameters:
      cache - the cache that owns this declarable
      properties - Contains the parameters declared in the declarative xml file.
      Throws:
      IllegalArgumentException - should be thrown if properties contains something unexpected.
      Since:
      Geode 1.5