Class PlatformBridgeManagement<P,I>
java.lang.Object
eu.cloudnetservice.modules.bridge.platform.PlatformBridgeManagement<P,I>
- All Implemented Interfaces:
BridgeManagement
- Direct Known Subclasses:
BukkitBridgeManagement,BungeeCordBridgeManagement,FabricBridgeManagement,LimboLoohpBridgeManagement,MinestomBridgeManagement,NukkitBridgeManagement,SpongeBridgeManagement,VelocityBridgeManagement,WaterDogPEBridgeManagement
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final BridgeServiceHelperprotected Consumer<eu.cloudnetservice.driver.service.ServiceInfoSnapshot> protected Predicate<eu.cloudnetservice.driver.service.ServiceInfoSnapshot> protected Consumer<eu.cloudnetservice.driver.service.ServiceInfoSnapshot> protected BridgeConfigurationprotected static final Predicate<eu.cloudnetservice.driver.service.ServiceInfoSnapshot> protected ProxyFallbackConfigurationprotected final eu.cloudnetservice.driver.event.EventManagerprotected final com.github.benmanes.caffeine.cache.LoadingCache<UUID, FallbackProfile> protected final NetworkServiceInfoprotected final PlayerManagerprotected eu.cloudnetservice.driver.service.ServiceTaskprotected final eu.cloudnetservice.driver.network.rpc.RPCSenderprotected final eu.cloudnetservice.wrapper.holder.ServiceInfoHolderprotected final eu.cloudnetservice.driver.provider.CloudServiceProviderprotected final eu.cloudnetservice.driver.provider.ServiceTaskProviderprotected final eu.cloudnetservice.wrapper.configuration.WrapperConfigurationFields inherited from interface eu.cloudnetservice.modules.bridge.BridgeManagement
BRIDGE_CHANNEL_NAME, BRIDGE_PLAYER_CHANNEL_NAME, BRIDGE_PLAYER_DB_NAME, BRIDGE_PLAYER_EXECUTOR_CHANNEL_NAME -
Constructor Summary
ConstructorsConstructorDescriptionPlatformBridgeManagement(@NonNull eu.cloudnetservice.driver.network.rpc.factory.RPCFactory rpcFactory, @NonNull eu.cloudnetservice.driver.event.EventManager eventManager, @NonNull eu.cloudnetservice.driver.network.NetworkClient networkClient, @NonNull eu.cloudnetservice.driver.provider.ServiceTaskProvider taskProvider, @NonNull BridgeServiceHelper serviceHelper, @NonNull eu.cloudnetservice.wrapper.holder.ServiceInfoHolder serviceInfoHolder, @NonNull eu.cloudnetservice.driver.provider.CloudServiceProvider serviceProvider, @NonNull eu.cloudnetservice.wrapper.configuration.WrapperConfiguration wrapperConfig) -
Method Summary
Modifier and TypeMethodDescriptionanyTaskService(@NonNull String task, @NonNull FallbackProfile profile, @Nullable String currentServerName) voidappendServiceInformation(@NonNull eu.cloudnetservice.wrapper.event.ServiceInfoPropertiesConfigureEvent configureEvent) cachedService(@NonNull UUID uniqueId) cachedService(@NonNull Predicate<eu.cloudnetservice.driver.service.ServiceInfoSnapshot> filter) @NonNull Collection<eu.cloudnetservice.driver.service.ServiceInfoSnapshot> Gets the bridge configuration that is currently loaded and applied.voidconfiguration(@NonNull BridgeConfiguration configuration) Sets the bridge configuration for every connected component in the cluster that is running the bridge.voidconfigurationSilently(@NonNull BridgeConfiguration configuration) abstract IcreatePlayerInformation(P player) abstract @NonNull PlayerExecutordirectPlayerExecutor(@NonNull UUID uniqueId) fallback(@NonNull UUID playerId, @Nullable String currentServerName, @Nullable String virtualHost, @NonNull Function<String, Boolean> permissionTester) voidhandleFallbackConnectionSuccess(@NonNull UUID uniqueId) abstract voidhandleFallbackConnectionSuccess(P player) voidhandleServiceUpdate(@NonNull eu.cloudnetservice.driver.service.ServiceInfoSnapshot snapshot) voidhandleTaskUpdate(@NonNull String name, @Nullable eu.cloudnetservice.driver.service.ServiceTask task) booleanisOnAnyFallbackInstance(@Nullable String currentServerName, @Nullable String virtualHost, @NonNull Function<String, Boolean> permissionTester) abstract booleanisOnAnyFallbackInstance(P player) abstract @NonNull BiFunction<P, String, Boolean> possibleFallbacks(@Nullable String currentServerName, @Nullable String virtualHost, @NonNull Function<String, Boolean> permissionTester) voidpostInit()Execute the post initialization of the bridge management.voidremoveFallbackProfile(@NonNull UUID uniqueId) abstract voidremoveFallbackProfile(P player) @Nullable eu.cloudnetservice.driver.service.ServiceTaskselfTask()abstract @NonNull ServicePlayerwrapPlayer(P player) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface eu.cloudnetservice.modules.bridge.BridgeManagement
registerServices
-
Field Details
-
CONNECTED_SERVICE_TESTER
protected static final Predicate<eu.cloudnetservice.driver.service.ServiceInfoSnapshot> CONNECTED_SERVICE_TESTER -
sender
protected final eu.cloudnetservice.driver.network.rpc.RPCSender sender -
eventManager
protected final eu.cloudnetservice.driver.event.EventManager eventManager -
playerManager
-
taskProvider
protected final eu.cloudnetservice.driver.provider.ServiceTaskProvider taskProvider -
serviceInfoHolder
protected final eu.cloudnetservice.wrapper.holder.ServiceInfoHolder serviceInfoHolder -
serviceProvider
protected final eu.cloudnetservice.driver.provider.CloudServiceProvider serviceProvider -
bridgeServiceHelper
-
ownNetworkServiceInfo
-
wrapperConfig
protected final eu.cloudnetservice.wrapper.configuration.WrapperConfiguration wrapperConfig -
fallbackProfiles
protected final com.github.benmanes.caffeine.cache.LoadingCache<UUID,FallbackProfile> fallbackProfiles -
cachedServices
-
selfTask
protected volatile eu.cloudnetservice.driver.service.ServiceTask selfTask -
configuration
-
currentFallbackConfiguration
-
cacheTester
-
cacheRegisterListener
protected volatile Consumer<eu.cloudnetservice.driver.service.ServiceInfoSnapshot> cacheRegisterListener -
cacheUnregisterListener
protected volatile Consumer<eu.cloudnetservice.driver.service.ServiceInfoSnapshot> cacheUnregisterListener
-
-
Constructor Details
-
PlatformBridgeManagement
public PlatformBridgeManagement(@NonNull @NonNull eu.cloudnetservice.driver.network.rpc.factory.RPCFactory rpcFactory, @NonNull @NonNull eu.cloudnetservice.driver.event.EventManager eventManager, @NonNull @NonNull eu.cloudnetservice.driver.network.NetworkClient networkClient, @NonNull @NonNull eu.cloudnetservice.driver.provider.ServiceTaskProvider taskProvider, @NonNull @NonNull BridgeServiceHelper serviceHelper, @NonNull @NonNull eu.cloudnetservice.wrapper.holder.ServiceInfoHolder serviceInfoHolder, @NonNull @NonNull eu.cloudnetservice.driver.provider.CloudServiceProvider serviceProvider, @NonNull @NonNull eu.cloudnetservice.wrapper.configuration.WrapperConfiguration wrapperConfig)
-
-
Method Details
-
configuration
Description copied from interface:BridgeManagementGets the bridge configuration that is currently loaded and applied.- Specified by:
configurationin interfaceBridgeManagement- Returns:
- the currently loaded configuration.
-
configuration
Description copied from interface:BridgeManagementSets the bridge configuration for every connected component in the cluster that is running the bridge.- Specified by:
configurationin interfaceBridgeManagement- Parameters:
configuration- the configuration to set.
-
configurationSilently
-
appendServiceInformation
-
cachedServices
@NonNull public @NonNull Collection<eu.cloudnetservice.driver.service.ServiceInfoSnapshot> cachedServices() -
selfTask
-
handleTaskUpdate
-
cachedService
-
cachedService
-
handleServiceUpdate
-
fallback
-
possibleFallbacks
-
isOnAnyFallbackInstance
-
anyTaskService
-
handleFallbackConnectionSuccess
-
removeFallbackProfile
-
postInit
public void postInit()Description copied from interface:BridgeManagementExecute the post initialization of the bridge management. Populating the caches and applying startup time actions.Note: This method should not be used as part of the api and is for internal use only.
- Specified by:
postInitin interfaceBridgeManagement
-
ownNetworkServiceInfo
-
wrapPlayer
-
createPlayerInformation
-
permissionFunction
-
isOnAnyFallbackInstance
-
fallback
-
fallback
-
handleFallbackConnectionSuccess
-
removeFallbackProfile
-
directPlayerExecutor
-