[
https://issues.apache.org/jira/browse/WHIRR-215?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12987543#action_12987543
]
Lars George commented on WHIRR-215:
-----------------------------------
I had a look at the patch and understand the suggested idea. I am just a bit
confused if that would need some lower level hook or if you could add this
myself somewhere. The issue is reuse I guess, since I would need support in all
handlers, so should go into a base CAH I presume? Or would you think this
should be supported cross services (each for their own defaults) and enabled
per service by for example supplying the name of the default config (or default
that to "whirr-<service-name>-default.properties") etc.?
> Add builder pattern to addRunUrl() call
> ---------------------------------------
>
> Key: WHIRR-215
> URL: https://issues.apache.org/jira/browse/WHIRR-215
> Project: Whirr
> Issue Type: Improvement
> Components: core
> Affects Versions: 0.3.0
> Reporter: Lars George
> Priority: Minor
> Fix For: 0.4.0
>
>
> If we get optional parameters then the code using varargs gets messy:
> {code}
> String tarurl = clusterSpec.getConfiguration().getString(
> HBaseConstants.KEY_TARBALL_URL);
> if (tarurl != null) {
> addRunUrl(event, hbaseInstallRunUrl,
> HBaseConstants.PARAM_PROVIDER, clusterSpec.getProvider(),
> HBaseConstants.PARAM_TARBALL_URL, tarurl);
> } else {
> addRunUrl(event, hbaseInstallRunUrl,
> HBaseConstants.PARAM_PROVIDER, clusterSpec.getProvider());
> }
> {code}
> We should extend or add a builder pattern so that one can do something like
> {code}
> RunUrl ru = RunUrl.create(event)
> .url(hbaseInstallRunUrl)
> .arg(HBaseConstants.PARAM_PROVIDER, clusterSpec.getProvider());
> if (tarUrl != null) {
> st.addArg(HBaseConstants.PARAM_TARBALL_URL, tarurl);
> }
> addRunUrl(ru);
> {code}
> Or similar to
> http://stackoverflow.com/questions/3838053/mapmaker-design-pattern referring
> to the Guava MapMaker class.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.