org.apache.geode.distributed

## Interface ClusterConfigurationService

-     @Experimental
      public interface ClusterConfigurationService

- - ### Method Summary

    All Methods Instance Methods Abstract Methods Default Methods
    Modifier and Type | Method and Description
    --- | ---
    `default void` | `deleteCustomCacheElement(java.lang.String group, java.lang.String id, java.lang.Class<? extends CacheElement> classT)`
    `default void` | `deleteCustomRegionElement(java.lang.String group, java.lang.String regionPath, java.lang.String id, java.lang.Class<? extends CacheElement> classT)`
    `default <T extends CacheElement> T` | `findCustomCacheElement(CacheConfig cacheConfig, java.lang.String elementId, java.lang.Class<T> classT)`
    `default <T extends CacheElement> java.util.List<T>` | `findCustomCacheElements(CacheConfig cacheConfig, java.lang.Class<T> classT)`
    `default <T extends CacheElement> T` | `findCustomRegionElement(CacheConfig cacheConfig, java.lang.String regionPath, java.lang.String elementId, java.lang.Class<T> classT)`
    `default <T extends CacheElement> java.util.List<T>` | `findCustomRegionElements(CacheConfig cacheConfig, java.lang.String regionPath, java.lang.Class<T> classT)`
    `default <T extends Identifiable<java.lang.String>> T` | `findIdentifiable(java.util.List<T> list, java.lang.String id)`
    `default RegionConfig` | `findRegionConfiguration(CacheConfig cacheConfig, java.lang.String regionPath)`
    `CacheConfig` | `getCacheConfig(java.lang.String group)` retrieves the configuration object of a member group
    `default <T extends CacheElement> T` | `getCustomCacheElement(java.lang.String group, java.lang.String id, java.lang.Class<T> classT)`
    `default <T extends CacheElement> T` | `getCustomRegionElement(java.lang.String group, java.lang.String regionPath, java.lang.String id, java.lang.Class<T> classT)`
    `default void` | `registerBindClass(java.lang.Class clazz)`
    `void` | `registerBindClassWithSchema(java.lang.Class clazz, java.lang.String nameSpaceAndLocation)` if you want the output xml have schemaLocation correctly set for your namespace, use this instead of registerBindClass(Class)./
    `default void` | `saveCustomCacheElement(java.lang.String group, CacheElement element)`
    `default void` | `saveCustomRegionElement(java.lang.String group, java.lang.String regionPath, CacheElement element)`
    `void` | `updateCacheConfig(java.lang.String group, java.util.function.UnaryOperator<CacheConfig> mutator)` update the cluster configuration of a member group

- - ### Method Detail

    - #### registerBindClassWithSchema

          void registerBindClassWithSchema(java.lang.Class clazz,
                                           java.lang.String nameSpaceAndLocation)

      if you want the output xml have schemaLocation correctly set for your namespace, use this instead of registerBindClass(Class)./
      Parameters:
        `clazz` - e.g. CacheConfig.class
        `nameSpaceAndLocation` - e.g. "http://geode.apache.org/schema/cache http://geode.apache.org/schema/cache/cache-1.0.xsd"

    - #### registerBindClass

          default void registerBindClass(java.lang.Class clazz)

    - #### getCacheConfig

          CacheConfig getCacheConfig(java.lang.String group)

      retrieves the configuration object of a member group
      Parameters:
        `group` - the member group name, if null, then "cluster" is assumed
      Returns:
        the configuration object

    - #### updateCacheConfig

          void updateCacheConfig(java.lang.String group,
                                 java.util.function.UnaryOperator<CacheConfig> mutator)

      update the cluster configuration of a member group
      Parameters:
        `group` - the member group name, if null, then "cluster" is assumed
        `mutator` - the change you want to apply to the configuration

    - #### getCustomCacheElement

          default <T extends CacheElement> T getCustomCacheElement(java.lang.String group,
                                                                   java.lang.String id,
                                                                   java.lang.Class<T> classT)

    - #### saveCustomCacheElement

          default void saveCustomCacheElement(java.lang.String group,
                                              CacheElement element)

    - #### deleteCustomCacheElement

          default void deleteCustomCacheElement(java.lang.String group,
                                                java.lang.String id,
                                                java.lang.Class<? extends CacheElement> classT)

    - #### getCustomRegionElement

          default <T extends CacheElement> T getCustomRegionElement(java.lang.String group,
                                                                    java.lang.String regionPath,
                                                                    java.lang.String id,
                                                                    java.lang.Class<T> classT)

    - #### saveCustomRegionElement

          default void saveCustomRegionElement(java.lang.String group,
                                               java.lang.String regionPath,
                                               CacheElement element)

    - #### deleteCustomRegionElement

          default void deleteCustomRegionElement(java.lang.String group,
                                                 java.lang.String regionPath,
                                                 java.lang.String id,
                                                 java.lang.Class<? extends CacheElement> classT)

    - #### findIdentifiable

          default <T extends Identifiable<java.lang.String>> T findIdentifiable(java.util.List<T> list,
                                                                                java.lang.String id)

    - #### findRegionConfiguration

          default RegionConfig findRegionConfiguration(CacheConfig cacheConfig,
                                                       java.lang.String regionPath)

    - #### findCustomCacheElements

          default <T extends CacheElement> java.util.List<T> findCustomCacheElements(CacheConfig cacheConfig,
                                                                                     java.lang.Class<T> classT)

    - #### findCustomCacheElement

          default <T extends CacheElement> T findCustomCacheElement(CacheConfig cacheConfig,
                                                                    java.lang.String elementId,
                                                                    java.lang.Class<T> classT)

    - #### findCustomRegionElements

          default <T extends CacheElement> java.util.List<T> findCustomRegionElements(CacheConfig cacheConfig,
                                                                                      java.lang.String regionPath,
                                                                                      java.lang.Class<T> classT)

    - #### findCustomRegionElement

          default <T extends CacheElement> T findCustomRegionElement(CacheConfig cacheConfig,
                                                                     java.lang.String regionPath,
                                                                     java.lang.String elementId,
                                                                     java.lang.Class<T> classT)