本文整理汇总了Java中nl.strohalm.cyclos.entities.members.ElementQuery类的典型用法代码示例。如果您正苦于以下问题:Java ElementQuery类的具体用法?Java ElementQuery怎么用?Java ElementQuery使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
ElementQuery类属于nl.strohalm.cyclos.entities.members包,在下文中一共展示了ElementQuery类的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: search
import nl.strohalm.cyclos.entities.members.ElementQuery; //导入依赖的package包/类
@Override
public List<? extends Element> search(final ElementQuery query) {
if (!applyRestrictions(query)) {
throw new PermissionDeniedException();
}
return elementService.search(query);
}
开发者ID:mateli,项目名称:OpenCyclos,代码行数:8,代码来源:ElementServiceSecurity.java
示例2: 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;
}
开发者ID:mateli,项目名称:OpenCyclos,代码行数:28,代码来源:ElementServiceSecurity.java
示例3: search
import nl.strohalm.cyclos.entities.members.ElementQuery; //导入依赖的package包/类
@Override
public List<? extends Element> search(final ElementQuery query) {
query.fetch(Element.Relationships.USER);
if (query.getOrder() == null) {
query.setOrder(settingsService.getLocalSettings().getMemberResultDisplay());
}
return elementDao.search(query);
}
开发者ID:mateli,项目名称:OpenCyclos,代码行数:9,代码来源:ElementServiceImpl.java
示例4: 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);
}
开发者ID:mateli,项目名称:OpenCyclos,代码行数:65,代码来源:ElementDAOImpl.java
示例5: 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);
}
开发者ID:crypto-coder,项目名称:open-cyclos,代码行数:65,代码来源:ElementDAOImpl.java
示例6: search
import nl.strohalm.cyclos.entities.members.ElementQuery; //导入依赖的package包/类
/**
* Search elements, ordering results by username. If no entity can be found, returns an empty list. If any exception is thrown by the underlying
* implementation it should be wrapped by DaoException.
*/
List<? extends Element> search(ElementQuery params) throws DaoException;
开发者ID:mateli,项目名称:OpenCyclos,代码行数:6,代码来源:ElementDAO.java
示例7: searchHistoryNew
import nl.strohalm.cyclos.entities.members.ElementQuery; //导入依赖的package包/类
/**
* Search new elements in history in a period; search in the remarks and groups, if needed, ordering results by username. If no entity can be
* found, returns an empty list. If any exception is thrown by the underlying implementation it should be wrapped by DaoException. Used by Stats
* Key Dev > number new members
*/
List<Element> searchHistoryNew(ElementQuery query);
开发者ID:mateli,项目名称:OpenCyclos,代码行数:7,代码来源:ElementDAO.java
示例8: searchHistoryRemoved
import nl.strohalm.cyclos.entities.members.ElementQuery; //导入依赖的package包/类
/**
* Search the removed elements in history in a period; search in the remarks and groups, if needed, ordering results by username. If no entity can
* be found, returns an empty list. If any exception is thrown by the underlying implementation it should be wrapped by DaoException. Used by
* Stats Key Developments > number of (disappeared) members
*/
List<Element> searchHistoryRemoved(ElementQuery query);
开发者ID:mateli,项目名称:OpenCyclos,代码行数:7,代码来源:ElementDAO.java
示例9: search
import nl.strohalm.cyclos.entities.members.ElementQuery; //导入依赖的package包/类
/**
* Search the existing elements based on the ElementQuery object
* @return a list of elements
*/
List<? extends Element> search(ElementQuery query);
开发者ID:mateli,项目名称:OpenCyclos,代码行数:6,代码来源:ElementService.java
注:本文中的nl.strohalm.cyclos.entities.members.ElementQuery类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论