Package jetbrains.buildServer.users.sync
Class SynchronizerManagerImpl
- java.lang.Object
-
- jetbrains.buildServer.users.sync.SynchronizerManagerImpl
-
- All Implemented Interfaces:
ActiveSynchronizersProvider
,SynchronizerManager
public class SynchronizerManagerImpl extends Object implements SynchronizerManager, ActiveSynchronizersProvider
- Since:
- 8.0
- Author:
- Maxim Podkolzine (maxim.podkolzine@jetbrains.com)
-
-
Constructor Summary
Constructors Constructor Description SynchronizerManagerImpl(UserModel userModel, UserGroupManager userGroupManager, ExecutorServices executorServices, ServerResponsibility serverResponsibility)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Synchronizer
createOrUpdateSynchronizer(SynchronizerInfo info, RemoteDataFetcher fetcher, SynchronizerOptions options, SynchronizerStatistics statistics, UserRemoteIdProvider userRemoteIdProvider, UserGroupRemoteIdProvider userGroupRemoteIdProvider, Logger logger)
Creates (or updates if already exists) a synchronizer.void
init()
boolean
isActive(String name)
Returns whether synchronizer denoted byname
is an active one.void
removeSynchronizer(Synchronizer synchronizer)
Removes the synchronizer if it is present in the manager.void
scheduleUserSynchronization(SUser user)
Adds a request to the alarm (for the given user synchronization).
-
-
-
Constructor Detail
-
SynchronizerManagerImpl
public SynchronizerManagerImpl(@NotNull UserModel userModel, @NotNull UserGroupManager userGroupManager, @NotNull ExecutorServices executorServices, @NotNull ServerResponsibility serverResponsibility)
-
-
Method Detail
-
init
public void init()
-
createOrUpdateSynchronizer
@NotNull public Synchronizer createOrUpdateSynchronizer(@NotNull SynchronizerInfo info, @NotNull RemoteDataFetcher fetcher, @NotNull SynchronizerOptions options, @NotNull SynchronizerStatistics statistics, @Nullable UserRemoteIdProvider userRemoteIdProvider, @Nullable UserGroupRemoteIdProvider userGroupRemoteIdProvider, @NotNull Logger logger)
Description copied from interface:SynchronizerManager
Creates (or updates if already exists) a synchronizer.Update means that the new synchronizer with provided parameters (
info
,fetcher
,options
,statistics
,logger
) will replace the existing one with the same name (seeSynchronizerInfo.getOwnerName()
).- Specified by:
createOrUpdateSynchronizer
in interfaceSynchronizerManager
- Parameters:
info
- a synchronizer infofetcher
- a remote data fetcheroptions
- synchronizer optionsstatistics
- synchronizer statisticsuserRemoteIdProvider
- user remote id provider; if null, then users are matched by usernamelogger
- a logger- Returns:
- a synchronizer
-
removeSynchronizer
public void removeSynchronizer(@NotNull Synchronizer synchronizer)
Description copied from interface:SynchronizerManager
Removes the synchronizer if it is present in the manager.- Specified by:
removeSynchronizer
in interfaceSynchronizerManager
- Parameters:
synchronizer
- the synchronizer to remove
-
isActive
public boolean isActive(@NotNull String name)
Description copied from interface:ActiveSynchronizersProvider
Returns whether synchronizer denoted byname
is an active one.- Specified by:
isActive
in interfaceActiveSynchronizersProvider
- Parameters:
name
- synchronizer name- Returns:
- true if synchronizer is active
-
scheduleUserSynchronization
public void scheduleUserSynchronization(@NotNull SUser user)
Adds a request to the alarm (for the given user synchronization).- Parameters:
user
- the user to sync
-
-