Class NodeServiceTaskProvider

java.lang.Object
eu.cloudnetservice.node.impl.provider.NodeServiceTaskProvider
All Implemented Interfaces:
eu.cloudnetservice.driver.provider.ServiceTaskProvider

@Singleton @Provides(eu.cloudnetservice.driver.provider.ServiceTaskProvider.class) public class NodeServiceTaskProvider extends Object implements eu.cloudnetservice.driver.provider.ServiceTaskProvider
  • Field Details

    • TASKS_DIRECTORY

      private static final Path TASKS_DIRECTORY
    • LIST_DOCUMENT_TYPE

      private static final Type LIST_DOCUMENT_TYPE
    • LOGGER

      private static final org.slf4j.Logger LOGGER
    • i18n

      private final eu.cloudnetservice.driver.language.I18n i18n
    • eventManager

      private final eu.cloudnetservice.driver.event.EventManager eventManager
    • serviceTasks

      private final Map<String, eu.cloudnetservice.driver.service.ServiceTask> serviceTasks
  • Constructor Details

    • NodeServiceTaskProvider

      @Inject public NodeServiceTaskProvider(@NonNull @Service @NonNull eu.cloudnetservice.driver.language.I18n i18n, @NonNull @NonNull eu.cloudnetservice.driver.event.EventManager eventManager, @NonNull @NonNull eu.cloudnetservice.driver.network.rpc.factory.RPCFactory rpcFactory, @NonNull @NonNull eu.cloudnetservice.node.cluster.sync.DataSyncRegistry syncRegistry, @NonNull @NonNull eu.cloudnetservice.driver.network.rpc.handler.RPCHandlerRegistry handlerRegistry)
  • Method Details

    • loadTasks

      @Inject private void loadTasks(@NonNull @NonNull DefaultInstallation installation)
    • registerTaskChannelListener

      @Inject private void registerTaskChannelListener()
    • reload

      public void reload()
      Specified by:
      reload in interface eu.cloudnetservice.driver.provider.ServiceTaskProvider
    • serviceTasks

      @NonNull public @NonNull Collection<eu.cloudnetservice.driver.service.ServiceTask> serviceTasks()
      Specified by:
      serviceTasks in interface eu.cloudnetservice.driver.provider.ServiceTaskProvider
    • serviceTask

      @Nullable public @Nullable eu.cloudnetservice.driver.service.ServiceTask serviceTask(@NonNull @NonNull String name)
      Specified by:
      serviceTask in interface eu.cloudnetservice.driver.provider.ServiceTaskProvider
    • addServiceTask

      public boolean addServiceTask(@NonNull @NonNull eu.cloudnetservice.driver.service.ServiceTask serviceTask)
      Specified by:
      addServiceTask in interface eu.cloudnetservice.driver.provider.ServiceTaskProvider
    • removeServiceTaskByName

      public void removeServiceTaskByName(@NonNull @NonNull String name)
      Specified by:
      removeServiceTaskByName in interface eu.cloudnetservice.driver.provider.ServiceTaskProvider
    • removeServiceTask

      public void removeServiceTask(@NonNull @NonNull eu.cloudnetservice.driver.service.ServiceTask serviceTask)
      Specified by:
      removeServiceTask in interface eu.cloudnetservice.driver.provider.ServiceTaskProvider
    • reloadAsync

      @NonNull public @NonNull CompletableFuture<Void> reloadAsync()
      Specified by:
      reloadAsync in interface eu.cloudnetservice.driver.provider.ServiceTaskProvider
    • serviceTasksAsync

      @NonNull public @NonNull CompletableFuture<Collection<eu.cloudnetservice.driver.service.ServiceTask>> serviceTasksAsync()
      Specified by:
      serviceTasksAsync in interface eu.cloudnetservice.driver.provider.ServiceTaskProvider
    • serviceTaskAsync

      @NonNull public @NonNull CompletableFuture<eu.cloudnetservice.driver.service.ServiceTask> serviceTaskAsync(@NonNull @NonNull String name)
      Specified by:
      serviceTaskAsync in interface eu.cloudnetservice.driver.provider.ServiceTaskProvider
    • addServiceTaskAsync

      @NonNull public @NonNull CompletableFuture<Boolean> addServiceTaskAsync(@NonNull @NonNull eu.cloudnetservice.driver.service.ServiceTask serviceTask)
      Specified by:
      addServiceTaskAsync in interface eu.cloudnetservice.driver.provider.ServiceTaskProvider
    • removeServiceTaskByNameAsync

      @NonNull public @NonNull CompletableFuture<Void> removeServiceTaskByNameAsync(@NonNull @NonNull String name)
      Specified by:
      removeServiceTaskByNameAsync in interface eu.cloudnetservice.driver.provider.ServiceTaskProvider
    • removeServiceTaskAsync

      @NonNull public @NonNull CompletableFuture<Void> removeServiceTaskAsync(@NonNull @NonNull eu.cloudnetservice.driver.service.ServiceTask serviceTask)
      Specified by:
      removeServiceTaskAsync in interface eu.cloudnetservice.driver.provider.ServiceTaskProvider
    • addPermanentServiceTaskSilently

      public void addPermanentServiceTaskSilently(@NonNull @NonNull eu.cloudnetservice.driver.service.ServiceTask serviceTask)
    • removePermanentServiceTaskSilently

      public void removePermanentServiceTaskSilently(@NonNull @NonNull eu.cloudnetservice.driver.service.ServiceTask serviceTask)
    • taskFile

      @NonNull protected @NonNull Path taskFile(@NonNull @NonNull eu.cloudnetservice.driver.service.ServiceTask task)
    • writeServiceTask

      protected void writeServiceTask(@NonNull @NonNull eu.cloudnetservice.driver.service.ServiceTask serviceTask)
    • loadServiceTasks

      protected void loadServiceTasks()