Package com.persequor.extension.ioc
Interface IExtensionPointIoc
- All Known Subinterfaces:
- IDynamicExtensionService.IDynamicExtensionHelper
public interface IExtensionPointIoc
IOC Module. Use this for registering extension point implementations and/or to bind specific implementations to your
 own interfaces. An instantiation of this interface is provided to the configure method in the
 ExtensionPointConfiguration registered in the SAGA configuration.
- 
Method SummaryModifier and TypeMethodDescriptionacquire()Expose extension point registration options for the acquire part of the capture flow.api()Expose extension point registration options for adding extension point controllers to the elib service.<T> IExtensionPointBinder<T>Bind an interface or abstract class to an implementationGives read-only access to Saga configuration.voidconfigure(Class<? extends IExtensionPointConfiguration> configurationClass) Applies another extension point configuration.db()Exposes extension points for manipulating backing services (SQL, Cassandra, RabbitMq, ElasticSearch, etc)document()Expose document enrichment extension points for declaring custom enrichersepc()Exposes extension point registration options for manipulating EPCsfrontend()Exposes extension point registration options for manipulating the frontendissue()Exposes extension points for handling issuesjobs()Exposes extension points for running background jobs, either during bootup or on a schedulemetrics()Exposes extension points relating to metrics<T extends ModuleExtensionContext>
 TDeprecated.because of the `module` term clash.modules()Allows to configure extension modulesRegister monitoring-related extensions to be used on pages or exposed through the APIpersist()Expose extension point registration options for the persist part of the capture flow.settings()Expose settings which span multiple service roles like xml namespaces, leaf-node matchers, etc.spaces()Deprecated.Exposes extension points for providing static resourcesExpose extension point registration options for the statistics part of the capture flow.Expose extension point registration options for the subscription part of the capture flow.Expose extension point registration options for manipulating vocabularies, like schema definitions etc.
- 
Method Details- 
configureApplies another extension point configuration. The configure method of this other configuration will be called right away. Use the feature group multiple extensions into a module which can be re-used- Parameters:
- configurationClass- the class of the module you wish to include
 
- 
bindBind an interface or abstract class to an implementationThis method also allows for the interface to be injected with ISpaceBindingProviderfor use cases where there is an implementation of the interface per space. All spaces will default to using the core implementation unless specified otherwise. To configure a space-specific implementation seeISpaceExtensionPointIoc.bind(Class)Be aware that the active space is determined by the web request. This means that space-specific behavior is not supported for non-web processes such as background jobs. - Type Parameters:
- T- the inference type of interface or abstract class
- Parameters:
- from- the interface or abstract class
- Returns:
- binder for the specific implementation or provider
 
- 
acquireIAcquireExtensionPoint acquire()Expose extension point registration options for the acquire part of the capture flow. Code in these extension points will be executed synchronously with the api call to the SAGA system.- Returns:
- registration points for custom extension point implementations
 
- 
persistIPersistExtensionPoint persist()Expose extension point registration options for the persist part of the capture flow. Code in these extension points will be executed asynchronously, so any errors or output will not be shown directly to the caller of the capture api.- Returns:
- registration points for custom extension point implementations
 
- 
statisticsIStatisticsExtensionPoint statistics()Expose extension point registration options for the statistics part of the capture flow. These extension points will be run after the events + vocabularies has been successfully been stored, in parallel with the extension points under subscription- Returns:
- registration points for custom extension point implementations
 
- 
subscriptionISubscriptionExtensionPoint subscription()Expose extension point registration options for the subscription part of the capture flow. These extension points will be run after the events + vocabularies has been successfully been stored, in parallel with the extension points under statistics- Returns:
- registration points for custom extension point implementations
 
- 
apiIApiExtensionPoint api()Expose extension point registration options for adding extension point controllers to the elib service.- Returns:
- registration points for custom extension point implementations
 
- 
vocabularyIVocabularyExtensionPoint vocabulary()Expose extension point registration options for manipulating vocabularies, like schema definitions etc. These extension points will be run as part of start-up process.- Returns:
- registration points for custom extension point implementations
 
- 
frontendIFrontendExtensionPoint frontend()Exposes extension point registration options for manipulating the frontend- Returns:
- registration points for custom extension point implementations
 
- 
epcIEpcExtensionPoint epc()Exposes extension point registration options for manipulating EPCs- Returns:
- registration points for custom extension point implementations
 
- 
settingsISettingsExtensionPoint settings()Expose settings which span multiple service roles like xml namespaces, leaf-node matchers, etc.- Returns:
- registration point for global settings
 
- 
documentIDocumentExtensionPoints document()Expose document enrichment extension points for declaring custom enrichers- Returns:
- IDocumentExtensionPoints for each of Epcis or Epcis Master Data documents
 
- 
dbExposes extension points for manipulating backing services (SQL, Cassandra, RabbitMq, ElasticSearch, etc)- Returns:
- IDatabaseExtensionPoints
 
- 
issueIIssueExtensionPoint issue()Exposes extension points for handling issues- Returns:
- IIssueExtensionPoint
 
- 
jobsIJobExtensions jobs()Exposes extension points for running background jobs, either during bootup or on a schedule- Returns:
- IJobExtensions
 
- 
staticResourcesIStaticResourceExtensionPoints staticResources()Exposes extension points for providing static resources- Returns:
- IStaticResourceExtensionPoints
 
- 
metricsIMetricExtensionPoints metrics()Exposes extension points relating to metrics- Returns:
- IMetricExtensionPoints
 
- 
configurationISagaConfiguration configuration()Gives read-only access to Saga configuration. Can be used to make extension point setup conditional.- Returns:
- ISagaConfiguration
 
- 
moduleDeprecated.because of the `module` term clash. The new meaning of module is described here:ExtensionModule. UseExtensionModule.getExtensionContext(Class)method instead.
- 
modulesIModuleExtensions modules()Allows to configure extension modules- Returns:
- IModuleExtensions
 
- 
spacesDeprecated.Allows to configure spaces and their extensions- Returns:
- - ISpaceConfiguration
 
- 
monitoringIMonitoringExtensionPoint monitoring()Register monitoring-related extensions to be used on pages or exposed through the API- Returns:
- implementations binder
 
 
-