AsyncRequest.EventStartCallback Interface to record start of an event such as execution of batched request. 
BatchRequestService.ExecutorFactory Factory for obtaining ExecutorService instance. 
BatchRequestService.TimeProvider Interface for classes that can provide the current time. 
CheckpointCloseableIterable<T> A CloseableIterable that supports pagination while traversing a repository or incremental changes. 
CloseableIterable<T> Interface that is used to iterate through a set of repository documents. 
Connector<T extends ConnectorContext> Interface for user-specific implementation details of the connector. 
ConnectorContext Interface for a context object created by the SDK to pass to the Connector code. 
ConnectorScheduler.ShutdownHolder Pointer to shutdown method to be executed when traversal is complete. 
CredentialFactory Factory to create a GoogleCredential object for accessing the Cloud Search API. 
ExceptionHandler Interface for handling errors and defining a retry policy. 
IncrementalChangeHandler Interface for handling repository changes. 
RetryPolicy.BackOffFactory Creates an instance of BackOff  
StatsManager.OperationStats.Event Counter for single operation to wrap Stopwatch  


AbortCountExceptionHandler Exception handler that is configured with a count of allowable retries before forcing an abort. 
Application<H extends AbstractApplicationHelper, T extends ConnectorContext> Main object and access point for the SDK. 
Application.AbstractApplicationHelper<C extends AbstractBuilder<C, T extends ConnectorContext>, S extends AbstractBuilder<S, T>, T> Helper class to make our class more testable: factory and util methods  
Application.Builder Builder object for creating Application instance. 
Application.ShutdownHook Runnable implementation to register with addShutdownHook(Thread)
AsyncRequest<T> Individual batched request wrapper as consumed by add(AsyncRequest)  
AsyncRequest.SettableFutureCallback<T> JsonBatchCallback wrapper which updates ListenableFuture associated with individual batched request. 
BaseApiService<T extends AbstractGoogleJsonClient> Base object encapsulating common functionality for interacting with Google APIs such as setting credentials, request timeouts, error handling and retry etc. 
BaseApiService.AbstractBuilder<B extends AbstractBuilder<B, T extends AbstractGoogleJsonClient>, T> Builder object for creating an instance of BaseApiService
BaseApiService.RetryRequestInitializer Adds a backoff and retry response and exception handlers to the HttpRequest
BatchPolicy Policy for flushing batched requests. 
BatchPolicy.Builder Builder object for creating an instance of BatchRequest
BatchRequestService Batch multiple requests. 
BatchRequestService.Builder Builder object for creating an instance of BatchRequestService  
BatchRequestService.ExecutorFactoryImpl BatchRequestService.ExecutorFactory implementation to get ExecutorService and ScheduledExecutorService instances used by BatchRequestService
BatchRequestService.SystemTimeProvider BatchRequestService.TimeProvider implementation to get current system time. 
CheckpointCloseableIterableImpl<T> CheckpointCloseableIterable implementation which supports lazy initialization of getCheckpoint() value and hasMore()
CheckpointCloseableIterableImpl.Builder<T> Builder object for CheckpointCloseableIterableImpl  
CheckpointCloseableIterableImpl.CompareCheckpointCloseableIterableRule<T> A TestRule to compare two instances of CheckpointCloseableIterables. 
CloseableIterableOnce<T> A CloseableIterable that can be iterated over at most once. 
ConnectorContextImpl Context for Connector
ConnectorScheduler<T extends ConnectorContext> Handles scheduling and execution of connector traversal related tasks. 
ConnectorScheduler.Builder Builder for ConnectorScheduler instances. 
ConnectorScheduler.OneAtATimeRunnable Runnable implementation which allows only one thread to run given runnable at a time. 
ExponentialBackoffExceptionHandler ExceptionHandler implementation that uses exponential backoff before retrying. 
GoogleProxy Encapsulates an @{link Proxy} object and the token for proxy authentication. 
GoogleProxy.Builder Builder for GoogleProxy
GroupIdEncoder Helper utility to encode Group identifier in a consistent way between identity and indexing connectors. 
IgnoreExceptionHandler Exception handler that simply ignores all errors. 
LocalFileCredentialFactory Factory to create a GoogleCredential object for accessing the Cloud Search API. 
LocalFileCredentialFactory.Builder Builder for creating instance of LocalFileCredentialFactory
PaginationIterable<T, Q> Iterable which handles pagination for iterating over set of objects. 
PaginationIterable.Page<T, Q> Represents set of items and optional continuation token to fetch additional items. 
QuotaServer<T extends Enum<T>> Utility object to enforce quota requirements. 
QuotaServer.Builder<T extends Enum<T>, K extends QuotaServer<T>> Builder for QuotaServer instances. 
RepositoryException.Builder Builder for creating RepositoryException  
RetryPolicy Object to store policy parameters used for backoff and retry recoverable errors. 
RetryPolicy.Builder Builder for creating an instance of RetryPolicy  
RetryPolicy.DefaultBackOffFactoryImpl Default factory object used to create an ExponentialBackOff with an initial delay of 1 second(s) and a multiplier of 2. 
StatsManager Object used to manage operation execution statistics. 
StatsManager.OperationStats Object used to log events, operations, and actions  
StatsManager.ResetStatsRule TestRule to reset static StatsManager object for unit tests. 
TestProperties Common configuration properties for test case classes. 
Util Common utility methods for integration tests. 


RepositoryException.ErrorType Repository error types as defined by Cloud Search API. 


InvalidConfigurationException Exception that is thrown for fatal configuration errors. 
RepositoryException An exception that is thrown specifically for fatal repository access errors. 
StartupException Exception that is thrown for unrecoverable startup errors, such as fatal configuration errors or running on the wrong platform.