Date: 2004-04-23T06:23:38 Editor: DieterBogdoll <[EMAIL PROTECTED]> Wiki: Jakarta HiveMind Wiki Page: FeatureRequest URL: http://wiki.apache.org/jakarta-hivemind/FeatureRequest
no comment Change Log: ------------------------------------------------------------------------------ @@ -20,4 +20,51 @@ If we put a new attribute to the <implementation> tag, for example ''hint'' or ''name'', we could event select a implementation from the Registry: -IService myService = (IService) registry.getServices( "service-point-id", "hint", IService.class ); +<implementation service-id="my.service.point" hint="variantA"/> + +<implementation service-id="my.service.point" hint="variantB"/> + +IService myService = (IService) registry.getServices( "service-point-id", "variantA", IService.class ); + += Inlining of the configuration into the implementation tag = +Currently you have to configure a service via the <configuration-point> and <contribute> tag. +The big advantage of this mechanism is, that you can provide additional configurations to an existing service. + +At least in my case most components doesn't take a list of configuration items, but one configuration item. +So most of the time the ''occurs'' tag has the value 1. + +For reading and manipulating the configuration I have to look at two places: +* at the <contribute> tag where i have to specify the configuration +* and at the <implementation> tag where I create the service via <invoke-factory> and I have to specify the configuration-id. + +Wouldn't it be nicer to inline the content of the <contribution> tag into the <implementation> tag? + +So instead of: + + +<configuration-point id="config" occurs="1"><schema>...</schema></configuration-point> + +<contribution configuration-id="config"/>my configuration setting</contribution> + +<implementation service-id="my.service"> + <invoke-factory service-id="hivemind.BuilderFactory"> + <construct class="my.Implementation"> + <configuration>config</configuration> + </construct> + </invoke-factory> +</implementation> + +I would like to write: + + +<implementation service-id="my.service"> + <invoke-factory service-id="hivemind.BuilderFactory"> + <construct class="my.Implementation"> + <inline-configuration>my configuration setting</inline-configuration> + </construct> + </invoke-factory> +</implementation> + +DieterBogdoll +---- +'''Discussions:''' --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
