Class Cqld4DriverAdapter
- All Implemented Interfaces:
DriverAdapter<Cqld4BaseOp<?>,,Cqld4Space> NBComponent,NBComponentAdvisors,NBComponentEvents,NBComponentMetrics,NBComponentProps,NBComponentServices,NBComponentTimeline,NBProviderSearch,NBTokenWords,NBCanConfigure,NBCanReconfigure,NBConfigModelProvider,NBConfigurable,NBReconfigModelProvider,NBReconfigurable,NBLabeledElement,AutoCloseable
- Direct Known Subclasses:
CqlDriverAdapterStub
-
Nested Class Summary
Nested classes/interfaces inherited from interface io.nosqlbench.nb.api.labels.NBLabeledElement
NBLabeledElement.BasicLabeledElement -
Field Summary
Fields inherited from class io.nosqlbench.nb.api.components.core.NBBaseComponent
bufferOrphanedMetrics, closed_ns, error, errored_ns, labels, metricsBuffer, parent, started_epoch_ms, started_ns, state, teardown_nsFields inherited from interface io.nosqlbench.nb.api.components.core.NBComponent
EMPTY_COMPONENTFields inherited from interface io.nosqlbench.nb.api.components.core.NBComponentProps
HDRDIGITS, SUMMARYFields inherited from interface io.nosqlbench.nb.api.labels.NBLabeledElement
EMPTY -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionIn order to be provided with config information, it is required that the driver adapter specify the valid configuration options, their types, and so on.Provide a list of field remappers which operate on arbitrary fields.Op Mapping
This method allows each driver adapter to create named state which is automatically cached and re-used by name.Methods inherited from class io.nosqlbench.adapters.api.activityimpl.uniform.BaseDriverAdapter
applyConfig, applyReconfig, beforeDetach, getConfiguration, getOpStmtRemappers, getPreprocessor, getReconfigModel, getSpaceFuncMethods inherited from class io.nosqlbench.nb.api.components.core.NBBaseComponent
addAdvisor, addMetricsCloseable, attachChild, close, create, detachChild, find, findParentService, getAdvisors, getChildren, getComponentOnlyLabels, getComponentProp, getComponentState, getLabels, getNanosSinceStart, getParent, getTokens, nanosof_close, nanosof_error, nanosof_start, nanosof_teardown, onError, onEvent, reportExecutionMetric, setComponentProp, started_epoch_ms, teardown, toStringMethods inherited from class io.nosqlbench.nb.api.components.core.NBBaseComponentMetrics
addComponentMetric, addListener, findComponentMetrics, findComponentMetrics, getComponentMetric, getComponentMetrics, removeListenerMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter
getAdapterMaturity, getAdapterName, getBundledDocs, getErrorNameMapperMethods inherited from interface io.nosqlbench.nb.api.components.core.NBComponent
attachChild, close, detachChild, getChildren, getComponentOnlyLabels, getNanosSinceStart, getParent, reportExecutionMetricMethods inherited from interface io.nosqlbench.nb.api.components.core.NBComponentAdvisors
addAdvisor, getAdvisorResults, getAdvisorsMethods inherited from interface io.nosqlbench.nb.api.components.core.NBComponentEvents
onEventMethods inherited from interface io.nosqlbench.nb.api.components.core.NBComponentMetrics
addComponentMetric, findComponentMetrics, findComponentMetrics, findOneComponentMetric, findOneComponentMetric, getComponentMetric, getComponentMetricsMethods inherited from interface io.nosqlbench.nb.api.components.core.NBComponentProps
getComponentProp, setComponentPropMethods inherited from interface io.nosqlbench.nb.api.components.core.NBComponentServices
create, findMethods inherited from interface io.nosqlbench.nb.api.labels.NBLabeledElement
description, getLabelsMethods inherited from interface io.nosqlbench.nb.api.components.decorators.NBProviderSearch
findParentService
-
Constructor Details
-
Cqld4DriverAdapter
-
-
Method Details
-
getOpMapper
Description copied from interface:DriverAdapterOp Mapping
An Op Mapper is a function which can look at a
ParsedOpand create a matchingOpDispenser. An OpDispenser is a function that will produce a special typeDriverAdapterthat this DriverAdapter implements. There may be many different ops supported by an adapter, thus there may be similarly many dispensers.Both
OpMapperandOpDispenserare functions. The role ofOpMapperis to map the op template provided by the user to an op implementation provided by the driver adapter, and then to create a suitable function for creating that type of operations, known as theOpDispenser.These roles are split for a very good reason: Mapping what the user wants to do with an op template is resource intensive, and should be as pre-baked as possible. This phase is the op mapping phase. It is essential that the mapping logic be very clear and maintainable. Performance is not as important at this phase, because all of the mapping logic is run during initialization of an activity.
Conversely, op dispensing (the next phase) while an activity is running should be as efficient as possible.
- Returns:
- a dispensing function for an
DriverAdapterop generation
-
getSpaceInitializer
Description copied from interface:DriverAdapterThis method allows each driver adapter to create named state which is automatically cached and re-used by name. For each (driver,space) combination in an activity, a distinct space instance will be created. In general, adapter developers will use the space type associated with an adapter to wrap native driver instances one-to-one. As such, if the space implementation is an
AutoCloseable, it will be explicitly shutdown as part of the activity shutdown.It is not necessary to implement a space for a stateless driver adapter, or one which injects all necessary state into each op instance.
- Returns:
- A function which can initialize a new Space, which is a place to hold object state related to retained objects for the lifetime of a native driver.
-
getConfigModel
Description copied from class:BaseDriverAdapterIn order to be provided with config information, it is required that the driver adapter specify the valid configuration options, their types, and so on.- Specified by:
getConfigModelin interfaceNBConfigModelProvider- Specified by:
getConfigModelin interfaceNBConfigurable- Overrides:
getConfigModelin classBaseDriverAdapter<Cqld4BaseOp<?>,Cqld4Space> - Returns:
- A valid configuration model for the implementing class
-
getOpFieldRemappers
Description copied from class:BaseDriverAdapterProvide a list of field remappers which operate on arbitrary fields. Each function is applied to the op template fields.
- Specified by:
getOpFieldRemappersin interfaceDriverAdapter<Cqld4BaseOp<?>,Cqld4Space> - Overrides:
getOpFieldRemappersin classBaseDriverAdapter<Cqld4BaseOp<?>,Cqld4Space> - Returns:
- op field remappers, an empty list by default
-