I'll take a look at this on Monday

On Thu, Jun 10, 2010 at 12:14 PM, Jim Wheaton <[email protected]> wrote:

> Any resolution on this issue?  Creating the entity group hierarchy
> works well, but looking at the query created by .AddPermissionsToQuery
> in NHProf, there is no join out to the EntityGroupsHierarchy.
>
> On Apr 15, 9:57 am, Patricia Vandermeer
> <[email protected]> wrote:
> > i'm not even sure where to begin for something like that!  but i'll poke
> > around and see what i can figure out :)  i'm certainly willing to try.
> >
> >
> >
> > On Thu, Apr 15, 2010 at 12:19 PM, Beto <[email protected]> wrote:
> > > From what I can see adding permission to a query is only going to down
> > > to one level of grouping.  It is not traversing the hierarchy.  Feel
> > > free to submit a patch.
> >
> > > On Apr 15, 6:54 am, patricia <[email protected]> wrote:
> > > > no one else has used the entity group hierarchy yet?
> >
> > > > On Apr 12, 2:38 pm, Patricia Vandermeer
> >
> > > > <[email protected]> wrote:
> > > > > Hello,
> >
> > > > > I've been playing with the new Hierarchy and it looks great!  This
> will
> > > > > hopefully really simplify my groups!
> >
> > > > > I've run into a problem with the addPermissionToQuery though!  I'm
> > > getting
> > > > > expected results from the authorizationService.IsAllowed and
> > > > > authorizationService.GetAuthoriazationInformation .  But when i
> tried
> > > adding
> > > > > the permissions to a criteria it doesn't seem to see the
> permissions
> > > from
> > > > > the parent entity group so i'm getting 0 results back.
> >
> > > > > Here's a sample bit that illustrates this:
> > > > > -----------------------
> > > > >             Dim adminUser As New User With {.UserName = "Admin"}
> > > > >             UnitOfWork.CurrentSession.Save(adminUser)
> >
> > > > >             authorizationRepository.CreateUsersGroup("Admins")
> > > > >             UnitOfWork.Current.TransactionalFlush()
> >
> > > > >
> authorizationRepository.CreateEntitiesGroup("SomeEntities")
> > > > >             UnitOfWork.Current.TransactionalFlush()
> >
> > > authorizationRepository.CreateChildEntityGroupOf("SomeEntities",
> > > > > "SomeChildEntities")
> > > > >             UnitOfWork.Current.TransactionalFlush()
> >
> > > > >
> authorizationRepository.CreateOperation("/TestEntity/Edit")
> > > > >             UnitOfWork.Current.TransactionalFlush()
> >
> > > > >             Dim childEntity As New Qualification With {.Name =
> "Child
> > > Entity
> > > > > 1"}
> > > > >             UnitOfWork.CurrentSession.Save(childEntity)
> > > > >             Dim childEntity2 As New Qualification With {.Name =
> "Child
> > > > > Entity 2"}
> > > > >             UnitOfWork.CurrentSession.Save(childEntity2)
> >
> > > > >
> authorizationRepository.AssociateEntityWith(childEntity,
> > > > > "SomeChildEntities")
> > > > >             UnitOfWork.Current.TransactionalFlush()
> >
> > > > >
> authorizationRepository.AssociateEntityWith(childEntity2,
> > > > > "SomeChildEntities")
> > > > >             UnitOfWork.Current.TransactionalFlush()
> >
> > > > >             permissionsBuilderService.Allow("/TestEntity") _
> > > > >                 .For(adminUser) _
> > > > >                 .On("SomeEntities") _
> > > > >                 .DefaultLevel() _
> > > > >                 .Save()
> >
> > > > >             UnitOfWork.Current.TransactionalFlush()
> >
> > > > >             Console.WriteLine("{0} can Edit {1} 's Entitles:  {2}",
> > > > > adminUser.UserName, childEntity.Name,
> > > > > authorizationService.IsAllowed(adminUser, childEntity,
> > > "/TestEntity/Edit"))
> > > > >             Console.WriteLine("{0} can Edit {1} 's Entitles:  {2}",
> > > > > adminUser.UserName, childEntity2.Name,
> > > > > authorizationService.IsAllowed(adminUser, childEntity,
> > > "/TestEntity/Edit"))
> >
> > >
> Console.WriteLine(authorizationService.GetAuthorizationInformation(adminUse
> > > r,
> > > > > childEntity, "/TestEntity/Edit"))
> >
> > >
> Console.WriteLine(authorizationService.GetAuthorizationInformation(adminUse
> > > r,
> > > > > childEntity2, "/TestEntity/Edit"))
> >
> > > > >             Dim theCrit As ICriteria =
> > > > > UnitOfWork.CurrentSession.CreateCriteria(GetType(Qualification))
> > > > >             authorizationService.AddPermissionsToQuery(adminUser,
> > > > > "/TestEntity/Edit", theCrit)
> > > > >             Dim entities As IList(Of Qualification) =
> theCrit.List(Of
> > > > > Qualification)()
> > > > >             Console.WriteLine("Number of Qualifications admin can
> > > edit:{0}",
> > > > > entities.Count.ToString)
> >
> > > > >             For Each q In entities
> > > > >                 Console.WriteLine(q.Name)
> > > > >             Next
> >
> > > > > ------------
> >
> > > > > Has anyone else had a chance to test this out?   Is it working for
> you?
> >
> > > --
> > > You received this message because you are subscribed to the Google
> Groups
> > > "Rhino Tools Dev" group.
> > > To post to this group, send email to [email protected].
> > > To unsubscribe from this group, send email to
> > > [email protected]<rhino-tools-dev%[email protected]>
> <rhino-tools-dev%2Bunsubscribe@ googlegroups.com>
> > > .
> > > For more options, visit this group at
> > >http://groups.google.com/group/rhino-tools-dev?hl=en.
>
> --
> You received this message because you are subscribed to the Google Groups
> "Rhino Tools Dev" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to
> [email protected]<rhino-tools-dev%[email protected]>
> .
> For more options, visit this group at
> http://groups.google.com/group/rhino-tools-dev?hl=en.
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Rhino Tools Dev" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/rhino-tools-dev?hl=en.

Reply via email to