io.deephaven.client.SessionSubcomponent Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of deephaven-java-client-session-dagger Show documentation
Show all versions of deephaven-java-client-session-dagger Show documentation
The Deephaven client session dagger library
/**
* Copyright (c) 2016-2022 Deephaven Data Labs and Patent Pending
*/
package io.deephaven.client;
import dagger.BindsInstance;
import dagger.Module;
import dagger.Subcomponent;
import io.deephaven.client.impl.SessionFactory;
import io.deephaven.client.impl.SessionImpl;
import io.grpc.ManagedChannel;
import java.util.concurrent.CompletableFuture;
import java.util.concurrent.ScheduledExecutorService;
@Subcomponent(modules = SessionImplModule.class)
public interface SessionSubcomponent extends SessionFactory {
SessionImpl newSession();
CompletableFuture extends SessionImpl> newSessionFuture();
@Module(subcomponents = SessionSubcomponent.class)
interface SessionFactorySubcomponentModule {
}
@Subcomponent.Builder
interface Builder {
Builder managedChannel(@BindsInstance ManagedChannel channel);
Builder scheduler(@BindsInstance ScheduledExecutorService scheduler);
// TODO(deephaven-core#1157): Plumb SessionImplConfig.Builder options through dagger
SessionSubcomponent build();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy