Class WhiteboardUtils


  • public class WhiteboardUtils
    extends java.lang.Object
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static java.lang.String JMX_OAK_DOMAIN
      JMX Domain name under which Oak related JMX MBeans are registered
    • Constructor Summary

      Constructors 
      Constructor Description
      WhiteboardUtils()  
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static <T> T getService​(@NotNull Whiteboard wb, @NotNull java.lang.Class<T> type)
      Returns the one of the currently available services from the whiteboard of the tracked type.
      static <T> T getService​(@NotNull Whiteboard wb, @NotNull java.lang.Class<T> type, @Nullable java.util.function.Predicate<T> predicate)
      Returns the one of the currently available services from the whiteboard of the tracked type.
      static <T> @NotNull java.util.List<T> getServices​(@NotNull Whiteboard wb, @NotNull java.lang.Class<T> type)
      Returns the currently available services from the whiteboard of the tracked type.
      static <T> @NotNull java.util.List<T> getServices​(@NotNull Whiteboard wb, @NotNull java.lang.Class<T> type, @Nullable java.util.function.Predicate<T> predicate)
      Returns the currently available services from the whiteboard of the tracked type.
      static <T> Registration registerMBean​(Whiteboard whiteboard, java.lang.Class<T> iface, T bean, java.lang.String type, java.lang.String name)  
      static <T> Registration registerMBean​(Whiteboard whiteboard, java.lang.Class<T> iface, T bean, java.lang.String type, java.lang.String name, java.util.Map<java.lang.String,​java.lang.String> attrs)  
      static Registration scheduleWithFixedDelay​(Whiteboard whiteboard, java.lang.Runnable runnable, long delayInSeconds)  
      static Registration scheduleWithFixedDelay​(Whiteboard whiteboard, java.lang.Runnable runnable, long delayInSeconds, boolean runOnSingleClusterNode, boolean useDedicatedPool)  
      static Registration scheduleWithFixedDelay​(Whiteboard whiteboard, java.lang.Runnable runnable, java.util.Map<java.lang.String,​java.lang.Object> extraProps, long delayInSeconds, boolean runOnSingleClusterNode, boolean useDedicatedPool)  
      static Registration scheduleWithFixedDelay​(Whiteboard whiteboard, java.lang.Runnable runnable, java.util.Map<java.lang.String,​java.lang.Object> extraProps, long delayInSeconds, WhiteboardUtils.ScheduleExecutionInstanceTypes scheduleExecutionInstanceTypes, boolean useDedicatedPool)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • JMX_OAK_DOMAIN

        public static final java.lang.String JMX_OAK_DOMAIN
        JMX Domain name under which Oak related JMX MBeans are registered
        See Also:
        Constant Field Values
    • Constructor Detail

      • WhiteboardUtils

        public WhiteboardUtils()
    • Method Detail

      • scheduleWithFixedDelay

        public static Registration scheduleWithFixedDelay​(Whiteboard whiteboard,
                                                          java.lang.Runnable runnable,
                                                          long delayInSeconds)
      • scheduleWithFixedDelay

        public static Registration scheduleWithFixedDelay​(Whiteboard whiteboard,
                                                          java.lang.Runnable runnable,
                                                          long delayInSeconds,
                                                          boolean runOnSingleClusterNode,
                                                          boolean useDedicatedPool)
      • scheduleWithFixedDelay

        public static Registration scheduleWithFixedDelay​(Whiteboard whiteboard,
                                                          java.lang.Runnable runnable,
                                                          java.util.Map<java.lang.String,​java.lang.Object> extraProps,
                                                          long delayInSeconds,
                                                          boolean runOnSingleClusterNode,
                                                          boolean useDedicatedPool)
      • registerMBean

        public static <T> Registration registerMBean​(Whiteboard whiteboard,
                                                     java.lang.Class<T> iface,
                                                     T bean,
                                                     java.lang.String type,
                                                     java.lang.String name)
      • registerMBean

        public static <T> Registration registerMBean​(Whiteboard whiteboard,
                                                     java.lang.Class<T> iface,
                                                     T bean,
                                                     java.lang.String type,
                                                     java.lang.String name,
                                                     java.util.Map<java.lang.String,​java.lang.String> attrs)
      • getServices

        @NotNull
        public static <T> @NotNull java.util.List<T> getServices​(@NotNull
                                                                 @NotNull Whiteboard wb,
                                                                 @NotNull
                                                                 @NotNull java.lang.Class<T> type)
        Returns the currently available services from the whiteboard of the tracked type. Note that the underlying tracker is closed automatically.
        Parameters:
        wb - the whiteboard
        type - the service type
        Returns:
        a list of services
      • getService

        @Nullable
        public static <T> T getService​(@NotNull
                                       @NotNull Whiteboard wb,
                                       @NotNull
                                       @NotNull java.lang.Class<T> type)
        Returns the one of the currently available services from the whiteboard of the tracked type. Note that the underlying tracker is closed automatically.
        Returns:
        one service or null
      • getServices

        @NotNull
        public static <T> @NotNull java.util.List<T> getServices​(@NotNull
                                                                 @NotNull Whiteboard wb,
                                                                 @NotNull
                                                                 @NotNull java.lang.Class<T> type,
                                                                 @Nullable
                                                                 @Nullable java.util.function.Predicate<T> predicate)
        Returns the currently available services from the whiteboard of the tracked type. If predicate is not null the returned list is limited to the ones that match the predicate. Note that the underlying tracker is stopped automatically after the services are returned.
        Parameters:
        wb - the whiteboard
        type - the service type
        predicate - filtering predicate or null
        Returns:
        a list of services
      • getService

        @Nullable
        public static <T> T getService​(@NotNull
                                       @NotNull Whiteboard wb,
                                       @NotNull
                                       @NotNull java.lang.Class<T> type,
                                       @Nullable
                                       @Nullable java.util.function.Predicate<T> predicate)
        Returns the one of the currently available services from the whiteboard of the tracked type. If predicate is not null only a service that match the predicate is returned. Note that the underlying tracker is closed automatically.
        Parameters:
        wb - the whiteboard
        type - the service type
        predicate - filtering predicate or null
        Returns:
        one service or null