Interface UserCodeNamespaceAwareConfig<T>

Type Parameters:
T - Implementation type for use in return type of setUserCodeNamespace(String)
All Known Implementing Classes:
CacheConfig, CacheSimpleConfig, CollectionConfig, DurableExecutorConfig, ExecutorConfig, ListConfig, MapConfig, MultiMapConfig, QueueConfig, ReliableTopicConfig, ReplicatedMapConfig, RingbufferConfig, ScheduledExecutorConfig, SetConfig, TopicConfig

public interface UserCodeNamespaceAwareConfig<T>
An interface to mark implementing configs as "Namespace aware", meaning they should support the definition of a User Code Namespace string which represents the User Code Namespace to associate with all operations pertaining to this config.
Since:
5.4
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final String
    Defines the default User Code Namespace Name used for all UserCodeNamespaceAwareConfig implementations.
  • Method Summary

    Modifier and Type
    Method
    Description
    default String
    Retrieve the User Code Deployment Namespace to be used for ClassLoader awareness during operations related to the structure associated with this configuration.
    setUserCodeNamespace(String userCodeNamespace)
    Associates the provided User Code Namespace Name with this structure for ClassLoader awareness.
  • Field Details

    • DEFAULT_NAMESPACE

      static final String DEFAULT_NAMESPACE
      Defines the default User Code Namespace Name used for all UserCodeNamespaceAwareConfig implementations.

      The default is currently null which results in the following behaviour:

      • When a "default" Namespace is defined in the UserCodeNamespaceService, i.e. a Namespace exists with the ID UserCodeNamespaceService.DEFAULT_NAMESPACE_NAME, that Namespace is used for relevant operations after being transformed internally.
      • When there is no "default" Namespace defined, this value remains null and there is no Namespace awareness used during relevant operations.
  • Method Details

    • getUserCodeNamespace

      @Nullable default String getUserCodeNamespace()
      Retrieve the User Code Deployment Namespace to be used for ClassLoader awareness during operations related to the structure associated with this configuration.
      Returns:
      Namespace Name for use with the UserCodeNamespaceService, or null if there is no User Code Namespace to associate with.
      Since:
      5.4
    • setUserCodeNamespace

      T setUserCodeNamespace(@Nullable String userCodeNamespace)
      Associates the provided User Code Namespace Name with this structure for ClassLoader awareness.

      The behaviour of setting this to null is outlined in the documentation for DEFAULT_NAMESPACE.

      Parameters:
      userCodeNamespace - The ID of the User Code Namespace to associate with this structure.
      Returns:
      the updated UserCodeNamespaceAwareConfig config instance
      Since:
      5.4