bool IActiveGroupMembershipInterface.TryGetValue(UGUI requestingAgent, UGUI principal, out GroupActiveMembership gam) { UUID activeid; MemoryGroupInfo info; MemoryGroupMember mem; if (m_ActiveGroups.TryGetValue(principal, out activeid) && activeid != UUID.Zero && m_Groups.TryGetValue(activeid, out info) && info.Members.TryGetValue(principal, out mem)) { gam = new GroupActiveMembership { User = principal, Group = info.ID, SelectedRoleID = mem.ActiveRoleID }; } else { gam = new GroupActiveMembership { User = principal, Group = UGI.Unknown, SelectedRoleID = UUID.Zero }; } return(true); }
bool IActiveGroupMembershipInterface.TryGetValue(UGUI requestingAgent, UGUI principal, out GroupActiveMembership gam) { gam = default(GroupActiveMembership); UGI activegroup; if (!ActiveGroup.TryGetValue(requestingAgent, principal, out activegroup)) { return(false); } GroupInfo group; if (!Groups.TryGetValue(requestingAgent, activegroup, out group)) { return(false); } GroupMember gmem; if (!Members.TryGetValue(requestingAgent, activegroup, principal, out gmem)) { return(false); } GroupRole role; if (!Roles.TryGetValue(requestingAgent, activegroup, gmem.SelectedRoleID, out role)) { return(false); } gam = new GroupActiveMembership { Group = group.ID, SelectedRoleID = gmem.SelectedRoleID, User = gmem.Principal }; return(true); }
bool IActiveGroupMembershipInterface.TryGetValue(UGUI requestingAgent, UGUI principal, out GroupActiveMembership gam) { GroupsServiceInterface groupsService; gam = default(GroupActiveMembership); return(TryGetGroupsService(principal, out groupsService) && groupsService.ActiveMembership.TryGetValue(requestingAgent, principal, out gam)); }