It works nicely :-) Thanks Hadrian ...

On Dec 17, 2007 2:19 PM, Hadrian Zbarcea (JIRA) <[EMAIL PROTECTED]> wrote:

>
>    [
> https://issues.apache.org/activemq/browse/CAMEL-262?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_40866]
>
> Hadrian Zbarcea commented on CAMEL-262:
> ---------------------------------------
>
> You can use `patch -p 3 < patch.txt` from the base dir of your local copy.
>
> > Remove Design Tangles in componts file and impl
> > -----------------------------------------------
> >
> >                 Key: CAMEL-262
> >                 URL: https://issues.apache.org/activemq/browse/CAMEL-262
> >             Project: Apache Camel
> >          Issue Type: Improvement
> >          Components: camel-core
> >            Reporter: Christian Schneider
> >            Assignee: Guillaume Nodet
> >             Fix For: 1.3.0
> >
> >         Attachments: new-no tangle in impl Main cluster (30).png,
> new-only one dependency left in components file Main cluster (2).png,
> patch.txt, tangle in componts file Main cluster (13).png, tangle in impl
> Main cluster (26).png
> >
> >
> > I have used structure101 on camel and found some design tangles that are
> quite easy to resolve.
> > The first is in impl. Defaultcomponent contains a special case to handle
> ScheduledPollEndpoint. As they reference each other there is a dependency
> tangle. I have attached a screenshot from struture101 with current and
> suggested status.
> > This is the current code:
> > if (endpoint instanceof ScheduledPollEndpoint) {
> >                 ScheduledPollEndpoint scheduledPollEndpoint =
> (ScheduledPollEndpoint)endpoint;
> >                 scheduledPollEndpoint.configureProperties(parameters);
> > }
> > My suggestion is to add configureProperties to Endpoint and
> DefaultEndpoint. So any endpoint offers this useful method. The code is then
> simpler and the tangle is resolved:
> > endpoint.configureProperties(parameters);
> > The second tangle is in components file. The package file and strategy
> reference each other heavily. I have attached screenshots of the tangle.
> > This is because The strategies are configured directly in Endpoint
> (package file). My suggestion is to create a factory inside the package
> strategy. So there is only on dependency from file to strategy.  Another
> reason is that the FileProcessStrategy interface is in the strategy package.
> I think this interface belongs to the package file.  Using these two changes
> I managed to reduce the dependencies between strategy and file from 12/17 to
> 8/1. This makes the code much easier to grasp as you can understand the
> packages separately.
> > I have attached a patch and screenshots for both issues.
> > What do you think?
>
> --
> This message is automatically generated by JIRA.
> -
> You can reply to this email to add a comment to the issue online.
>
>


-- 
Cheers,
Guillaume Nodet
------------------------
Blog: http://gnodet.blogspot.com/

Reply via email to