Class AbstractServiceLogCache

java.lang.Object
eu.cloudnetservice.node.impl.service.defaults.log.AbstractServiceLogCache
All Implemented Interfaces:
eu.cloudnetservice.node.service.ServiceConsoleLogCache
Direct Known Subclasses:
ProcessServiceLogCache

public abstract class AbstractServiceLogCache extends Object implements eu.cloudnetservice.node.service.ServiceConsoleLogCache
  • Field Details

    • VM_BOOTSTRAP_NO_SHARE_WARNING

      private static final String VM_BOOTSTRAP_NO_SHARE_WARNING
      See Also:
    • LOGGER

      protected static final org.slf4j.Logger LOGGER
    • ANSI_SEQUENCE_PATTERN

      protected static final Pattern ANSI_SEQUENCE_PATTERN
    • associatedServiceId

      protected final eu.cloudnetservice.driver.service.ServiceId associatedServiceId
    • cachedLogMessages

      protected final Queue<String> cachedLogMessages
    • handlers

      protected final Set<eu.cloudnetservice.node.service.ServiceConsoleLineHandler> handlers
    • logCacheSize

      protected volatile int logCacheSize
    • alwaysPrintErrorStreamToConsole

      protected volatile boolean alwaysPrintErrorStreamToConsole
  • Constructor Details

    • AbstractServiceLogCache

      public AbstractServiceLogCache(@NonNull @NonNull eu.cloudnetservice.node.config.Configuration configuration, @NonNull @NonNull eu.cloudnetservice.driver.service.ServiceId associatedServiceId)
  • Method Details

    • associatedServiceId

      @NonNull public @NonNull eu.cloudnetservice.driver.service.ServiceId associatedServiceId()
      Specified by:
      associatedServiceId in interface eu.cloudnetservice.node.service.ServiceConsoleLogCache
    • cachedLogMessages

      @NonNull public @NonNull Queue<String> cachedLogMessages()
      Specified by:
      cachedLogMessages in interface eu.cloudnetservice.node.service.ServiceConsoleLogCache
    • logCacheSize

      public int logCacheSize()
      Specified by:
      logCacheSize in interface eu.cloudnetservice.node.service.ServiceConsoleLogCache
    • logCacheSize

      public void logCacheSize(int cacheSize)
      Specified by:
      logCacheSize in interface eu.cloudnetservice.node.service.ServiceConsoleLogCache
    • alwaysPrintErrorStreamToConsole

      public boolean alwaysPrintErrorStreamToConsole()
      Specified by:
      alwaysPrintErrorStreamToConsole in interface eu.cloudnetservice.node.service.ServiceConsoleLogCache
    • alwaysPrintErrorStreamToConsole

      public void alwaysPrintErrorStreamToConsole(boolean value)
      Specified by:
      alwaysPrintErrorStreamToConsole in interface eu.cloudnetservice.node.service.ServiceConsoleLogCache
    • addHandler

      public void addHandler(@NonNull @NonNull eu.cloudnetservice.node.service.ServiceConsoleLineHandler handler)
      Specified by:
      addHandler in interface eu.cloudnetservice.node.service.ServiceConsoleLogCache
    • removeHandler

      public void removeHandler(@NonNull @NonNull eu.cloudnetservice.node.service.ServiceConsoleLineHandler handler)
      Specified by:
      removeHandler in interface eu.cloudnetservice.node.service.ServiceConsoleLogCache
    • handlers

      @NonNull public @NonNull @UnmodifiableView Collection<eu.cloudnetservice.node.service.ServiceConsoleLineHandler> handlers()
      Specified by:
      handlers in interface eu.cloudnetservice.node.service.ServiceConsoleLogCache
    • handleItem

      protected void handleItem(@NonNull @NonNull String entry, boolean comesFromErrorStream)