Re: Some suggestions

From: Andrus Adamchik (andru..bjectstyle.org)
Date: Thu Aug 28 2008 - 07:16:48 EDT

  • Next message: Loiko Dima (JIRA): "[jira] Updated: (CAY-1097) Attribute types are not generated for primitive ints"

    On Aug 28, 2008, at 2:00 PM, Andrey Razumovsky wrote:

    > Also I agree with Ari about not having it as a runtime dependency, and
    >> instead bundling it with the Modeler. There is a lot of value in
    >> the core
    >> library to stay lean. Maybe we can access it with reflection from
    >> DbGenerator to prevent a compile dependency?
    >
    >
    > We're talking about DbLoader here.

    Yep, sorry my bad, I meant DbLoader.

    > And of course we will not have
    > any dependency from it, because usage of Inflectior is just an
    > implementation of naming strategy interface. The question is about
    > where to
    > place this class - in core or in modeler. If we design everything
    > for the
    > modeler, then why DbLoader class itself is located in the core?

    This is considered to be a part of Cayenne core API.

    > Still, I agree that we can sacrifice this strategy to keep core
    > library smaller and
    > less dependent.
    > So, I'm going to initiate uploading the library to main repo and
    > include
    > dependency to the modeler.

    +1.

    Actually we can follow precedents. See "Optional Runtime Dependencies"
    here:

        http://cayenne.apache.org/doc/jar-files-and-dependencies.html

    It is listing jars that may be required by runtime if a user wants to
    use a certain feature in a certain configuration. The way this is
    handled in Maven is setting such a jar as a "compile" dependency of
    "cayenne-jdk1.5-unpublished" module, but not the user-visible "cayenne-
    server" module.

    Moreover things like commons-dbcp are also set as compile Modeler
    dependencies, achieving the same exact thing we are trying to do here.

    Andrus



    This archive was generated by hypermail 2.0.0 : Thu Aug 28 2008 - 07:17:20 EDT