[ https://issues.apache.org/jira/browse/CAMEL-13119?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Andrea Cosentino updated CAMEL-13119: ------------------------------------- Fix Version/s: 3.0.0-M1 > Create Cache Policy for routes > ------------------------------ > > Key: CAMEL-13119 > URL: https://issues.apache.org/jira/browse/CAMEL-13119 > Project: Camel > Issue Type: New Feature > Components: camel-jcache > Reporter: Balazs Szeti > Assignee: Claus Ibsen > Priority: Major > Fix For: 3.0.0, 3.0.0-M1 > > Time Spent: 20m > Remaining Estimate: 0h > > Let's write a Policy for camel routes that can cache the "result" of a route > and execute the route next time only if nothing is found in the cache. > > Related to cache DSL idea, but without DSL change: > https://issues.apache.org/jira/browse/CAMEL-11114 > > In the first draft the CachePolicy would cache the Message Body by a key > calculated via an Expression. > Interface: > * cachePolicy.setCacheManager( cacheManager ) - set the CacheManager. If not > set, try lookup automatically. > * cachePolicy.setCacheName ( name ) - Will use this cache from the > CacheManager. If not set, we can use the route id by default. > * cachePolicy.setKeyExpression( expression ) - Camel expression that is > evaluated on the Exchange to determine the cache key. If it's found in the > cache, the route is not executed and the cached value is set as Body. > Otherwise the Message Body is added to the cache after the route with this > key. > > An earlier related implementation: > [https://gist.github.com/bszeti/552bf7a1f05a75fc2964a4ce7ce889b5] > and how it can be used in a route: > [https://gist.github.com/bszeti/4f855cd80cd69e3953ff990b0ae056a2] > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)