datahub library

Classes

AggregateSelect
Select the result of an aggregation.
AmqpBrokerService
Implements BrokerService as an AMQP client using dart_amqp lib.
ApiEndpoint
A RequestHandler with a RoutePattern to match against.
ApiRequest
ApiResponse
Defines a response to a api request.
ApiService
A Service that serves HTTP-Requests by calling the provided ApiEndpoints.
ApplicationHost
Hosts services and provides dependency injection.
AsyncMetricCollector
AuthProvider
AuthProvider handles the authorization of requests.
BaseDao<TDao>
BaseService
Base class for all services.
BasicAuth
BasicAuthProvider
BasicAuthSession
BeanJoin<TDao>
BearerAuth
BearerAuthSession
BearerTokenAuthProvider
BoolArrayDataType
BoolDataType
BrokerExchange
BrokerMessage
BrokerMessageProperties
BrokerQueue
BrokerService
Interface for message broker connections.
ByteDataType
ByteStreamResponse
CollectionAddEvent<Item extends TransferObjectBase<Id>, Id>
CollectionAlignEvent<Item extends TransferObjectBase<Id>, Id>
CollectionInitEvent<Item extends TransferObjectBase<Id>, Id>
CollectionRemoveEvent<Item extends TransferObjectBase<Id>, Id>
CollectionResource<Item extends TransferObjectBase<Id>, Id>
CollectionResourceAdapter<T extends TransferObjectBase<TId>, TId>
CollectionResourceClient<Item extends TransferObjectBase<Id>, Id>
CollectionResourceProvider<Item extends TransferObjectBase<Id>, Id>
CollectionResourceRestClient<Item extends TransferObjectBase<Id>, Id>
CollectionResourceRestEndpoint
CollectionUpdateEvent<Item extends TransferObjectBase<Id>, Id>
CollectionWindowEvent<Item extends TransferObjectBase<Id>, Id>
CollectionWindowState<Item extends TransferObjectBase<Id>, Id>
CollectionWindowStateStreamTransformer<Item extends TransferObjectBase<Id>, Id>
CompareFilter
ConfigPath
Represents a config value path.
ConfigService
Internal service parsing configuration files, command line arguments and environment variables.
ConsoleLogBackend
The default LogBackend implementation.
CopyWith
Annotation for generating copyWith methods.
CounterMetric
A counter metric for use with TelemetryService.
CRUDRepository<TDao extends PrimaryKeyDao<TDao, TPrimaryKey>, TPrimaryKey>
Repository implementation for basic CRUD operations.
DailySchedule
DaoField
Annotation for dao fields. //TODO OUTDATED DOCS Valid types are String, int, double, bool, Uint8List and DateTime.
DaoType
Annotation for dao classes.
DatabaseAdapter<TConnection extends DatabaseConnection>
Abstract class for connecting to a database. TODO more docs TODO docs config vars
DatabaseConnection
Represents a single connection to a database.
DatabaseContext
Interface for performing operations / running queries on the database.
DataBean<TDao>
DataField<T extends DataType>
Definition a data object field inside a BaseDataBean.
DataSchema
DataType<T>
DateTimeDataType
DebugResponse
DiscardTraceExporter
TraceExporter implementation that discards traces.
DoubleArrayDataType
DoubleDataType
ElementResource<T extends TransferObjectBase>
ElementResourceAdapter<T extends TransferObjectBase>
ElementResourceClient<T extends TransferObjectBase>
ElementResourceProvider<T extends TransferObjectBase>
ElementResourceRestClient<T extends TransferObjectBase>
ElementResourceRestEndpoint
EmptyResponse
EphemeralHubEventSocket<T>
HubEventSocket for ephemeral event messages.
Event
EventHubService
ExceptionEvent
Expression
Represents an expression that is either static or evaluated for every individual dataset and evaluates into a value.
ExpressionSelect
ExpressionSort
FieldSelect
Select a specific column / field.
FileResponse
Filter
Representing filter arguments in a uniform, abstract way.
FilterGroup
Joins multiple Filter elements into a group using a FilterGroupType.
ForeignKey<T extends DataType>
ForeignKeyDaoField
Annotation for foreign key dao fields.
GaugeMetric
A gauge metric for use with TelemetryService.
GaugeSeries
HeadResponse
HistogramMetric
A histogram metric for use with TelemetryService.
HttpAuth
HttpClient
HttpFormData
HttpHeaders
HttpRequest
HttpResponse
HttpServer
Hub
Annotation for Hub Interface class
HubClient<T>
Interface class for generated Hub client classes.
HubConsumerService<THub extends EventHubService>
A service consuming and processing EventHub events.
HubEvent<T>
HubEventSocket<T>
HubEventSocket for eventual consistent messages.
HubProvider<T>
Interface class for generated Hub provider classes.
HubResource
Annotation for Resources
HubSocket<T>
IntArrayDataType
IntDataType
IsolatedHost
IsolatedHostConfiguration
IsolatedService
Base class for all isolated services.
JoinedQuerySource
JsonListDataType
JsonMapDataType
JsonResponse
JWT
JWTAuthProvider
JWTSession
KeyService
This service provides a centralized cache for public keys.
Lockable<T>
LogBackend
Backend interface for LogService.
LogMessage
LogMiddleware
LogService
DataHubs logging solution.
MapTransferBean
Bean for use with simple Map<String, dynamic> objects.
Metric
MetricCollector
MetricSample
MetricsExporter
Middleware
Migrator
Provides an interface for migrating between schema versions.
Mime
MinioService
Service for accessing a MinIO object storage.
MutableElementResource<T extends TransferObjectBase>
MutableElementResourceAdapter<T extends TransferObjectBase>
MutableElementResourceClient<T extends TransferObjectBase>
MutableElementResourceProvider<T extends TransferObjectBase>
MutableElementResourceRestClient<T extends TransferObjectBase>
OpenTelemetryTraceExporter
OperationExpression
OrderedData<Item>
Pool<T>
PrimaryKey<T extends DataType>
PrimaryKeyDao<TDao, TPrimaryKey>
PrimaryKeyDaoField
Annotation for primary key dao fields.
PrimaryKeyDataBean<TDao, TPrimaryKey>
PrimaryKeyPullCollection<Item, Id>
Interface for pull collections with primary key to query single objects.
PrometheusExporter
PullCollection<Item>
Interface for pull collections.
QueryResult
QuerySelect
Representing query select targets in a uniform, abstract way.
QuerySource<T>
Defining a common base class among query sources.
RawResponse
ReactiveCollection<Item extends TransferObjectBase<Id>, Id>
ReactivePartition
Annotation for data fields that act as reactive partition.
RepeatSchedule
Repeated execution with interval Duration.
Repository
Base class for repository services.
Resource<T extends TransferObjectBase>
Base class for all Hub-Resources.
ResourceProvider<T>
ResourceRestEndpoint
RestClient
RestCollectionEndpoint<T, Id>
Standardized REST collection endpoint.
RestResponse
Route
Represents a path which has been matched with a RoutePattern.
RoutePattern
Represents a route pattern against which request paths will be matched.
S3Service
SampleGroup
Schedule
Defines the schedule for task execution in SchedulerService.
ScheduledTask
SchedulerService
Provides a pattern for creating scheduled execution of tasks.
ServiceHost
Base class for ServiceHosts.
ServiceResolver
Session
Sort
Representing sort arguments in a uniform, abstract way.
SortGroup
Span
SpanId
StreamListenHook<T>
StringArrayDataType
StringDataType
SubQuery
SyncMetricCollector
TelemetryService
Internal service for collecting and exposing application metrics.
TextResponse
Token
TraceExporter
TraceId
Tracer
TransferBean<T>
TransferCodec<T>
TransferId
Annotation for marking the ID-field of a TransferObject.
TransferObject
Transfer object class annotation.
TransferObjectBase<Id>
Interface for transfer objects.
TripleJoinQuerySource<Ta, Tb, Tc>
TupleJoinQuerySource<Ta, Tb>
ValueExpression
ValueSemaphore<T>
WildcardSelect
Select every available column / field.

Enums

AggregateType
ApiRequestMethod
BrokerExchangeType
CompareType
ContentDisposition
Environment
FilterGroupType
LogLevel
MetricType
NamingConvention
OperationType
OverlapBehaviour
Defines how the SchedulerService should behave when a task is scheduled to run while a previous execution of the same task has not completed yet.
SpanType

Functions

addBase64Padding(String value) String
buildQueryString(Map<String, String?> query) String
decodeEnum<T extends Enum>(dynamic raw, List<T> values, {String? name}) → T
decodeEnumNullable<T extends Enum>(dynamic raw, List<T> values, {String? name}) → T?
decodeList<T extends List<E>?, E>(dynamic raw, E decode(dynamic, String?), {String? name}) → T
decodeListTyped<T extends List<E>?, E>(dynamic raw, {String? name}) → T
decodeMap<T extends Map<String, V>?, V>(dynamic raw, V decode(dynamic, String?), {String? name}) → T
decodeMapTyped<T extends Map<String, V>?, V>(dynamic raw, {String? name}) → T
decodeTyped<T>(dynamic raw, {TransferCodec<T>? codec, String? name}) → T
Decodes a typed value from its transfer representation. (JSON)
deepListEquality<T>(List<T> list1, List<T> list2) bool
deepMapEquality<T>(Map<T, dynamic> map1, Map<T, dynamic> map2) bool
encodeList<T extends List<E>?, E>(T value, dynamic encode(E)) → dynamic
encodeListTyped<T extends List<E>?, E>(T value) → dynamic
encodeMap<T extends Map<String, V>?, V>(T value, dynamic encode(V)) → dynamic
encodeMapTyped<T extends Map<String, V>?, V>(T value) → dynamic
encodeTyped<T>(T value, {TransferCodec<T>? codec}) → dynamic
Encodes a typed value to its transfer representation. (JSON)
everyCombination<T>(Iterable<Iterable<T>> lists) Iterable<Iterable<T>>
firstUpper(String input) String
getHttpStatus(int statusCode) String
isUppercase(int ascii) bool
randomBytes(int length) Iterable<int>
randomHexId(int parts) String
resolve<TService extends BaseService?>() → TService
Convenience method for injecting services.
splitWords(String input) Iterable<String>
stripBase64Padding(String value) String
toNamingConvention(String input, NamingConvention convention) String
uuid() String

Typedefs

HttpRequestHandler = Future<HttpResponse> Function(HttpRequest)
ItemByIdDelegate<Item, Id> = Future<Item> Function(Id id)
ItemsDelegate<Item> = Future<List<Item>> Function(int offset, int limit, Map<String, dynamic> params, Map<String, List<String>> query)
LengthDelegate = Future<int> Function(Map<String, dynamic> params, Map<String, List<String>> query)
MiddlewareBuilder = RequestHandler Function(RequestHandler)
ResourceSelector<THub> = ResourceProvider Function(HubProvider<THub> hub)
Task = FutureOr<void> Function()
WindowDelegate<Item extends TransferObjectBase<Id>, Id> = Stream<CollectionWindowState<Item, Id>> Function(int offset, int limit, {Map<String, String> params, CollectionWindowState<Item, Id>? previous, Map<String, List<String>> query})

Exceptions / Errors

ApiError
Base error for when DataHub code APIs are used incorrectly by user code.
ApiException
Base exception for when things go wrong at runtime inside the DataHub API framework.
ApiRequestException
CodecException
ConfigException
ConfigPathException
ConfigTypeException
ConsumerException
Exception can be used to control message ack behaviour.
PersistenceException