Search in sources :

Example 1 with RedirectRetryTargeter

use of com.palantir.atlasdb.http.RedirectRetryTargeter in project atlasdb by palantir.

the class InMemoryTimelockServices method createHelperServices.

private void createHelperServices(MetricsManager metricsManager) {
    helperServices = TimeLockHelperServices.create(client, metricsManager, ImmutableSet.of(), delegate.getTimelockService(), LockWatchCachingConfig.builder().build(), Optional::empty);
    RedirectRetryTargeter redirectRetryTargeter = timeLockAgent.redirectRetryTargeter();
    ConjureTimelockService conjureTimelockService = ConjureTimelockResource.jersey(redirectRetryTargeter, _unused -> delegate.getTimelockService());
    namespacedConjureTimelockService = new NamespacedConjureTimelockServiceImpl(conjureTimelockService, client);
    lockLeaseService = LockLeaseService.create(namespacedConjureTimelockService, new LegacyLeaderTimeGetter(namespacedConjureTimelockService));
}
Also used : NamespacedConjureTimelockServiceImpl(com.palantir.lock.client.NamespacedConjureTimelockServiceImpl) LegacyLeaderTimeGetter(com.palantir.lock.client.LegacyLeaderTimeGetter) ConjureTimelockService(com.palantir.atlasdb.timelock.api.ConjureTimelockService) RedirectRetryTargeter(com.palantir.atlasdb.http.RedirectRetryTargeter)

Example 2 with RedirectRetryTargeter

use of com.palantir.atlasdb.http.RedirectRetryTargeter in project atlasdb by palantir.

the class TimeLockAgent method createAndRegisterResources.

private void createAndRegisterResources() {
    registerTimeLockCorruptionJerseyFilter();
    registerTimeLockCorruptionNotifiers();
    registerPaxosResource();
    registerExceptionMappers();
    registerClientFeedbackService();
    namespaces = new TimelockNamespaces(metricsManager, this::createInvalidatingTimeLockServices, Suppliers.compose(TimeLockRuntimeConfiguration::maxNumberOfClients, runtime::get), DisabledNamespaces.create(sqliteDataSource));
    registerManagementResource();
    // Finally, register the health check, and endpoints associated with the clients.
    TimeLockResource resource = TimeLockResource.create(namespaces);
    healthCheck = paxosResources.leadershipComponents().healthCheck(namespaces::getActiveClients);
    registrar.accept(resource);
    Function<String, LockService> lockServiceGetter = namespace -> namespaces.get(namespace).getLockService();
    Function<String, AsyncTimelockService> asyncTimelockServiceGetter = namespace -> namespaces.get(namespace).getTimelockService();
    Function<String, BackupTimeLockServiceView> backupTimeLockServiceViewGetter = namespace -> namespaces.getForRestore(namespace);
    AuthHeaderValidator authHeaderValidator = getAuthHeaderValidator();
    RedirectRetryTargeter redirectRetryTargeter = redirectRetryTargeter();
    if (undertowRegistrar.isPresent()) {
        Consumer<UndertowService> presentUndertowRegistrar = undertowRegistrar.get();
        registerCorruptionHandlerWrappedService(presentUndertowRegistrar, ConjureTimelockResource.undertow(redirectRetryTargeter, asyncTimelockServiceGetter));
        registerCorruptionHandlerWrappedService(presentUndertowRegistrar, ConjureLockWatchingResource.undertow(redirectRetryTargeter, asyncTimelockServiceGetter));
        registerCorruptionHandlerWrappedService(presentUndertowRegistrar, ConjureLockV1Resource.undertow(redirectRetryTargeter, lockServiceGetter));
        registerCorruptionHandlerWrappedService(presentUndertowRegistrar, TimeLockPaxosHistoryProviderResource.undertow(corruptionComponents.localHistoryLoader()));
        registerCorruptionHandlerWrappedService(presentUndertowRegistrar, MultiClientConjureTimelockResource.undertow(redirectRetryTargeter, asyncTimelockServiceGetter));
        registerCorruptionHandlerWrappedService(presentUndertowRegistrar, AtlasBackupResource.undertow(authHeaderValidator, redirectRetryTargeter, asyncTimelockServiceGetter));
        registerCorruptionHandlerWrappedService(presentUndertowRegistrar, AtlasRestoreResource.undertow(authHeaderValidator, redirectRetryTargeter, backupTimeLockServiceViewGetter));
        registerCorruptionHandlerWrappedService(presentUndertowRegistrar, DisabledNamespacesUpdaterResource.undertow(authHeaderValidator, redirectRetryTargeter, namespaces));
    } else {
        registrar.accept(ConjureTimelockResource.jersey(redirectRetryTargeter, asyncTimelockServiceGetter));
        registrar.accept(ConjureLockWatchingResource.jersey(redirectRetryTargeter, asyncTimelockServiceGetter));
        registrar.accept(ConjureLockV1Resource.jersey(redirectRetryTargeter, lockServiceGetter));
        registrar.accept(TimeLockPaxosHistoryProviderResource.jersey(corruptionComponents.localHistoryLoader()));
        registrar.accept(MultiClientConjureTimelockResource.jersey(redirectRetryTargeter, asyncTimelockServiceGetter));
        registrar.accept(AtlasBackupResource.jersey(authHeaderValidator, redirectRetryTargeter, asyncTimelockServiceGetter));
        registrar.accept(AtlasRestoreResource.jersey(authHeaderValidator, redirectRetryTargeter, backupTimeLockServiceViewGetter));
        registrar.accept(DisabledNamespacesUpdaterResource.jersey(authHeaderValidator, redirectRetryTargeter, namespaces));
    }
}
Also used : FeedbackHandler(com.palantir.atlasdb.timelock.adjudicate.FeedbackHandler) URL(java.net.URL) UndertowService(com.palantir.conjure.java.undertow.lib.UndertowService) SafeIllegalStateException(com.palantir.logsafe.exceptions.SafeIllegalStateException) AllNodesDisabledNamespacesUpdater(com.palantir.atlasdb.timelock.management.AllNodesDisabledNamespacesUpdater) DatabaseTsBoundPersisterRuntimeConfiguration(com.palantir.timelock.config.DatabaseTsBoundPersisterRuntimeConfiguration) LeaderConfig(com.palantir.atlasdb.config.LeaderConfig) TimeLockInstallConfiguration(com.palantir.timelock.config.TimeLockInstallConfiguration) TsBoundPersisterConfiguration(com.palantir.timelock.config.TsBoundPersisterConfiguration) TimeLockRuntimeConfiguration(com.palantir.timelock.config.TimeLockRuntimeConfiguration) TimeLockActivityCheckerFactory(com.palantir.timelock.invariants.TimeLockActivityCheckerFactory) ConjureLockV1Resource(com.palantir.atlasdb.timelock.lock.v1.ConjureLockV1Resource) RedirectRetryTargeter(com.palantir.atlasdb.http.RedirectRetryTargeter) MetricsManager(com.palantir.atlasdb.util.MetricsManager) PTExecutors(com.palantir.common.concurrent.PTExecutors) DisabledNamespaces(com.palantir.atlasdb.timelock.management.DisabledNamespaces) UserAgent(com.palantir.conjure.java.api.config.service.UserAgent) ClusterConfiguration(com.palantir.timelock.config.ClusterConfiguration) Map(java.util.Map) NotCurrentLeaderExceptionMapper(com.palantir.atlasdb.http.NotCurrentLeaderExceptionMapper) ImmutableLeaderConfig(com.palantir.atlasdb.config.ImmutableLeaderConfig) AsyncTimelockService(com.palantir.atlasdb.timelock.AsyncTimelockService) Path(java.nio.file.Path) DatabaseTsBoundPersisterConfiguration(com.palantir.timelock.config.DatabaseTsBoundPersisterConfiguration) AtlasDbConstants(com.palantir.atlasdb.AtlasDbConstants) Refreshable(com.palantir.refreshable.Refreshable) ImmutableSet(com.google.common.collect.ImmutableSet) ACCEPTOR_SUBDIRECTORY_PATH(com.palantir.atlasdb.timelock.paxos.PaxosTimeLockConstants.ACCEPTOR_SUBDIRECTORY_PATH) ConjureTimelockResource(com.palantir.atlasdb.timelock.ConjureTimelockResource) OrderableSlsVersion(com.palantir.sls.versions.OrderableSlsVersion) TimeLockClientFeedbackResource(com.palantir.atlasdb.timelock.adjudicate.TimeLockClientFeedbackResource) PersistentNamespaceContexts(com.palantir.atlasdb.timelock.management.PersistentNamespaceContexts) TimeLockManagementResource(com.palantir.atlasdb.timelock.management.TimeLockManagementResource) BackupTimeLockServiceView(com.palantir.atlasdb.timelock.BackupTimeLockServiceView) TimeLockServices(com.palantir.atlasdb.timelock.TimeLockServices) ConjureLockWatchingResource(com.palantir.atlasdb.timelock.ConjureLockWatchingResource) MultiClientConjureTimelockResource(com.palantir.atlasdb.timelock.batch.MultiClientConjureTimelockResource) ServerListConfig(com.palantir.atlasdb.config.ServerListConfig) ServicesConfigBlock(com.palantir.conjure.java.api.config.service.ServicesConfigBlock) List(java.util.List) AtlasBackupResource(com.palantir.atlasdb.backup.AtlasBackupResource) TooManyRequestsExceptionMapper(com.palantir.atlasdb.timelock.TooManyRequestsExceptionMapper) HikariDataSource(com.zaxxer.hikari.HikariDataSource) Optional(java.util.Optional) Client(com.palantir.paxos.Client) RestrictedTimeLockRuntimeConfiguration(com.palantir.timelock.config.RestrictedTimeLockRuntimeConfiguration) RemotingClientConfigs(com.palantir.atlasdb.config.RemotingClientConfigs) JerseyCorruptionFilter(com.palantir.timelock.corruption.handle.JerseyCorruptionFilter) PaxosResourcesFactory(com.palantir.atlasdb.timelock.paxos.PaxosResourcesFactory) ImmutableServerListConfig(com.palantir.atlasdb.config.ImmutableServerListConfig) PaxosResources(com.palantir.atlasdb.timelock.paxos.PaxosResources) SafeLoggerFactory(com.palantir.logsafe.logger.SafeLoggerFactory) HealthStatusReport(com.palantir.atlasdb.timelock.adjudicate.HealthStatusReport) DisabledNamespacesUpdaterResource(com.palantir.atlasdb.timelock.management.DisabledNamespacesUpdaterResource) Function(java.util.function.Function) Supplier(java.util.function.Supplier) SafeLogger(com.palantir.logsafe.logger.SafeLogger) AtlasRestoreResource(com.palantir.atlasdb.backup.AtlasRestoreResource) NoSimultaneousServiceCheck(com.palantir.timelock.invariants.NoSimultaneousServiceCheck) SafeArg(com.palantir.logsafe.SafeArg) TimeLockPersistenceInvariants(com.palantir.timelock.config.TimeLockPersistenceInvariants) BearerToken(com.palantir.tokens.auth.BearerToken) LEARNER_SUBDIRECTORY_PATH(com.palantir.atlasdb.timelock.paxos.PaxosTimeLockConstants.LEARNER_SUBDIRECTORY_PATH) AuxiliaryRemotingParameters(com.palantir.atlasdb.config.AuxiliaryRemotingParameters) Suppliers(com.google.common.base.Suppliers) TimelockNamespaces(com.palantir.atlasdb.timelock.TimelockNamespaces) CorruptionHealthReport(com.palantir.timelock.corruption.detection.CorruptionHealthReport) TimestampStorage(com.palantir.timelock.management.TimestampStorage) TimeLockResource(com.palantir.atlasdb.timelock.TimeLockResource) LeaderElectionMetricAggregator(com.palantir.atlasdb.timelock.adjudicate.LeaderElectionMetricAggregator) ServiceLifecycleController(com.palantir.atlasdb.timelock.management.ServiceLifecycleController) UndertowCorruptionHandlerService(com.palantir.timelock.corruption.handle.UndertowCorruptionHandlerService) PersistenceConfigStore(com.palantir.timelock.store.PersistenceConfigStore) ObjectMapper(com.fasterxml.jackson.databind.ObjectMapper) ImmutableTimelockPaxosInstallationContext(com.palantir.atlasdb.timelock.paxos.ImmutableTimelockPaxosInstallationContext) SqliteBlobStore(com.palantir.timelock.store.SqliteBlobStore) LEADER_PAXOS_NAMESPACE(com.palantir.atlasdb.timelock.paxos.PaxosTimeLockConstants.LEADER_PAXOS_NAMESPACE) CorruptionNotifierResource(com.palantir.timelock.corruption.handle.CorruptionNotifierResource) Consumer(java.util.function.Consumer) PaxosTsBoundPersisterConfiguration(com.palantir.timelock.config.PaxosTsBoundPersisterConfiguration) KeyValueServiceRuntimeConfig(com.palantir.atlasdb.spi.KeyValueServiceRuntimeConfig) LockService(com.palantir.lock.LockService) LockLog(com.palantir.atlasdb.timelock.lock.LockLog) TimeLockCorruptionComponents(com.palantir.atlasdb.timelock.paxos.TimeLockCorruptionComponents) ImmutableTimestampStorage(com.palantir.timelock.management.ImmutableTimestampStorage) ManagedTimestampService(com.palantir.timestamp.ManagedTimestampService) AuthHeaderValidator(com.palantir.atlasdb.backup.AuthHeaderValidator) AllNodesDisabledNamespacesUpdaterFactory(com.palantir.atlasdb.timelock.management.AllNodesDisabledNamespacesUpdaterFactory) TimeLockPaxosHistoryProviderResource(com.palantir.timelock.history.remote.TimeLockPaxosHistoryProviderResource) VisibleForTesting(com.google.common.annotations.VisibleForTesting) BlockingTimeoutExceptionMapper(com.palantir.atlasdb.http.BlockingTimeoutExceptionMapper) DialogueClients(com.palantir.dialogue.clients.DialogueClients) Preconditions(com.palantir.logsafe.Preconditions) ServiceDiscoveringDatabaseTimeLockSupplier(com.palantir.timelock.ServiceDiscoveringDatabaseTimeLockSupplier) LockService(com.palantir.lock.LockService) BackupTimeLockServiceView(com.palantir.atlasdb.timelock.BackupTimeLockServiceView) TimelockNamespaces(com.palantir.atlasdb.timelock.TimelockNamespaces) TimeLockRuntimeConfiguration(com.palantir.timelock.config.TimeLockRuntimeConfiguration) RestrictedTimeLockRuntimeConfiguration(com.palantir.timelock.config.RestrictedTimeLockRuntimeConfiguration) TimeLockResource(com.palantir.atlasdb.timelock.TimeLockResource) RedirectRetryTargeter(com.palantir.atlasdb.http.RedirectRetryTargeter) UndertowService(com.palantir.conjure.java.undertow.lib.UndertowService) AsyncTimelockService(com.palantir.atlasdb.timelock.AsyncTimelockService) AuthHeaderValidator(com.palantir.atlasdb.backup.AuthHeaderValidator)

Example 3 with RedirectRetryTargeter

use of com.palantir.atlasdb.http.RedirectRetryTargeter in project atlasdb by palantir.

the class TimeLockManagementResourceTest method setup.

@Before
public void setup() throws MalformedURLException {
    URL testUrl = new URL("http", "host", "file");
    RedirectRetryTargeter redirectRetryTargeter = RedirectRetryTargeter.create(testUrl, ImmutableList.of(testUrl));
    Path rootFolderPath = tempFolder.getRoot().toPath();
    PersistentNamespaceContext persistentNamespaceContext = PersistentNamespaceContexts.timestampBoundPaxos(rootFolderPath, SqliteConnections.getDefaultConfiguredPooledDataSource(rootFolderPath));
    DisabledNamespaces disabledNamespaces = mock(DisabledNamespaces.class);
    TimelockNamespaces namespaces = new TimelockNamespaces(metricsManager, serviceFactory, maxNumberOfClientsSupplier, disabledNamespaces);
    when(authHeaderValidator.suppliedHeaderMatchesConfig(AUTH_HEADER)).thenReturn(true);
    when(authHeaderValidator.suppliedHeaderMatchesConfig(WRONG_AUTH_HEADER)).thenReturn(false);
    timeLockManagementResource = TimeLockManagementResource.create(persistentNamespaceContext, namespaces, allNodesDisabledNamespacesUpdater, authHeaderValidator, redirectRetryTargeter, new ServiceLifecycleController(serviceStopper, PTExecutors.newSingleThreadScheduledExecutor()));
    createDirectoryForLeaderForEachClientUseCase(NAMESPACE_1);
    createDirectoryInRootDataDirectory(NAMESPACE_2);
}
Also used : Path(java.nio.file.Path) TimelockNamespaces(com.palantir.atlasdb.timelock.TimelockNamespaces) URL(java.net.URL) RedirectRetryTargeter(com.palantir.atlasdb.http.RedirectRetryTargeter) Before(org.junit.Before)

Example 4 with RedirectRetryTargeter

use of com.palantir.atlasdb.http.RedirectRetryTargeter in project atlasdb by palantir.

the class AtlasDbEteServer method createAndRegisterBackupAndRestoreResource.

private void createAndRegisterBackupAndRestoreResource(AtlasDbEteConfiguration config, Environment environment, TransactionManager txManager, TaggedMetricRegistry taggedMetrics) throws IOException {
    AuthHeader authHeader = AuthHeader.of(BearerToken.valueOf("test-auth"));
    URL localServer = new URL("https://localhost:1234");
    Path backupFolder = Paths.get("/var/data/backup");
    Files.createDirectories(backupFolder);
    Function<AtlasService, Path> backupFolderFactory = _unused -> backupFolder;
    ExternalBackupPersister externalBackupPersister = new ExternalBackupPersister(backupFolderFactory);
    Function<String, BackupTimeLockServiceView> timelockServices = _unused -> createBackupTimeLockServiceView(txManager);
    AuthHeaderValidator authHeaderValidator = new AuthHeaderValidator(() -> Optional.of(authHeader.getBearerToken()));
    RedirectRetryTargeter redirectRetryTargeter = RedirectRetryTargeter.create(localServer, ImmutableList.of(localServer));
    AtlasBackupClient atlasBackupClient = AtlasBackupResource.jersey(authHeaderValidator, redirectRetryTargeter, timelockServices);
    AtlasRestoreClient atlasRestoreClient = AtlasRestoreResource.jersey(authHeaderValidator, redirectRetryTargeter, timelockServices);
    Refreshable<ServerListConfig> serverListConfig = getServerListConfigForTimeLock(config);
    TimeLockManagementService timeLockManagementService = getRemoteTimeLockManagementService(serverListConfig, taggedMetrics);
    AtlasBackupService atlasBackupService = AtlasBackupService.createForTests(authHeader, atlasBackupClient, txManager, backupFolderFactory);
    Function<AtlasService, CassandraKeyValueServiceConfig> keyValueServiceConfigFactory = _unused -> (CassandraKeyValueServiceConfig) config.getAtlasDbConfig().keyValueService();
    Function<AtlasService, CassandraKeyValueServiceRuntimeConfig> runtimeConfigFactory = _unused -> (CassandraKeyValueServiceRuntimeConfig) config.getAtlasDbRuntimeConfig().flatMap(AtlasDbRuntimeConfig::keyValueService).orElseThrow();
    Function<AtlasService, CassandraClusterConfig> cassandraClusterConfigFactory = atlasService -> CassandraClusterConfig.of(keyValueServiceConfigFactory.apply(atlasService), runtimeConfigFactory.apply(atlasService));
    Function<AtlasService, Refreshable<CassandraServersConfig>> refreshableCassandraServersConfigFactory = runtimeConfigFactory.andThen(runtimeConfig -> Refreshable.only(runtimeConfig.servers()));
    AtlasRestoreService atlasRestoreService = AtlasRestoreService.createForTests(authHeader, atlasRestoreClient, timeLockManagementService, externalBackupPersister, txManager, cassandraClusterConfigFactory, refreshableCassandraServersConfigFactory);
    environment.jersey().register(new SimpleBackupAndRestoreResource(atlasBackupService, atlasRestoreService, externalBackupPersister));
}
Also used : TransactionService(com.palantir.atlasdb.transaction.service.TransactionService) ServerListConfigs(com.palantir.atlasdb.config.ServerListConfigs) NotInitializedExceptionMapper(com.palantir.atlasdb.http.NotInitializedExceptionMapper) LongSupplier(java.util.function.LongSupplier) SimpleLockResource(com.palantir.atlasdb.lock.SimpleLockResource) URL(java.net.URL) AtlasRestoreClient(com.palantir.atlasdb.backup.api.AtlasRestoreClient) SafeIllegalStateException(com.palantir.logsafe.exceptions.SafeIllegalStateException) ExceptionMapper(javax.ws.rs.ext.ExceptionMapper) AuthHeader(com.palantir.tokens.auth.AuthHeader) BlobSchema(com.palantir.atlasdb.blob.BlobSchema) TargetedSweepFollower(com.palantir.atlasdb.sweep.queue.TargetedSweepFollower) SimpleTodoResource(com.palantir.atlasdb.todo.SimpleTodoResource) RedirectRetryTargeter(com.palantir.atlasdb.http.RedirectRetryTargeter) AtlasBackupService(com.palantir.atlasdb.backup.AtlasBackupService) UserAgent(com.palantir.conjure.java.api.config.service.UserAgent) TransactionServices(com.palantir.atlasdb.transaction.service.TransactionServices) CoordinationServices(com.palantir.atlasdb.internalschema.persistence.CoordinationServices) SweepTaskRunner(com.palantir.atlasdb.sweep.SweepTaskRunner) Path(java.nio.file.Path) InternalSchemaMetadata(com.palantir.atlasdb.internalschema.InternalSchemaMetadata) CassandraServersConfig(com.palantir.atlasdb.cassandra.CassandraServersConfigs.CassandraServersConfig) Refreshable(com.palantir.refreshable.Refreshable) Application(io.dropwizard.Application) ImmutableSet(com.google.common.collect.ImmutableSet) TimestampManagementService(com.palantir.timestamp.TimestampManagementService) CoordinationService(com.palantir.atlasdb.coordination.CoordinationService) AtlasDbDialogueServiceProvider(com.palantir.atlasdb.factory.AtlasDbDialogueServiceProvider) BackupTimeLockServiceView(com.palantir.atlasdb.timelock.BackupTimeLockServiceView) SharedMetricRegistries(com.codahale.metrics.SharedMetricRegistries) TransactionManager(com.palantir.atlasdb.transaction.api.TransactionManager) Jdk8Module(com.fasterxml.jackson.datatype.jdk8.Jdk8Module) ServerListConfig(com.palantir.atlasdb.config.ServerListConfig) MetricsManagers(com.palantir.atlasdb.util.MetricsManagers) ServicesConfigBlock(com.palantir.conjure.java.api.config.service.ServicesConfigBlock) SimpleBackupAndRestoreResource(com.palantir.atlasdb.backup.SimpleBackupAndRestoreResource) Response(javax.ws.rs.core.Response) AtlasBackupResource(com.palantir.atlasdb.backup.AtlasBackupResource) AtlasRestoreService(com.palantir.atlasdb.backup.AtlasRestoreService) Optional(java.util.Optional) SpecialTimestampsSupplier(com.palantir.atlasdb.sweep.queue.SpecialTimestampsSupplier) SimpleEteTimestampResource(com.palantir.atlasdb.timestamp.SimpleEteTimestampResource) CassandraKeyValueServiceConfig(com.palantir.atlasdb.cassandra.CassandraKeyValueServiceConfig) TodoClient(com.palantir.atlasdb.todo.TodoClient) CassandraKeyValueServiceRuntimeConfig(com.palantir.atlasdb.cassandra.CassandraKeyValueServiceRuntimeConfig) SafeLoggerFactory(com.palantir.logsafe.logger.SafeLoggerFactory) AtlasBackupClient(com.palantir.atlasdb.backup.api.AtlasBackupClient) Bootstrap(io.dropwizard.setup.Bootstrap) Stopwatch(com.google.common.base.Stopwatch) TodoSchema(com.palantir.atlasdb.todo.TodoSchema) ExternalBackupPersister(com.palantir.atlasdb.backup.ExternalBackupPersister) Function(java.util.function.Function) Supplier(java.util.function.Supplier) TransactionManagers(com.palantir.atlasdb.factory.TransactionManagers) SafeLogger(com.palantir.logsafe.logger.SafeLogger) AtlasRestoreResource(com.palantir.atlasdb.backup.AtlasRestoreResource) TimeLockManagementService(com.palantir.atlasdb.timelock.api.management.TimeLockManagementService) BearerToken(com.palantir.tokens.auth.BearerToken) SubstitutingSourceProvider(io.dropwizard.configuration.SubstitutingSourceProvider) ImmutableList(com.google.common.collect.ImmutableList) EnvironmentVariableSubstitutor(io.dropwizard.configuration.EnvironmentVariableSubstitutor) TransactionSchemaVersionEnforcement(com.palantir.atlasdb.transaction.impl.TransactionSchemaVersionEnforcement) Suppliers(com.google.common.base.Suppliers) SimpleCoordinationResource(com.palantir.atlasdb.coordination.SimpleCoordinationResource) SharedTaggedMetricRegistries(com.palantir.tritium.metrics.registry.SharedTaggedMetricRegistries) Environment(io.dropwizard.setup.Environment) Files(java.nio.file.Files) CassandraClusterConfig(com.palantir.atlasdb.keyvalue.cassandra.async.client.creation.ClusterFactory.CassandraClusterConfig) TargetedSweeper(com.palantir.atlasdb.sweep.queue.TargetedSweeper) IOException(java.io.IOException) TransactionSchemaManager(com.palantir.atlasdb.internalschema.TransactionSchemaManager) TimelockService(com.palantir.lock.v2.TimelockService) TaggedMetricRegistry(com.palantir.tritium.metrics.registry.TaggedMetricRegistry) DelegatingBackupTimeLockServiceView(com.palantir.atlasdb.backup.DelegatingBackupTimeLockServiceView) TimeUnit(java.util.concurrent.TimeUnit) AtlasDbRuntimeConfig(com.palantir.atlasdb.config.AtlasDbRuntimeConfig) EmptyOptionalException(io.dropwizard.jersey.optional.EmptyOptionalException) Follower(com.palantir.atlasdb.cleaner.Follower) Paths(java.nio.file.Paths) KeyValueService(com.palantir.atlasdb.keyvalue.api.KeyValueService) ConjureJerseyFeature(com.palantir.conjure.java.server.jersey.ConjureJerseyFeature) AtlasDbRemotingConstants(com.palantir.atlasdb.http.AtlasDbRemotingConstants) CellsSweeper(com.palantir.atlasdb.sweep.CellsSweeper) AuthHeaderValidator(com.palantir.atlasdb.backup.AuthHeaderValidator) AtlasService(com.palantir.atlasdb.backup.api.AtlasService) DialogueClients(com.palantir.dialogue.clients.DialogueClients) Schema(com.palantir.atlasdb.table.description.Schema) CleanupFollower(com.palantir.atlasdb.cleaner.CleanupFollower) AtlasDbConfig(com.palantir.atlasdb.config.AtlasDbConfig) CassandraKeyValueServiceRuntimeConfig(com.palantir.atlasdb.cassandra.CassandraKeyValueServiceRuntimeConfig) AtlasService(com.palantir.atlasdb.backup.api.AtlasService) TimeLockManagementService(com.palantir.atlasdb.timelock.api.management.TimeLockManagementService) URL(java.net.URL) CassandraKeyValueServiceConfig(com.palantir.atlasdb.cassandra.CassandraKeyValueServiceConfig) Path(java.nio.file.Path) ExternalBackupPersister(com.palantir.atlasdb.backup.ExternalBackupPersister) SimpleBackupAndRestoreResource(com.palantir.atlasdb.backup.SimpleBackupAndRestoreResource) AuthHeader(com.palantir.tokens.auth.AuthHeader) BackupTimeLockServiceView(com.palantir.atlasdb.timelock.BackupTimeLockServiceView) DelegatingBackupTimeLockServiceView(com.palantir.atlasdb.backup.DelegatingBackupTimeLockServiceView) CassandraClusterConfig(com.palantir.atlasdb.keyvalue.cassandra.async.client.creation.ClusterFactory.CassandraClusterConfig) Refreshable(com.palantir.refreshable.Refreshable) AtlasRestoreClient(com.palantir.atlasdb.backup.api.AtlasRestoreClient) RedirectRetryTargeter(com.palantir.atlasdb.http.RedirectRetryTargeter) ServerListConfig(com.palantir.atlasdb.config.ServerListConfig) AuthHeaderValidator(com.palantir.atlasdb.backup.AuthHeaderValidator) AtlasBackupClient(com.palantir.atlasdb.backup.api.AtlasBackupClient) AtlasRestoreService(com.palantir.atlasdb.backup.AtlasRestoreService) AtlasBackupService(com.palantir.atlasdb.backup.AtlasBackupService) AtlasDbRuntimeConfig(com.palantir.atlasdb.config.AtlasDbRuntimeConfig)

Aggregations

RedirectRetryTargeter (com.palantir.atlasdb.http.RedirectRetryTargeter)4 Suppliers (com.google.common.base.Suppliers)2 ImmutableSet (com.google.common.collect.ImmutableSet)2 AtlasBackupResource (com.palantir.atlasdb.backup.AtlasBackupResource)2 AtlasRestoreResource (com.palantir.atlasdb.backup.AtlasRestoreResource)2 AuthHeaderValidator (com.palantir.atlasdb.backup.AuthHeaderValidator)2 ServerListConfig (com.palantir.atlasdb.config.ServerListConfig)2 URL (java.net.URL)2 Path (java.nio.file.Path)2 SharedMetricRegistries (com.codahale.metrics.SharedMetricRegistries)1 ObjectMapper (com.fasterxml.jackson.databind.ObjectMapper)1 Jdk8Module (com.fasterxml.jackson.datatype.jdk8.Jdk8Module)1 VisibleForTesting (com.google.common.annotations.VisibleForTesting)1 Stopwatch (com.google.common.base.Stopwatch)1 ImmutableList (com.google.common.collect.ImmutableList)1 AtlasDbConstants (com.palantir.atlasdb.AtlasDbConstants)1 AtlasBackupService (com.palantir.atlasdb.backup.AtlasBackupService)1 AtlasRestoreService (com.palantir.atlasdb.backup.AtlasRestoreService)1 DelegatingBackupTimeLockServiceView (com.palantir.atlasdb.backup.DelegatingBackupTimeLockServiceView)1 ExternalBackupPersister (com.palantir.atlasdb.backup.ExternalBackupPersister)1