jetbrains.buildServer.users.sync
Interface RemoteDataFetcher


public interface RemoteDataFetcher

Responsible for retrieving the data from the remote source (such as LDAP).

The clients expect the data to be up-to-date, which means that no fetch methods should cache the previous results.

Also fetch methods are expected to handle I/O and other errors by itself rather than throwing it out. In case of the error, null should be returned.

Since:
8.0
Author:
Maxim Podkolzine (maxim.podkolzine@jetbrains.com)

Method Summary
 RemoteData fetchAllRemoteData(RemoteDataFetcherOptions options)
          Fetches and returns the remote data provided the options to fetch.
 RemoteUserData fetchRemoteUserData(SUser user)
          Fetches and returns the remote data for the specified user.
 

Method Detail

fetchAllRemoteData

@Nullable
RemoteData fetchAllRemoteData(@NotNull
                                       RemoteDataFetcherOptions options)
Fetches and returns the remote data provided the options to fetch. Method doesn't cache any results (hence can be slow, but always up-to-date) and doesn't throw.

Parameters:
options - the options
Returns:
remote data, if it exists and can be fetched, or null

fetchRemoteUserData

@Nullable
RemoteUserData fetchRemoteUserData(@NotNull
                                            SUser user)
Fetches and returns the remote data for the specified user. Method doesn't cache any results (hence can be slow, but always up-to-date) and doesn't throw.

Parameters:
user - the user
Returns:
remote data, if it exists and can be fetched, or null