Class NodeCloudServiceFactory

java.lang.Object
eu.cloudnetservice.node.impl.service.defaults.NodeCloudServiceFactory
All Implemented Interfaces:
eu.cloudnetservice.driver.provider.CloudServiceFactory

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

    • LOGGER

      private static final org.slf4j.Logger LOGGER
    • eventManager

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

      private final InternalCloudServiceManager serviceManager
    • nodeServerProvider

      private final eu.cloudnetservice.node.cluster.NodeServerProvider nodeServerProvider
    • groupProvider

      private final eu.cloudnetservice.driver.provider.GroupConfigurationProvider groupProvider
    • serviceCreationLock

      private final Lock serviceCreationLock
    • createRetryExecutor

      private final ScheduledExecutorService createRetryExecutor
  • Constructor Details

  • Method Details

    • registerServiceChannelListener

      @Inject private void registerServiceChannelListener()
    • createCloudService

      @NonNull public @NonNull eu.cloudnetservice.driver.service.ServiceCreateResult createCloudService(@NonNull @NonNull eu.cloudnetservice.driver.service.ServiceConfiguration maybeServiceConfiguration)
      Specified by:
      createCloudService in interface eu.cloudnetservice.driver.provider.CloudServiceFactory
    • createCloudServiceAsync

      @NonNull public @NonNull CompletableFuture<eu.cloudnetservice.driver.service.ServiceCreateResult> createCloudServiceAsync(@NonNull @NonNull eu.cloudnetservice.driver.service.ServiceConfiguration configuration)
      Specified by:
      createCloudServiceAsync in interface eu.cloudnetservice.driver.provider.CloudServiceFactory
    • processServiceStartResponse

      @NonNull protected @NonNull eu.cloudnetservice.driver.service.ServiceCreateResult processServiceStartResponse(@NonNull @NonNull eu.cloudnetservice.driver.service.ServiceCreateResult result, @NonNull @NonNull eu.cloudnetservice.node.cluster.NodeServer associatedNode)
    • sendNodeServerStartRequest

      @NonNull protected @NonNull eu.cloudnetservice.driver.service.ServiceCreateResult sendNodeServerStartRequest(@NonNull @NonNull String message, @NonNull @NonNull String targetNode, @NonNull @NonNull eu.cloudnetservice.driver.service.ServiceConfiguration configuration)
    • scheduleCreateRetryIfEnabled

      @NonNull protected @NonNull eu.cloudnetservice.driver.service.ServiceCreateResult scheduleCreateRetryIfEnabled(@NonNull @NonNull eu.cloudnetservice.driver.service.ServiceCreateRetryConfiguration retryConfiguration, @NonNull @NonNull eu.cloudnetservice.driver.service.ServiceConfiguration serviceConfiguration)
    • includeGroupComponents

      protected void includeGroupComponents(@NonNull @NonNull eu.cloudnetservice.driver.service.ServiceConfiguration input, @NonNull eu.cloudnetservice.driver.service.ServiceConfiguration.Builder output)
    • replaceServiceId

      protected void replaceServiceId(@NonNull @NonNull eu.cloudnetservice.driver.service.ServiceConfiguration input, @NonNull eu.cloudnetservice.driver.service.ServiceConfiguration.Builder output)
    • replaceServiceUniqueId

      protected void replaceServiceUniqueId(@NonNull @NonNull eu.cloudnetservice.driver.service.ServiceConfiguration input, @NonNull eu.cloudnetservice.driver.service.ServiceConfiguration.Builder output)