All Classes and Interfaces
Class
Description
Deprecated.
Value class representing additional data in form of key/value
Additional configuration for Http client, it should provide all configuration which is independent from making requests
Carrier for additional logging data that can be attached to a log message.
A double linked representation of an item and all the nested container(s) that contains it.
This class is defined to define how your page components are made available to the user.
Deprecated.
Indicates that the issue action is an asynchronous action.
Authenticate the current request using the specified
IAuthentication
implementation.Authorize the authenticated user if they have one of the specified roles.
Deprecated.
This should not be directly extended, but rather
LinkIssueAction
, AsyncIssueAction
, BatchLinkIssueAction
or BatchAsyncIssueAction
should be used.Base class for Migration interfaces.
Deprecated.
For reference see https://www.gs1.org/sites/default/files/docs/epc/CBV-Standard-1-2-r-2016-09-29.pdf
Custom wrapper around standard biz transaction list
This class reads
ICassandraDbConfig
from the property file.Represents one configuration within a module.
Annotation for a class representing a subset of config properties.
This class is defined to define how your page components are made available to the user.
Represents a context within a modules, these are used to group extension points
that the module expose.
Thread-safe model for collecting metrics without labels.
Common interface for all CRUD repositories.
Represents a result of an update.
Represents a query within a
CrudRepository
.Extends
CrudRepository
with a query function.Custom wrapper around standard custom tag list
Utility class for handling dates.
Setup like this:
@DbName
is used to specify the name of a table or column in the database.Used to specify the name of the database space.
Additional configuration for Http client,
Applies the default SAGA VocabularySchema fixtures to the provided VocabularySchemaRegistry
This represents a configuration of delays to be used when retrying work.
This class represents a tree/hierarchy structure of Epcs.
Custom wrapper around standard destination list
For reference see https://www.gs1.org/sites/default/files/docs/epc/CBV-Standard-1-2-r-2016-09-29.pdf
Use this annotation on:
- Top of a controller endpoint (method level) that is not intended to be exposed in Swagger UI.
Implementation of the double buffer pattern.
Represents an
IFrontendComponent
being rendered in the side drawer of Saga.Mode of EPC expansion, controlling the interplay between multiple implementations of
IEpcExpander
.EPCIS standard vocabulary types like
urn:epcglobal:epcis:vtype:BusinessLocation
Collection of Core Business Vocabulary constants from GS1
https://www.gs1.org/sites/default/files/docs/epc/CBV-Standard-1-2-2-r-2017-10-12.pdf
List of events wrapper
This pseudo enum class represents the different execution types/areas in Saga.
Annotation to mark experimental code.
Deprecated.
use
ExtensionInfo
annotation instead, since it better fits into the Saga extensions hierarchy (can annotate module/configuration/context/extension point/extension).Annotation which can be present on any extension element, such as module, configuration, context, extension point, extension.
Represent an extension registered/enabled in an extension point.
Defining a deliverable unit combining multiple
IExtensionPointConfiguration
representing blocks of functionality.Represent an extension point of a context in a module.
A fixed set of field validation constraints, to be applied to VocabularyElement attributes.
Link that allows mobile and desktop pages to easily expose downloadable files.
Deprecated.
Deprecated.
Deprecated.
Deprecated.
This class is for Saga Core use only, it should not be used in modules or solutions.
This runner is for modules and solution tests which should run against a Saga without real databases, queues, etc.
This runner is for modules and solution tests which should run against a Saga with real databases, queues, etc.
This class is for Saga Core use only, it should not be used in modules or solutions.
This class is for Saga Core use only, it should not be used in modules or solutions.
Recognizes EPC as a reusable asset if it is a Global Individual Asset Identifier.
Recognizes EPC as a reusable asset if it is a Global Returnable Asset Identifier.
Represents the axis configuration for the
IGraph
component.Represents the domain of an axis in the
GraphAxisProperties
component.Represents the scale type of the
GraphAxisProperties
component.A generic Gson based serializer to be used with
Serialized
annotation on model fields.Supported HTTP methods for extension point controllers
Supported HTTP methods for extension point controllers
Constants enumerating the HTTP status codes.
IString
implementation for translatable text.This represents the AboutController from Saga Core.
This represents the AcquireController from Saga Core.
Implementation registry for the acquire service
This service allows extension to push events to Saga.
A processor being able to take additional information data account
Additional data can be set by
ISubscriptionService
Api controller implementation registry
An implementation if this interface is a document validator that can accept or reject a document based on the
validity of events contained within.
An implementation if this interface is a master data document validator that can accept or reject a master data
document based on the validity of vocabularies contained within.
Filter logs by type to prevent them to being processed/persisted in
IAuditLogRepository
Implement this interface to retrieve log data information and process it.
Naive implementation of
IAuditLogRepository
, which logs audit logs to the standard Saga loggers.Implement the authentication flow to authenticate users in Saga.
Defines an object to provide information of the authentication request.
Defines an object to provide information of the authentication response.
Service for authenticating users using different
IAuthentication
implementations.Class representing an authentication session persisted in between HTTP requests.
Implementations of this extension point interface should identify if a given EPC class is a batch, e.g.
This service invokes (lazily) all implementations in the implementations of
IBatchMatcher
to find out if an
epcClass represents a batch.Jobs to be executed after webserver and queues are shut down on the Saga instance/node, but before the infrastructure
is taken down.
Represents cassandra configuration for connecting to custom data-source.
VocabularyDataSource automatically instantiated using the SAGA implementation backed by both Cassandra and Elasticsearch
This interface is used to check if the current user has access to a specific component.
Class used to accumulate errors and warnings during config validation.
If your config requires validation, implement this interface and register the config class via
IExtensionPointIoc.configuration()
This message interface is used in the closure
IHasConfirmation.confirmation(Consumer)
to
allow for a customized confirmation dialog/prompt.The service you inject into your code to access your backing services defined in your config interface implementations.
This represents the Saga Core Constituents page.
Interface representing a context menu that can be customized with different items,
dividers, and sub-menus.
This represents the Saga Core dashboard page.
Registry for backing services related extension points Backing services are SQL, Cassandra, RabbitMq, ElasticSearch,
etc
Date formatting for rendering in the UI See: Luxon formatting
During initialization of databases in sandbox, this interface returns default
user/pass/host/port settings for connections.
This extension point message interface is passed to implementations of
IIssuesInitialization
allowing them to register their DelayConfiguration
s.Use this service to register named delays and to wakeup delayed messages by their wakeup keys.
This represents the Saga Core Derivatives page.
Define different document extension points for each of the document enrichers.
Recognizes EPC class as a batch if it is an EPC Pure Identity Pattern.
Deprecated.
Deprecated.
VocabularyDataSource automatically instantiated using the SAGA implementation backed by Elasticsearch
Implementations of this interface will be called to find relevant EPCClasses based on concrete EPCs.
This service will invoke (lazily) all the enabled
IEpcClassRetriever
s registered to find the
EPCClasses based on concrete EPCs.This service expose enrich functions based on the IEpcEnricher implementations.
Extension of this type will be invoked when searching by EPCs which can come in different formats.
Implementation registry for extensions relating to EPC matching and manipulation
Represents the EpcisDocument enrichment extension point
Represents the EpcisMasterDataDocument enrichment extension point
You should not implement this interface, it will be passed
into
IEventDataExtension.configure(Event, IEventDataConfiguration)
for you to modify the event details.You should implement this to add/manipulate the event details in the UI
You should not implement this interface, it will be passed into your code for you to manipulate or add new sections
in the event details UI.
This is a model representation of the index entry that will be stored in the search index for each indexed event
An implementation if this interface is an event validator that can accept or reject an event based on its contents.
This interface represents the result of expanding a set of EPCs, using the
IEpcExpanderService
.This service will allow modules to request information about what extension points and extensions are active in Saga
and the loaded modules.
IOC binder
IoC configuration module
IOC Module.
Interface to be implemented on Exceptions which can populate "Issues" in SAGA
File providers are used by Saga to provide downloadable files to users
of both: web and Mobile.
This will be returned when adding fields to a form, to set further attributes
To create a new front end page you can implement this interface and define how your pages should extend the SAGA UI.
Represents the controller for frontend configuration of Saga Core.
This represents the Saga Core genealogy page.
Interface to indicate if an
ExtensionLink
can pop-up a
confirmation dialog/prompt before navigating to the link.Extensions of this type should provide health status of a service, external connection, or similar which is important to the operation of the Saga solution.
This represents the Saga Core hierarchies by container page.
This represents the Saga Core hierarchies by transaction page.
EPC enricher based on looking up the individual/unique asset id (EPC) in the vocabulary.
EPC enricher based on looking up the individual/unique asset id (EPC) in the vocabulary.
Helps to access/construct instances of the objects set-up with Saga's DI engine.
These values come from a form component that you may have placed on your page component, or from a deep link from
another page or context menu.
A migrator for integration tests that provides a simple way to clean and seed databases.
Implementation of this should return true if it knows for certain that a given EPC is a leaf node (contains no child EPCs)
You should depend on
ILeafNodeMatcherService
to query all the registered extensions.Service to match if an EPC is known to be a leafnode by querying all the enabled extensions of type
ILeafNodeMatcher
Deprecated.
For new code, use
SerializationFactory
instead.Use ILegacyVocabularyRegistrar for applying VocabularySchema entries in the way that older SAGA versions did,
having static VocabularyData data located in the SQL database.
Deprecated.
in favor of just implementing an
IMenuSection
and referencing it from extension pages, see IFrontendComponent.configure(ConfigurerDetails)
Extension point interface to allow modules/solutions addingExtension point interface used to declare menu sections.
Represent one measurement of a metric.
This is a write-only list which is passed to extensions providing metrics.
Represents a migration script.
Entry point for configuring modules
Internal interface used by implementations of
ModuleExtensionContext
Allows binding multiple implementations of a particular interface in extension points
VocabularyDataSource automatically instantiated using the SAGA implementation backed by MySQL
This is used to compose a page or a Vertical Container component with a series of sub-components like forms, tables, graphs, etc.
Deprecated.
Implementation registry for the persistence flow.
An implementation of this interface is a handler that receives an issue and performs an action with it
This will get called after the issues have been persisted
For example it can dispatch the issue to a queue or send a notification to an external system
An implementation of this interface is a handler that receives an issue and can determine what to do with the issue, persist it (the default behaviour), to delete it directly, or to push it directly back to the queue from whence it came.
Implement this class to represent a metric sent to Saga from another system
following the OpenMetrics standard.
Represents a connection to RabbitMQ providing helper methods to dispatch messages, close connection, etc
The implementation of this interface creates an instance of the RabbitMqClient
which is used to dispatch message to queue or exchange.
Implementation of this extension point interface help Saga identify if a given EPC is reusable (long-living).
This service will invoke (lazily) all the enabled
IReusableAssetMatcher
extensions to determine if an EPC
represents a reusable asset.Gives read-only access to Saga configuration.
Placeholder interface to allow binding a page to the default Saga logout page.
Service for registering callbacks to be executed when the execution context is done.
ISagaLogger is the main interface for logging in Saga SDK.
ISagaLoggerWithContext is the main interface for logging in Saga SDK with a pre defined context.
Use for Saga logging
Represents a migration script only run in sandbox-like environment.
Represents a schedule used for running background jobs
Produces schedules used to run background jobs.
Provides factories helping to create different types of schedules: instance local vs SAGA global
Manipulation extension for event search index.
Value list for index entries
Key/value map for index entries
Used to convert objects to and from strings for storage in the database, for cases where the database does not
support the type natively and no converter is available.
This service locator gives an overview of some services available in SAGA.
Solution wide settings spanning all Service Roles.
Allows binding only single implementation of a particular interface in extension points
Interface for space APIs.
Provides an instance of the interface implementation configured for the currently active space.
Configuration model classes implementing this interface and configured through
ISpacesIoc.configurations()
makes them available for injection through
ISpaceConfigProvider so that the space-specific properties can be retrieved according to
the currently active space.Provides an instance of the configuration model class specified as the type argument depending on the currently
active space.
Interface for space frontend extensions.
Provides a list of instances of the extension point specified as the type argument according to the currently active
space.
Provides an instance of the extension point specified as the type argument according to the currently active space.
Interface for configuring spaces in Saga
Represents configuration for connecting to custom data-source.
The intention of this class is to represent an issue for read-only purposes.
To configure static resources being served from a module's resource folder, create an implementation of this interface.
Implementation registry for the statistics service-role
Used to support translations.
Interface to implement to define a subscription in SAGA.
Implementation registry for the subscription service
An implementation of this interface is a document validator that can accept or reject a document based on the
validity of events contained within.
An implementation of this interface is a master data document validator that can accept or reject a document based on
the validity of vocabulary data contained within.
An implementation of this interface is a query document validator that can accept or reject a document based on
the validity of query data contained within.
Implementations of this interface are meant to extract data from incoming events and put them into quantity reports.
Deprecated.
Deprecated.
Deprecated.
Extension point interface used to let modules/solutions register menu items in the top-right corner user menu.
Service responsible for loading the users stored in SAGA.
Result of a validation.
Helper class to create buttons for the vocabulary details popup
Class representing the Vocabulary Details request context.
Class representing the Vocabulary Details section to be rendered in the frontend.
Implementation registry for vocabulary manipulations
A repository of VocabularyElements with added utility methods for fetching Epcis VocabularyElement.
A cached vocabulary repository using threadLocal based cache.
Object hydration implementation for VocabularySchemaRegistry instances.
This service provides methods for working with vocabularies and their schemas.
An implementation of this interface is a validator for vocabulary elements, that can accept or reject an element
based on its contents.
Configuration for the specific volatile store location.
Strategy for when to delete entries from the volatile store.
Deletion strategy that will never delete entries automatically.
Deletion strategy that will delete entries when the application is shut down.
Deletion strategy that will delete entries after a given duration.
A store for volatile data.
Describes different execution types of scheduled jobs
@Key
is used to mark a field as a key in the database, for indexing and ordering purposes.Thread-safe model for collecting metrics with labels.
Recognizes EPC class as a batch if it follows the GTIN + Batch/Lot scheme.
Deprecated.
Indicates that the issue action is a link action.
@MappedType
is used to indicate the underlying database type for a field.@Mapper
indicates the mapping configuration for a class.Provides helpers useful for migrations.
Signals that a
Key
is configured incorrectly.Signals that one or more
Relation
fields on an object are configured incorrectly.Signals that a field was not found on an object, but was expected to be there.
Signals that a method is missing from a class when it is expected to be there.
Signals that a property is configured incorrectly.
This class must be extended to create a context in your SAGA Module in which
sub-modules or the solution can register implementations of the interfaces
you have defined in your Module.
This class represent the information about a module loaded in Saga.
Namespace is a typed value to represent an xml namespace.
This class is used to compare lists with null values, in a similar way to how SQL handles null values.
Deprecated.
Deprecated.
This annotation is used to specify which tests should be run based on the backing services that are selected.
when adding more methods, also update Aggregation in ValqueriesQueryImpl
Deprecated.
Vocabulary identifiers commonly used across SAGA
@PrimaryKey
is used to mark a field in a model class as (part of) the primary key.Processing mode in
ISubscriptionExtension
Holds details about a property of a class.
Use this annotation to decide if the property should be shown in the UI and a description to what it does.
Custom wrapper around standard QuantityElement list
Custom wrapper around standard query param list
A ReadOnlyVocabularyDataSource receives Vocabulary data.
A ReadWriteVocabularyDataSource provides and receives Vocabulary data.
Throw this exception from within an asynchronous message listener in order to stop processing and send the message directly to Saga issues storage
Used to indicate a field that represents a relation to another object, instead of an actual column in the table
corresponding to its class.
Carrier for http request headers to be injected into extension point controller methods, to allow the methods to gain
access to the request headers
Carrier for http request headers to be injected into extension point controller methods, to allow the methods
to gain access to the request headers
Interface to inject in your controllers to handle decoded request parameters
Carrier for http response headers to be injected into extension point controller methods, to allow the methods
to gain access to the response headers
Carrier for http response headers to be injected into extension point controller methods, to allow the methods
to gain access to the response headers
Carrier for http response body stream to be injected into extension point controller methods, to allow the methods
to gain access to the response body stream
Carrier for http response body stream to be injected into extension point controller methods, to allow the methods
to gain access to the response body stream
Used to create a Stream out of ResultSet and close it after the Stream is consumed.
SagaCoreUiRoute is a ui component for creating frontend links to the SAGA api that is used by the native SAGA user
interface
Deprecated.
Static method used to calculate the hash of an extension class, and to find an extension based on its hash.
Provides helpers useful for migrations.
Serialized
is used to specify the serializer for a field, in cases where non-standard serialization is
required.Default implementation of the ITrackingStatisticsExtractor interface.
Custom wrapper around standard Source list
This is only used for testing purposes to ensure we access the correct space.
Allows for creating an isolated space for extensions to run in, separate from core and any extensions added to core.
This class reads
ISqlDbConfig
from the property file.Deprecated.
This is not properly tested and using it for migrations is error-prone.
Deprecated.
Stream wrapper that calls close() on terminal operations.
IString
implementation for non-translatable text.Wraps a consumer that throws an exception and allows it to be used in a lambda.
Alternative to
ValqueriesQuery
that is not based on a specific model class.Jooq-based replacement for valqueries-based TokenQueryImpl, but it has issue with us using mariadb connection for mysql
Defines the update operations that can be performed on a
TokenQuery
Data class for unhandled exceptions
UrlContent is a data structure containing the path variables and query parameters.
Extends
ValqueriesCrudRepository
with query functions.Extends
CrudRepository
with transactions, and functions handling types other than of this repository.Epcis vocabulary type like
BusinessLocationID
EPCIS standard vocabulary types like
urn:epcglobal:epcis:vtype:BusinessLocation
.Wrapper around standard vocabulary element attribute list
Wrapper around standard element uri list
Root-towards-leaf representation of a VocabularyElement and its sub-VocabularyElements
Wrapper around standard vocabulary element list
Leaf-towards-root representation of a VocabularyElement and its parent-VocabularyElements
Wrapper around standard list of vocabulary
A VocabularySchema identifies a set of Epcis-like VocabularyElements of a specific Type with a set of field based
validation constraints and a set of custom validators.
A collection of VocabularySchema.
Parametrized query used for searching vocabularies
Vocabulary identifier like
urn:epcglobal:epcis:vtype:BusinessLocation
The width is based on a twelve column grid, the value determines the number of columns it will use.
The XmlNamespaceConfiguration is used to map xml namespaces prefixes, in here called aliases, to full xml namespaces.
IAcquireService
, since it is the one exposed via Saga public SDK