Class EventingService
- java.lang.Object
-
- com.couchbase.client.core.service.EventingService
-
- All Implemented Interfaces:
Service
,Stateful<ServiceState>
public class EventingService extends Object
-
-
Field Summary
Fields Modifier and Type Field Description static Duration
DEFAULT_IDLE_TIME_CHECK_INTERVAL
The interval when to check if idle sockets are to be cleaned up.
-
Constructor Summary
Constructors Constructor Description EventingService(CoreContext coreContext, String hostname, int port)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
connect()
Instruct thisService
to connect.ServiceContext
context()
Returns the underlying contextual metadata for this service.protected Endpoint
createEndpoint()
Subclass implements this method to create new endpoints.Stream<EndpointDiagnostics>
diagnostics()
Returns diagnostics information for this service.void
disconnect()
Instruct thisService
to disconnect.protected Duration
idleTimeCheckInterval()
Can be overridden for unit tests.Stream<InternalEndpointDiagnostics>
internalDiagnostics()
protected EndpointSelectionStrategy
selectionStrategy()
Subclass implements this method to pick their selection strategy of choice.<R extends Request<? extends Response>>
voidsend(R request)
Sends the request into thisService
.protected ServiceContext
serviceContext()
Returns the createdServiceContext
for implementations to use.ServiceState
state()
Returns the current state of the stateful component.Flux<ServiceState>
states()
Returns a stream of states for this component as they change.ServiceType
type()
Represents the service type for this service.
-
-
-
Field Detail
-
DEFAULT_IDLE_TIME_CHECK_INTERVAL
public static final Duration DEFAULT_IDLE_TIME_CHECK_INTERVAL
The interval when to check if idle sockets are to be cleaned up.
-
-
Constructor Detail
-
EventingService
public EventingService(CoreContext coreContext, String hostname, int port)
-
-
Method Detail
-
createEndpoint
protected Endpoint createEndpoint()
Subclass implements this method to create new endpoints.- Returns:
- the created endpoint.
-
selectionStrategy
protected EndpointSelectionStrategy selectionStrategy()
Subclass implements this method to pick their selection strategy of choice.- Returns:
- the selection strategy.
-
type
public ServiceType type()
Description copied from interface:Service
Represents the service type for this service.
-
serviceContext
protected ServiceContext serviceContext()
Returns the createdServiceContext
for implementations to use.
-
idleTimeCheckInterval
protected Duration idleTimeCheckInterval()
Can be overridden for unit tests.
-
send
public <R extends Request<? extends Response>> void send(R request)
Description copied from interface:Service
Sends the request into thisService
.Note that there is no guarantee that the request will actually dispatched, based on the state this service is in.
-
connect
public void connect()
Description copied from interface:Service
Instruct thisService
to connect.This method is async and will return immediately. Use the other methods available to inspect the current state of the service, signaling potential successful connection attempts.
-
disconnect
public void disconnect()
Description copied from interface:Service
Instruct thisService
to disconnect.This method is async and will return immediately. Use the other methods available to inspect the current state of the service, signaling potential successful disconnection attempts.
- Specified by:
disconnect
in interfaceService
-
context
public ServiceContext context()
Description copied from interface:Service
Returns the underlying contextual metadata for this service.
-
state
public ServiceState state()
Description copied from interface:Stateful
Returns the current state of the stateful component.- Specified by:
state
in interfaceStateful<ServiceState>
-
states
public Flux<ServiceState> states()
Description copied from interface:Stateful
Returns a stream of states for this component as they change.- Specified by:
states
in interfaceStateful<ServiceState>
-
diagnostics
public Stream<EndpointDiagnostics> diagnostics()
Description copied from interface:Service
Returns diagnostics information for this service.- Specified by:
diagnostics
in interfaceService
-
internalDiagnostics
public Stream<InternalEndpointDiagnostics> internalDiagnostics()
- Specified by:
internalDiagnostics
in interfaceService
-
-