本文整理汇总了Java中nl.strohalm.cyclos.entities.members.ElementQuery.getGroups方法的典型用法代码示例。如果您正苦于以下问题:Java ElementQuery.getGroups方法的具体用法?Java ElementQuery.getGroups怎么用?Java ElementQuery.getGroups使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类nl.strohalm.cyclos.entities.members.ElementQuery
的用法示例。
在下文中一共展示了ElementQuery.getGroups方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: applyRestrictions
import nl.strohalm.cyclos.entities.members.ElementQuery; //导入方法依赖的package包/类
@SuppressWarnings({ "unchecked", "rawtypes" })
private boolean applyRestrictions(final ElementQuery query) {
if (query instanceof AdminQuery) {
// Only admins with permissions can search admins
permissionService.permission().admin(AdminAdminPermission.ADMINS_VIEW).check();
} else if (query instanceof OperatorQuery) {
// Only members and operators can see other operators from the member himself
Member member = ((OperatorQuery) query).getMember();
if (member == null) {
throw new ValidationException();
}
permissionService.permission(member).member().operator().check();
} else {
// For members, just enforce the visible groups
Collection<Group> visibleGroups = (Collection) permissionService.getVisibleMemberGroups(false);
if (visibleGroups.isEmpty()) {
return false;
}
Collection<Group> queryGroups = (Collection<Group>) query.getGroups();
query.setGroups(PermissionHelper.checkSelection(visibleGroups, queryGroups));
}
// Ensure that only enabled users will be returned
if (!LoggedUser.isAdministrator()) {
query.setEnabled(true);
}
return true;
}
示例2: searchHistoryRemoved
import nl.strohalm.cyclos.entities.members.ElementQuery; //导入方法依赖的package包/类
@Override
public List<Element> searchHistoryRemoved(final ElementQuery query) {
Class<? extends Element> entityType;
if (query instanceof AdminQuery) {
entityType = Administrator.class;
} else {
entityType = Member.class;
}
final Map<String, Object> namedParameters = new HashMap<String, Object>();
final Set<Relationship> fetch = query.getFetch();
final StringBuilder hql = new StringBuilder();
hql.append(" select e");
hql.append(" from ").append(entityType.getName()).append(" e ");
jpaCustomFieldHandler.appendJoins(hql, "e.customValues", query.getCustomValues());
JpaQueryHelper.appendJoinFetch(hql, entityType, "e", fetch);
hql.append(" where 1=1");
if (query instanceof BrokerQuery) {
hql.append(" and exists (select 1 from " + BrokerGroup.class.getName() + " bg where bg = e.group) ");
}
JpaQueryHelper.addRightLikeParameterToQuery(hql, namedParameters, "e.user.username", query.getUsername());
JpaQueryHelper.addLikeParameterToQuery(hql, namedParameters, "e.name", query.getName());
final MemberQuery memberQuery = (MemberQuery) query;
final Boolean enabled = query.getEnabled();
// Specific tests for admins and members
if (query instanceof AdminQuery) {
if (enabled != null) {
// If searching for admins, enabled means normal groups, while disabled means removed admins
final Group.Status groupStatus = enabled ? Group.Status.NORMAL : Group.Status.REMOVED;
JpaQueryHelper.addParameterToQuery(hql, namedParameters, "e.group.status", groupStatus);
}
} else {
hql.append(" and exists ( ");
hql.append(" select gr.id ");
hql.append(" from GroupRemark gr ");
hql.append(" where ");
hql.append(" gr.subject = e ");
// Deactivation period
final Period deactivationPeriod = memberQuery.getDeactivationPeriod();
if (deactivationPeriod != null) {
JpaQueryHelper.addPeriodParameterToQuery(hql, namedParameters, "gr.date", deactivationPeriod);
}
// if at least one group was chosen.
// if more than one group is selected, it should not count moving
// the members from and to those groups, because they are the 'same group' in this case.
final Collection<? extends Group> groups = query.getGroups();
if (groups != null && !groups.isEmpty()) {
hql.append(" and gr.oldGroup in :groups and gr.newGroup not in :groups ");
namedParameters.put("groups", groups);
}
// no group was chosen, no disappears members is returned;
else {
return new ArrayList<Element>();
}
hql.append(" )");
}
// Custom Values
jpaCustomFieldHandler.appendConditions(hql, namedParameters, query.getCustomValues());
JpaQueryHelper.appendOrder(hql, "e.user.username");
return list(query, hql.toString(), namedParameters);
}
示例3: searchHistoryRemoved
import nl.strohalm.cyclos.entities.members.ElementQuery; //导入方法依赖的package包/类
@Override
public List<Element> searchHistoryRemoved(final ElementQuery query) {
Class<? extends Element> entityType;
if (query instanceof AdminQuery) {
entityType = Administrator.class;
} else {
entityType = Member.class;
}
final Map<String, Object> namedParameters = new HashMap<String, Object>();
final Set<Relationship> fetch = query.getFetch();
final StringBuilder hql = new StringBuilder();
hql.append(" select e");
hql.append(" from ").append(entityType.getName()).append(" e ");
hibernateCustomFieldHandler.appendJoins(hql, "e.customValues", query.getCustomValues());
HibernateHelper.appendJoinFetch(hql, entityType, "e", fetch);
hql.append(" where 1=1");
if (query instanceof BrokerQuery) {
hql.append(" and exists (select 1 from " + BrokerGroup.class.getName() + " bg where bg = e.group) ");
}
HibernateHelper.addRightLikeParameterToQuery(hql, namedParameters, "e.user.username", query.getUsername());
HibernateHelper.addLikeParameterToQuery(hql, namedParameters, "e.name", query.getName());
final MemberQuery memberQuery = (MemberQuery) query;
final Boolean enabled = query.getEnabled();
// Specific tests for admins and members
if (query instanceof AdminQuery) {
if (enabled != null) {
// If searching for admins, enabled means normal groups, while disabled means removed admins
final Group.Status groupStatus = enabled ? Group.Status.NORMAL : Group.Status.REMOVED;
HibernateHelper.addParameterToQuery(hql, namedParameters, "e.group.status", groupStatus);
}
} else {
hql.append(" and exists ( ");
hql.append(" select gr.id ");
hql.append(" from GroupRemark gr ");
hql.append(" where ");
hql.append(" gr.subject = e ");
// Deactivation period
final Period deactivationPeriod = memberQuery.getDeactivationPeriod();
if (deactivationPeriod != null) {
HibernateHelper.addPeriodParameterToQuery(hql, namedParameters, "gr.date", deactivationPeriod);
}
// if at least one group was chosen.
// if more than one group is selected, it should not count moving
// the members from and to those groups, because they are the 'same group' in this case.
final Collection<? extends Group> groups = query.getGroups();
if (groups != null && !groups.isEmpty()) {
hql.append(" and gr.oldGroup in (:groups) and gr.newGroup not in (:groups) ");
namedParameters.put("groups", groups);
}
// no group was chosen, no disappears members is returned;
else {
return new ArrayList<Element>();
}
hql.append(" )");
}
// Custom Values
hibernateCustomFieldHandler.appendConditions(hql, namedParameters, query.getCustomValues());
HibernateHelper.appendOrder(hql, "e.user.username");
return list(query, hql.toString(), namedParameters);
}