Class PagedTopicScheme

    • Constructor Detail

    • Method Detail

      • getStorageScheme

        public CachingScheme getStorageScheme​(ParameterResolver resolver)
        Return the BackingMapScheme used for the storage of this scheme.
        Parameters:
        resolver - potentially override default unit-calculator of BINARY
        Returns:
        the scheme
      • getStorageScheme

        public CachingScheme getStorageScheme()
        Return the BackingMapScheme used for the storage of this scheme.
        Returns:
        the scheme
      • setChannelCount

        @Injectable("channel-count")
        public void setChannelCount​(Expression<Integer> expr)
        Set the number of channels in the topic.
        Parameters:
        expr - the number of channels in the topic
      • getChannelCount

        public int getChannelCount​(ParameterResolver resolver)
        Returns the number of channels in the topic, or the PagedTopic.DEFAULT_CHANNEL_COUNT value to indicate the topic uses the default channel count.
        Parameters:
        resolver - the ParameterResolver
        Returns:
        the number of channels in the topic, or the PagedTopic.DEFAULT_CHANNEL_COUNT value to indicate the topic uses the default channel count
      • setStorageScheme

        @Injectable("storage")
        public void setStorageScheme​(CachingScheme scheme)
        Set the BackingMapScheme which builds the backing map for the internal caches used to implement this scheme.
        Parameters:
        scheme - the scheme builder
      • getPageSize

        public Units getPageSize​(ParameterResolver resolver)
        Return the binary limit of the size of a page in a topic. Contains the target number of bytes that can be placed in a page before the page is deemed to be full. Legal values are positive integers.
        Parameters:
        resolver - the ParameterResolver
        Returns:
        the page size
      • setPageSize

        @Injectable("page-size")
        public void setPageSize​(Expression<Units> expr)
        Set the page size.
        Parameters:
        expr - the page high units expression
      • getHighUnits

        public long getHighUnits​(ParameterResolver resolver)
        Return the high-units
        Parameters:
        resolver - the ParameterResolver
        Returns:
        the unit factor
      • setHighUnits

        @Injectable("high-units")
        public void setHighUnits​(Expression<com.oracle.coherence.common.util.MemorySize> expr)
        Set the high-units
        Parameters:
        expr - the high-units expression
      • getTransientExpression

        public Expression<Boolean> getTransientExpression()
        Return the Expression transient. to use to determine whether the backing map is transient.
        Returns:
        the Expression transient. to use to determine whether the backing map is transient
      • setTransient

        @Injectable
        public void setTransient​(Expression<Boolean> expr)
        Set the transient flag.
        Parameters:
        expr - true to make the backing map transient.
      • getExpiryDelay

        public Seconds getExpiryDelay​(ParameterResolver resolver)
        Return the amount of time that elements offered to the queue remain visible to consumers.
        Parameters:
        resolver - the ParameterResolver
        Returns:
        the amount of time that elements offered to the queue remain visible to consumers
      • setExpiryDelay

        @Injectable
        public void setExpiryDelay​(Expression<Seconds> expr)
        Set the amount of time that elements offered to the queue remain visible to consumers.
        Parameters:
        expr - the element expiry delay expression
      • isRetainConsumed

        public boolean isRetainConsumed​(ParameterResolver resolver)
        Determine whether to retain consumed values.
        Parameters:
        resolver - the ParameterResolver
        Returns:
        true if the topic should retain consumed values
      • setRetainConsumed

        @Injectable("retain-consumed")
        public void setRetainConsumed​(Expression<Boolean> expr)
        Set whether to retain consumed values.
        Parameters:
        expr - the expression to produce the retain-consumed values flag
      • isAllowUnownedCommits

        public boolean isAllowUnownedCommits​(ParameterResolver resolver)
        Returns true if the topic allows commits for a position in a channel by subscribers that do not own the channel.
        Parameters:
        resolver - the ParameterResolver
        Returns:
        true if the topic allows commits for a position in a channel by subscribers that do not own the channel
      • setAllowUnownedCommits

        @Injectable("allow-unowned-commits")
        public void setAllowUnownedCommits​(Expression<Boolean> expr)
        Set the flag that indicates whether the topic allows commits for a position in a channel by subscribers that do not own the channel
        Parameters:
        expr - true if the topic allows commits for a position in a channel by subscribers that do not own the channel or false to only accept commits from channel owners
      • getSubscriberTimeout

        public Seconds getSubscriberTimeout​(ParameterResolver resolver)
        Returns the subscriber timeout value.
        Parameters:
        resolver - the ParameterResolver
        Returns:
        the subscriber timeout value
      • setSubscriberTimeout

        @Injectable("subscriber-timeout")
        public void setSubscriberTimeout​(Expression<Seconds> expr)
        Set the subscriber timeout value.
        Parameters:
        expr - the expression representing the timeout value for subscribers
      • getElementCalculatorBuilder

        public ElementCalculatorBuilder getElementCalculatorBuilder()
        Return the ElementCalculatorBuilder used to build a ElementCalculator.
        Returns:
        the element calculator
      • setElementCalculatorBuilder

        @Injectable("element-calculator")
        public void setElementCalculatorBuilder​(ElementCalculatorBuilder builder)
        Set the ElementCalculatorBuilder.
        Parameters:
        builder - the ElementCalculatorBuilder
      • getReconnectTimeoutMillis

        public Seconds getReconnectTimeoutMillis​(ParameterResolver resolver)
        Returns the maximum amount of time publishers and subscribers will attempt to reconnect after being disconnected.
        Parameters:
        resolver - the parameter resolver
        Returns:
        the maximum amount of time publishers and subscribers will attempt to reconnect after being disconnected
      • setReconnectTimeoutMillis

        @Injectable("reconnect-timeout")
        public void setReconnectTimeoutMillis​(Expression<Seconds> expr)
        Set the maximum amount of time publishers and subscribers will attempt to reconnect after being disconnected.
        Parameters:
        expr - the maximum amount of time publishers and subscribers will attempt to reconnect after being disconnected
      • getReconnectRetryMillis

        public Seconds getReconnectRetryMillis​(ParameterResolver resolver)
        Return the amount of time publishers and subscribers will wait between attempts to reconnect after being disconnected.
        Parameters:
        resolver - the parameter resolver
        Returns:
        the maximum amount of time publishers and subscribers will wait between attempts to reconnect after being disconnected
      • setReconnectRetryMillis

        @Injectable("reconnect-retry")
        public void setReconnectRetryMillis​(Expression<Seconds> expr)
        Set the amount of time publishers and subscribers will wait between attempts to reconnect after being disconnected.
        Parameters:
        expr - the maximum amount of time publishers and subscribers will wait between attempts to reconnect after being disconnected
      • getReconnectWaitMillis

        public Seconds getReconnectWaitMillis​(ParameterResolver resolver)
        Return the amount of time publishers and subscribers will wait before attempts to reconnect after being disconnected.
        Parameters:
        resolver - the parameter resolver
        Returns:
        the maximum amount of time publishers and subscribers will wait before attempts to reconnect after being disconnected
      • setReconnectWaitMillis

        @Injectable("reconnect-wait")
        public void setReconnectWaitMillis​(Expression<Seconds> expr)
        Set the amount of time publishers and subscribers will wait before attempts to reconnect after being disconnected.
        Parameters:
        expr - the maximum amount of time publishers and subscribers will wait before attempts to reconnect after being disconnected
      • createConfiguration

        public com.tangosol.internal.net.topic.impl.paged.PagedTopicDependencies createConfiguration​(ParameterResolver resolver,
                                                                                                     ClassLoader loader)
        Create a PagedTopicDependencies based on the values contained in this scheme.
        Parameters:
        resolver - the ParameterResolver to use to resolve configuration values
        loader - the ClassLoader to use
        Returns:
        a PagedTopicDependencies based on the values contained in this scheme