« Return to Thread: Injection of a default property in domain classes

Re: packages and domains

by nycsailor :: Rate this Message:

Reply to Author | View in Thread

Ted,

Yes, but I don't control all of the code.  This is for the CMS plugin
that I built.  

And, yes, name conflicts between packages would be a problem.  I may
have to revisit this later.

Thanks for the advice.

Scott


On Thu, 2009-06-25 at 23:36 -0500, Ted Naleid wrote:

> So you're using a convention based on the name of the controller?  ex:
> domain class Foo -> FooController
>
>
> I normally extend that naming convention and have my controllers and
> domain classes that are named this way in the same package as well.
>  So domainClass com.example.Foo -> com.example.FooController
>
>
> The directory structure of grails keeps them physically separate, but
> the packages (and the naming convention) unite them IMO.
>
>
> If you have a reference to the controller in your filter, you could
> also get it's package name and continue to use the package name
> without needing to search through all of the domain classes (as well
> as lose half the benefit of having things in packages in the first
> place).
>
>
> Alternatively, your method to search through works too :).
>
>
> HTH,
> Ted
>
> On Thu, Jun 25, 2009 at 6:41 PM, Scott Burch <scott@...>
> wrote:
>         Although I can't complain, it was still possible to do.  Maybe
>         we could
>         add this to some Util class?
>        
>        
>         On Thu, 2009-06-25 at 19:05 -0400, Scott Burch wrote:
>         > Good question, but it is because I am looking up the name
>         from the
>         > controller passed to a filter.  I don't know what the
>         package will be.
>         > May not even belong to me.  We should have a way to look up
>         a artefact
>         > by the class name as well.
>         >
>         >
>         >
>         > On Thu, 2009-06-25 at 17:42 -0500, Ted Naleid wrote:
>         > > What's the problem with actually putting the package name
>         in the call
>         > > to getDomainClass/getArtefact?  That's kind of what it's
>         there for, to
>         > > separate your com.example.foo.Book from your
>         com.example.bar.Book.
>         > >
>         > > On Thu, Jun 25, 2009 at 5:33 PM, Scott Burch
>         <scott@...>
>         > > wrote:
>         > >         I have a problem with
>         > >         grailsApplication.getArtefact .getDomainClass and
>         > >         such.
>         > >
>         > >         I put my domain classes in packages (like a good
>         programmer :)
>         > >
>         > >         However, when I do that .getArtefact and such
>         don't see them
>         > >         without the
>         > >         full package name.
>         > >
>         > >         To get around this, I created  a closure that
>         finds artefacts,
>         > >         but it is
>         > >         not very efficient.
>         > >
>         > >         def findDomainClass = { name ->
>         > >                    it =
>         grailsApplication.domainClasses.iterator()
>         > >                    while(it.hasNext()) {
>         > >                        def n = it.next()
>         > >                        if(n.name == name) {
>         > >                            return n
>         > >                        }
>         > >                    }
>         > >         }
>         > >
>         > >         Does anyone know a better way.  Should we patch
>         > >         grailsApplication to handle this?
>         > >
>         > >
>         > >
>         > >
>         ---------------------------------------------------------------------
>         > >         To unsubscribe from this list, please visit:
>         > >
>         > >            http://xircles.codehaus.org/manage_email
>         > >
>         > >
>         > >
>         >
>         >
>         >
>         ---------------------------------------------------------------------
>         > To unsubscribe from this list, please visit:
>         >
>         >     http://xircles.codehaus.org/manage_email
>         >
>         >
>        
>        
>         ---------------------------------------------------------------------
>         To unsubscribe from this list, please visit:
>        
>            http://xircles.codehaus.org/manage_email
>        
>        
>        
>
>


---------------------------------------------------------------------
To unsubscribe from this list, please visit:

    http://xircles.codehaus.org/manage_email


 « Return to Thread: Injection of a default property in domain classes