El jue, 06-04-2006 a las 17:40 +0200, Andreas Hartmann escribió:
> Hi Lenya devs,
>
> currently, it's not clear which classes+interfaces form
> the Lenya API (i.e., have to stay backwards compatible
> and therefore may be used by client code).
>
> Examples are AbstractUsecase and DocumentUsecase:
> Can you extend these classes without the danger of
> incompatible changes in future 1.4.x versions?
I am unsure what to tell you. We have a couple of usecases that extend
this classes. IMO this default implementations should reflect the least
common denominator and as soon as 1.4.x is in the release cycle they
*should* be backwards compatible.
>
> I like the approach taken by Avalon/Excalibur:
>
> - framework/api/src/java
> - framework/api/src/test
> - framework/impl/src/java
> - framework/impl/src/test
>
> For example: AbstractLogEnabled is part of the API,
> AbstractConfiguration is not. A disadvantage of this
> approach is that you can't tell whether a class is
> part of the API without knowing where it is located
> in the source tree. Maybe we can solve this using
> package names which contain "impl":
>
> o.a.lenya.cms.usecase.*
> o.a.lenya.cms.usecase.impl.*
>
>
> Modules are another story, but maybe the same concept
> can be applied there.
>
>
> WDYT?
Yeah, with this move we as well should harmonize the naming for the
implementation classes.
We have now:
- Default{api-class-name}.java
- {api-class-name}Impl.java
- {different-name-then-the-api-class-name}.java
IMO if we agree on
> o.a.lenya.cms.usecase.*
> o.a.lenya.cms.usecase.impl.*
Then we should have
- o.a.lenya.cms.usecase.*
* {api-class-name}.java
- o.a.lenya.cms.usecase.impl.*
* {api-class-name}.java
wdyt?
--
Thorsten Scherler
COO Spain
Wyona Inc. - Open Source Content Management - Apache Lenya
http://www.wyona.com http://lenya.apache.org
[EMAIL PROTECTED] [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]