Well, I see the problem. As it was discussed in past, we moved
SmartNamingStrategy to modeler to get rid of extra dependency on Cayenne
core.


> - Add a dependency on the modeler from the plugin.  Not terrible for maven,
> a little more so for ant.


Likely not the best way, because modeler is heavy and many unwanted
dependencies will be added.


> - Add a soft dependency, whereby you only need that Jar on the classpath if
> you're using that naming strategy.  We've done this for other classes in
> the
> past.  It works, but can be a pain to maintain.


This way anyone will first need to add jar in classpath to use the strategy.
This is really a pain!


> - Move naming strategies into their own module.  For maven the plugins and
> modeler would have a dependency on this new module.  For ant, you'd need
> the
> new JAR on the classpath.


I think this is a better way. Only that creates a new module that can make
our maven structure more complex and unreadable.


> - Find an alternative to the inflector lib.


You mean to rewrite it from clean sheet? Inflector library is very small and
event if we find an alternative, that will be a dependency either (?)

It's also OK for me if we move the strategy to Cayenne core. Then we'll need
compile dependency in core and "inclusive" - in modeler.

So I suggest we either move it to core or create a separate module. But, if
latter,  I'm leaving the country today and won't be able to accomplish that
in nearest two weeks.

Thanks,
Andrey

Reply via email to