You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cayenne.apache.org by "Andrus Adamchik (JIRA)" <ji...@apache.org> on 2014/04/12 14:34:16 UTC

[jira] [Commented] (CAY-1873) Move DataDomain cache configuration from the Modeler and into DI

    [ https://issues.apache.org/jira/browse/CAY-1873?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13967489#comment-13967489 ] 

Andrus Adamchik commented on CAY-1873:
--------------------------------------

When started working on the integration of the patches, I noticed a few more things that we need to address. I also did a bit of cleanup to make things easier (see r1586855). So... 

1. We can't switch EventBridge creation procedure on the ROP client by injecting EventBridgeFactory to RemoteSession. First, such factory is not expected to be serializable, and RemoteSession is passed across the wire. My refactoring per r1586855 moved EventBridge logic creation procedure to HessianConnection. And this Jira should not change it anymore I think. 

2. Concrete  EventBridgeFactory classes now have two methods. One that takes properties, another one that doesn't. At the same time they were refactored to store properties in ivars. Meaning the method that takes properties changes the  state of the factory object. Aside from concurrency implications, this is a bad coding style for a factory. How about we do it differently - we keep EventBridgeFactory unchanged, and it will only be used on the ROP client (see #1 above). And for server-side code, we use Provider<EventBridge> that implements the second variety of the method (without properties argument).. This is instead of Provider<EventBridgeFactory>.. This should make things much cleaners.

> Move DataDomain cache configuration from the Modeler and into DI
> ----------------------------------------------------------------
>
>                 Key: CAY-1873
>                 URL: https://issues.apache.org/jira/browse/CAY-1873
>             Project: Cayenne
>          Issue Type: Task
>            Reporter: Andrus Adamchik
>            Assignee: Andrus Adamchik
>         Attachments: cay1873.patch, cay1873_modeler.patch, cay1873_test.patch, cay1873v2.patch, cay1873v2_test.patch, x.png
>
>
> Cache configuration for DataDomain is currently done in the Modeler. (this configuration is limited to the "object cache" [1], query cache is configured in DI already)  and this seems misplaced. Cache settings are highly environment dependent and are better managed by DI. So let's remove all these screens from the Modeler and create any needed DI services that perform this configuration function.
> (The next step, outside the scope of this Jira, may be combining query cache and object cache in the same cache engine)
> [1] http://cayenne.apache.org/docs/3.0/caching-and-fresh-data.html



--
This message was sent by Atlassian JIRA
(v6.2#6252)