Class RiskStarterConfig
- java.lang.Object
-
- com.activeviam.risk.starter.cfg.impl.RiskStarterConfig
-
@PropertySource({"classpath:risk-config.properties","classpath:activemonitor.service.properties","classpath:jwt.properties","classpath:greek-based-pl-formula-rules.properties","classpath:reporting.properties","${app.env.properties.file.path:classpath:risk.properties}"}) @Configuration @Import({com.activeviam.properties.cfg.impl.ActiveViamPropertyFromSpringConfig.class,MaturityConverterConfig.class,TailMeasureCalcConfig.class,SecurityConfig.class,RiskInjectionsConfig.class,RiskPostProcessorConfig.class,PnLExplainFormulaProviderConfig.class,InputSelectorConfig.class,RiskResourcesConfig.class,RiskResourcesConfig.class,RiskDatastoreServicesConfig.class,EmbeddedActiveMonitorConfig.class,RiskCorsFilterConfig.class,VaRSourceConfig.class,PnLSourceConfig.class,SensiSourceConfig.class,ScalarSensiSourceConfig.class,SourcePatternsConfig.class,VaRImportSourceConfig.class,SensiImportSourceConfig.class,PnLImportSourceConfig.class,DataLoadControllerConfig.class,DataLoadControllerRestServiceConfig.class,DataLoadControllerFileConfig.class,InitialDataLoadConfig.class,CustomSignOffSourceInitialConfig.class,DatastoreCustomisationsConfig.class,ProductControlMeasuresConfig.class,VaRDatastoreDescriptionConfig.class,SensiDatastoreDescriptionConfig.class,PnLDatastoreDescriptionConfig.class,PnLAggregatedDatastoreDescriptionConfig.class,VaRAggregatedDatastoreDescriptionConfig.class,SensiAggregatedDatastoreDescriptionConfig.class,PnLFlatDatastoreDescriptionConfig.class,VaRFlatDatastoreDescriptionConfig.class,SensiFlatDatastoreDescriptionConfig.class,DatastoreDescriptionConfig.class,ImportDatastoreDescriptionConfig.class,FXRatesServiceConfig.class,MessengerDefinitionConfig.class,GreekSensiDescriptionConfig.class,AggregateProviderConfig.class,VarESCubeDimensionsConfig.class,VarESCubeMeasuresConfig.class,VarESCubeConfig.class,SensiCubeDimensionsConfig.class,SensiCubeMeasuresConfig.class,SensiCubeConfig.class,PnlCubeDimensionsConfig.class,PnlCubeMeasuresConfig.class,PnlCubeConfig.class,StoreAdjustmentCubeConfig.class,CubeAdjustmentCubeConfig.class,MandateCubeConfig.class,StoreAdjustmentSubmissionCubeConfig.class,MandateStatusAuditCubeConfig.class,MRACombinedCube.class,RiskManagerConfig.class,com.qfs.server.cfg.impl.ActivePivotConfig.class,com.qfs.server.cfg.impl.JwtConfig.class,ExtendedDatastoreConfig.class,com.qfs.server.cfg.impl.ActivePivotServicesConfig.class,com.qfs.server.cfg.impl.ActivePivotWebServicesConfig.class,com.qfs.server.cfg.impl.ActivePivotWebSocketServicesConfig.class,com.qfs.content.cfg.impl.ContentServerWebSocketServicesConfig.class,com.qfs.content.cfg.impl.ContentServerResourceServerConfigV2.class,com.qfs.server.cfg.impl.ActivePivotRemotingServicesConfig.class,com.qfs.server.cfg.impl.ActivePivotXmlaServletConfig.class,com.qfs.content.cfg.rest.CustomActiveViamRestServicesConfig.class,LocalContentServiceConfig.class,RemoteContentServiceConfig.class,ActivePivotBranchPermissionsManagerConfig.class,WhatIfConfig.class,WhatIfRestConfig.class,ParentChildServiceConfig.class,ParentChildListenersConfig.class,com.qfs.server.cfg.impl.StreamingMonitorConfig.class,com.qfs.server.cfg.impl.DatastoreRestServicesConfig.class,RiskSignOffParentConfig.class,SignOffAdjustmentsRestConfig.class,com.activeviam.tools.doctorpivot.config.DoctorPivotConfig.class,com.activeviam.reporting.core.cfg.ReportingConfig.class,com.qfs.contentserver.cfg.reporting.ReportingPluginsConfig.class,com.activeviam.reporting.rest.cfg.ReportingRestServicesConfig.class,com.activeviam.reporting.plugins.consumers.downloadlink.inmemory.rest.cfg.InMemoryDownloadLinkConsumerRestServicesConfig.class,com.activeviam.scheduling.core.cfg.SchedulingConfig.class,com.qfs.contentserver.cfg.scheduling.SchedulingPluginsConfig.class,com.qfs.content.cfg.impl.CustomContentServerRestServicesConfig.class,com.quartetfs.pivot.excel.config.SpreadsheetServicesConfig.class}) public class RiskStarterConfig extends Object
Generic Spring configuration of the ActivePivot application.This is the entry point for the Spring "Java Config" of the entire application. This is referenced in corresponding WebAppInitializer to bootstrap the application (as per Spring framework principles).
We use
PropertySource
annotation(s) to define some .properties file(s), whose content will be loaded into the SpringEnvironment
, allowing some externally-driven configuration of the application.We use
Import
annotation(s) to reference additional SpringConfiguration
classes, so that we can manage the application configuration in a modular way (split by domain/feature, re-use of core config, override of core config, customized config, etc...).Spring best practices recommends not to have arguments in bean methods if possible. One should rather autowire the appropriate spring configurations (and not beans directly unless necessary), and use the beans from there.
- Author:
- ActiveViam
-
-
Field Summary
Fields Modifier and Type Field Description protected ActiveMonitorExtensionsConfig
amExtensionsConfig
protected com.qfs.server.cfg.IActivePivotConfig
apConfig
ActivePivot spring configurationprotected com.qfs.server.cfg.content.IActivePivotContentServiceConfig
apCSConfig
protected com.qfs.server.cfg.IDatastoreConfig
datastoreConfig
protected org.springframework.core.env.Environment
env
Spring environment, automatically wiredprotected IFXRates
fxRates
protected Properties
riskConfigProperties
protected RiskPostProcessorConfig
riskPostProcessorConfig
ActivePivot spring configurationprotected SecurityConfig
securityConfig
-
Constructor Summary
Constructors Constructor Description RiskStarterConfig()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
apManagerInitPrerequisitePluginInjections()
com.quartetfs.fwk.monitoring.jmx.impl.JMXEnabler
JMXActivePivotContentServiceEnabler()
Enable JMX Monitoring for the Content Servicecom.quartetfs.fwk.monitoring.jmx.impl.JMXEnabler
JMXActivePivotEnabler()
Enable JMX Monitoring for ActivePivot Componentscom.quartetfs.fwk.monitoring.jmx.impl.JMXEnabler
JMXDatastoreEnabler()
Enable JMX Monitoring for the Datastorecom.quartetfs.fwk.monitoring.jmx.impl.JMXEnabler
JMXMemoryMonitoringServiceEnabler()
static org.springframework.context.support.PropertySourcesPlaceholderConfigurer
properties()
com.quartetfs.biz.pivot.impl.PeriodicActivePivotSchemaRebuilder
rebuild(List<String> schemas)
Example of bean which periodically rebuild the cubes.Void
startManager()
Initialize and start the ActivePivot Manager, after performing all the injections into the ActivePivot plug-ins.Void
startMessengers()
This starter bean ensures that the messengers are started only after initial CSV loading has completed.
-
-
-
Field Detail
-
datastoreConfig
@Autowired protected com.qfs.server.cfg.IDatastoreConfig datastoreConfig
-
apConfig
@Autowired protected com.qfs.server.cfg.IActivePivotConfig apConfig
ActivePivot spring configuration
-
riskPostProcessorConfig
@Autowired protected RiskPostProcessorConfig riskPostProcessorConfig
ActivePivot spring configuration
-
apCSConfig
@Autowired protected com.qfs.server.cfg.content.IActivePivotContentServiceConfig apCSConfig
-
securityConfig
@Autowired protected SecurityConfig securityConfig
-
fxRates
@Autowired protected IFXRates fxRates
-
amExtensionsConfig
@Autowired(required=false) protected ActiveMonitorExtensionsConfig amExtensionsConfig
-
riskConfigProperties
@Autowired @Qualifier("riskConfigProperties") protected Properties riskConfigProperties
-
env
@Autowired protected org.springframework.core.env.Environment env
Spring environment, automatically wired
-
-
Method Detail
-
properties
@Bean public static org.springframework.context.support.PropertySourcesPlaceholderConfigurer properties()
-
startManager
@Bean public Void startManager() throws Exception
Initialize and start the ActivePivot Manager, after performing all the injections into the ActivePivot plug-ins.- Returns:
- void
- Throws:
Exception
- any exception that occurred during the manager's start up- See Also:
apManagerInitPrerequisitePluginInjections()
-
JMXDatastoreEnabler
@Bean public com.quartetfs.fwk.monitoring.jmx.impl.JMXEnabler JMXDatastoreEnabler()
Enable JMX Monitoring for the Datastore- Returns:
- the
JMXEnabler
attached to the datastore
-
JMXMemoryMonitoringServiceEnabler
@Bean public com.quartetfs.fwk.monitoring.jmx.impl.JMXEnabler JMXMemoryMonitoringServiceEnabler()
-
JMXActivePivotEnabler
@Bean @DependsOn("startManager") public com.quartetfs.fwk.monitoring.jmx.impl.JMXEnabler JMXActivePivotEnabler()
Enable JMX Monitoring for ActivePivot Components- Returns:
- the
JMXEnabler
attached to the activePivotManager
-
JMXActivePivotContentServiceEnabler
@Bean public com.quartetfs.fwk.monitoring.jmx.impl.JMXEnabler JMXActivePivotContentServiceEnabler()
Enable JMX Monitoring for the Content Service- Returns:
- the
JMXEnabler
attached to the content service.
-
rebuild
@Bean(initMethod="start", destroyMethod="stop") @Profile("(dist-data-node | !dist-query-node)") public com.quartetfs.biz.pivot.impl.PeriodicActivePivotSchemaRebuilder rebuild(@Qualifier("Risk_SchemaName") List<String> schemas)
Example of bean which periodically rebuild the cubes.This method is OPTIONAL to the function of ActivePivot. In fact, the ActivePivot rebuild feature is used to reclaim space from append only structure of ActivePivot. It does not need to be called very often.
- Parameters:
schemas
- The schemas to rebuild.- Returns:
- a bean which periodically rebuild the cubes
-
apManagerInitPrerequisitePluginInjections
protected void apManagerInitPrerequisitePluginInjections() throws Exception
- Throws:
Exception
-
startMessengers
@Bean @Profile("dist-data-node") @DependsOn("initialDataLoad") public Void startMessengers() throws com.quartetfs.fwk.AgentException
This starter bean ensures that the messengers are started only after initial CSV loading has completed. This spares us sending a lot of useless empty initial discovery messages to the query node as one or multiple data nodes are started at the same time. And in case the initial loading sequence comprises of multiple DS transactions, we also spare the sending of discovery messages for each and every transaction.
- Throws:
com.quartetfs.fwk.AgentException
- if an issue is raised inMultiVersionDataActivePivot.startDistribution()
.
-
-