+1 Marshall

Jörn Kottmann wrote:
> Jörn Kottmann wrote:
>> Marshall Schor wrote:
>>> Jörn Kottmann wrote:
>>>  
>>>> The additionalParams Map has a String key and can contains
>>>> all kinds of Objects, so the correct generification would be
>>>> Map<String, Object>.
>>>>
>>>> In the uima code base I found one invocation where a Properties object
>>>> was
>>>> passed as additionalParams. Properties is a Map<Object, Object> which
>>>> will cause compile errors in user code when they use a Properties
>>>> object to pass
>>>> in the additional params.
>>>> I don't think its common practice to use Properties for additional
>>>> params.
>>>>
>>>>     
>>>
>>> If we fix the one found use cited above, are there any other cases
>>> where
>>> instances of Properties are passed as additionalParams in our own code?
>>> What do we think is the likelyhood that users will use Properties as
>>> instances of additional params?
>>> Our documentation says "See the Javadocs" for info on the additional
>>> parameters.  The Javadocs say this is a Map ... Valid parameter names
>>> are defined as constants on the XYZ Interface ... and in that
>>> interface,
>>> these constants are Strings.
>>>
>>> But users might decide to represent these parameters in a properties
>>> file.
>>>
>>> Here are some considerations (apologies if I get this wrong - please
>>> correct):
>>>  - If we declare as <Object, Object>, then you cannot assign a
>>> Map<String, Object> to the parameter.
>>>  - Having the key of the map be an Object is more general, and would
>>> accommodate Properties.
>>>  - declaring as <String, Object> - cannot assign  "new Properties()" to
>>> it any more, unless you do the double-fisted cast
>>> (Map<String,Object>)(Object)
>>>
>>> If that is the trade off, I think I would rather have it be <String,
>>> Object>.
>>>   
>> +1 from me for Map<String, Object>
> If there are no objections I would like to start with the change
> to get it done before our 28th deadline.
>
> Jörn
>

Reply via email to