I'm fine with cloning it. Why bring in all the other stuff when we just
need a simple feature.

On Jul 17, 2016 11:27 AM, "Claude Brisson" <cla...@renegat.net> wrote:

> Another reenginering point I'd like to share with you:
>
> We're currently quite extensively using
> org.apache.commons.collections.ExtendedProperties. The main extra feature
> vs. java.util.Properties is the handling of multi-values keys.
>
> We removed the runtime-dependency towards commons-collections by using
> shading (aka integrating ExtendedProperties class file in our jar).
>
> So far, so good.
>
> But commons-collections 4.0 removed ExtendedProperties, replaced by
> org.apache.commons.configuration.PropertiesConfiguration.
>
> Either way, I think we can keep the compile-time dependancy towards
> commons-collections-3 for B.C. The class collections.ExtendedProperties
> will still be there, shaded, but only used by deprecated methods/classes.
>
> We shouldn't keep non-deprecated dependencies towards
> commons-collections-3, and the dilemma is about the replacement of
> ExtendedProperties in the new methods and classes. Two options here:
>
> 1) use a shaded dependency towards
> commons.configuration.PropertiesConfiguration
> 2) host a clone of ExtendedProperties, as
> org.apache.velocity.utils.ExtProperties
>
> Seen from a place far off, option 1 looks like the most natural, but:
>  - PropertiesConfiguration adds a whole bunch of features we don't really
> care about
>  - PropertiesConfiguration belongs to a whole class hierarchy, whereas
> ExtendedProperties is completely standalone
>  - integrating PropertiesConfiguration will need more reenginering
> (constructors aren't the same) and will potentially raise more
> backward-compatibility problems
>  - ExtendedProperties is stable and unlikely to need any future change
>
> So I'm strongly inclined to implement option 2.
>
> For reference, PropertiesConfiguration javadoc:
>
> https://commons.apache.org/proper/commons-configuration/apidocs/org/apache/commons/configuration2/PropertiesConfiguration.html
>
>
>    Claude
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscr...@velocity.apache.org
> For additional commands, e-mail: dev-h...@velocity.apache.org
>
>

Reply via email to