Serializable post-processor properties : Objects and interfaces used in post-processor properties are now serializable, allowing Atoti Server applications to run in distributed clusters.
Objects and interfaces used in post-processor properties are now serializable, allowing Atoti Server applications to run in distributed clusters.
1.1.1
2024-11-27
Summary
Removed hard dependency on market data tables : The retrieval configuration will no longer attempt to create retrievers if the tables required are not part of the database schema.
The retrieval configuration will no longer attempt to create retrievers if the tables required are not part of the database schema.
1.1.0
2024-11-14
Summary
Standalone interpolation services : All interpolation logic has been moved to standalone interpolation services.
Caching improvements : The caching mechanism has been improved to reduce reliance on the IQueryCache interface, improve context-specific caching, and provide more flexibility for cache key creation.
Automated Registry injection : Registry injection for post-processors is now automated through the Spring Boot Starter.
Reduced API complexity : Removed several API classes and methods that were unnecessarily adding complexity.
Fixed cache misses when retrieving full market data structures.
1.0.1
2024-10-29
Summary
Removed checked exception from the interpolation services: IInterpolationService and ICachingInterpolationService no longer throw ActiveViamException.
Changed visibility of MarketDataMeasureBuilderHelper variables: The MarketDataMeasureBuilderHelper instance variables are now private.
Interpolation bug fixes and improvements: The interpolation mode is now included in the cache key. The MarketDataRetrieverContext can be used when constructing cache keys for retrievers. The caching interpolation service method parameters have changed.
Changed uses of IQueryCache to ConcurrentMap<Object, Object>: For flexibility, all IQueryCache parameters and variables are now ConcurrentMap<Object, Object>.
Added the interpolation mode to the retrieval cache key.
1.0.0
2024-10-09
Summary
Object[] coordinates: Coordinates are now Object[] instead of List<Object> throughout the module.
Measure builders outside post-processors: Builders have been removed from post-processors. Separate classes have been created to build post-processed measures.
Refactored AContextualMarketDataRetriever: The executeRetrieval(C translatedCoordinates) and generateMarketData(C translatedCoordinates, MarketDataRetrievalContext context) methods in AContextualMarketDataRetriever have been renamed, with changes to the default behavior of the retriever.
Generic APropertyMarketDataPostProcessor: Added the generic retriever type to the signature of APropertyMarketDataPostProcessor<T extends IDefaultMarketDataRetriever> in order to bind the container to a specific type.
Setting the FX pivot currency through injection: The FX pivot currency is now injected into the FX post-processors rather than added as a property.
Removed retriever factories: Removed retriever factories in favor of explicit instantiation through the container service.
Removed support for 3-axis interpolation: Cube (3-axis) market data interpolation is no longer supported through either the API or the default implementations.
Upgrade to Atoti Server 6.1.0: Atoti Market Data has been upgraded to Atoti Server 6.1.0.
Java 21: Atoti Market Data 0.9.0 requires Java 21.
Improvements to overridden store values in post-processors: Overridden store values can now be the same length as the required levels and are declared as an array.
Added FX rate post-processors: Two FX rate post-processors have been added to the library.
FX rate on a currency against itself: The contextual FX rate retriever returns 1.0 when an FX rate is requested for a currency against itself.
Extensible SingleMarketDataPostProcessor: The SingleMarketDataPostProcessor is now extensible, allowing the static measure() method to be replaced with an appropriate one for the extension.
Store name suffix A suffix can be defined for all store names. By default, that suffix is the empty string.
SingleMarketDataPostProcessor split: The selection of a market data container based on a post-processor property has been moved into a new post-processor, APropertyMarketDataPostProcessor.
Allowed the possibility to have no interpolation mode defined in the CurveMarketDataPostProcessor, SurfaceMarketDataPostProcessor and CubeMarketDataPostProcessor classes.
The selection of a market data container based on a post-processor property has been moved into a new post-processor, APropertyMarketDataPostProcessor.