public static boolean isCustomPagingOkWithPagedSeqIteration(ObjectQuery query) { if (query == null || query.getPaging() == null) { return true; } ObjectPaging paging = query.getPaging(); return !paging.hasOrdering() && !paging.hasGrouping() && paging.getOffset() == null; }
public static ObjectFilter createUndefined(PrismContext prismContext) { return queryFactory(prismContext).createUndefined(); } }
@Override public int hashCode() { int result = 1; result = 31 * result + (direction != null ? direction.hashCode() : 0); return result; } }
private ObjectQuery addFilter(ObjectQuery query, ObjectFilter additionalFilter) { ObjectQuery newQuery; QueryFactory queryFactory = prismContext.queryFactory(); if (query == null) { newQuery = queryFactory.createQuery(additionalFilter); } else { newQuery = query.clone(); if (query.getFilter() == null) { newQuery.setFilter(additionalFilter); } else { newQuery.setFilter(queryFactory.createAnd(query.getFilter(), additionalFilter)); } } return newQuery; }
protected void logQuery(ObjectQuery query) { if (!LOGGER.isTraceEnabled()) { return; } if (query != null) { if (query.getPaging() == null) { LOGGER.trace("Searching objects with null paging. Processed query:\n{}", query.debugDump(1)); } else { LOGGER.trace("Searching objects from {} to {} ordered {} by {}. Processed query:\n{}", query.getPaging().getOffset(), query.getPaging().getMaxSize(), query.getPaging().getDirection(), query.getPaging().getOrderBy(), query.debugDump(1)); } } else { LOGGER.trace("Searching objects with null paging and null (processed) query."); } }
private static <T extends PrismValue> Collection<T> getValuesFromFilter(ObjectFilter filter, QName itemName, PrismContext prismContext) throws SchemaException { ItemPath propertyPath = ItemName.fromQName(itemName); if (filter instanceof EqualFilter && propertyPath.equivalent(((EqualFilter) filter).getFullPath())) { return ((EqualFilter) filter).getValues(); } else if (filter instanceof RefFilter && propertyPath.equivalent(((RefFilter) filter).getFullPath())) { return (Collection<T>) ((RefFilter) filter).getValues(); } else if (filter instanceof AndFilter) { return getValuesFromFilter(((NaryLogicalFilter) filter).getConditions(), itemName, prismContext); } else if (filter instanceof TypeFilter) { return getValuesFromFilter(((TypeFilter) filter).getFilter(), itemName, prismContext); } else { return null; } }
private ObjectQuery updateObjectQuery(ObjectQuery origQuery, ObjectFilter updatedFilter) { if (origQuery != null) { origQuery.setFilter(updatedFilter); return origQuery; } else if (updatedFilter == null) { return null; } else { return getPrismContext().queryFactory().createQuery(updatedFilter); } }
private boolean isCustomPagingOkWithFetchAllIteration(ObjectQuery query) { return query != null && query.getPaging() != null && query.getPaging().getMaxSize() != null && query.getPaging().getMaxSize() <= getConfiguration().getMaxObjectsForImplicitFetchAllIterationMethod(); }
private static boolean containExpression(ObjectFilter filter){ if (filter == null){ return false; } if (filter instanceof InOidFilter && ((InOidFilter) filter).getExpression() != null) { return true; } if (filter instanceof FullTextFilter && ((FullTextFilter) filter).getExpression() != null) { return true; } if (filter instanceof ValueFilter && ((ValueFilter) filter).getExpression() != null) { return true; } return false; }
public static boolean hasAllDefinitions(ObjectFilter filter) { final MutableBoolean hasAllDefinitions = new MutableBoolean(true); Visitor visitor = f -> { if (f instanceof ValueFilter) { ItemDefinition definition = ((ValueFilter<?,?>) f).getDefinition(); if (definition == null) { hasAllDefinitions.setValue(false); } } }; filter.accept(visitor); return hasAllDefinitions.booleanValue(); }
public ItemValueRestriction(InterpretationContext context, T filter, JpaEntityDefinition baseEntityDefinition, Restriction parent) { super(context, filter, filter.getFullPath(), filter.getDefinition(), baseEntityDefinition, parent); }
public void addRequiredItems(ObjectFilter filter) { filter.accept(visitable -> { if (visitable instanceof ItemFilter) { requiredItems.add(((ItemFilter)visitable).getFullPath()); } }); }
public static void assertNotRaw(ObjectFilter filter, final String message) { Visitor visitor = f -> { if (f instanceof ValueFilter && ((ValueFilter) f).isRaw()) { if (message == null) { throw new IllegalArgumentException(f.toString()); } else { throw new IllegalArgumentException(message+": "+ f); } } }; filter.accept(visitor); }
public Integer getOffset() { if (paging == null) { return null; } // if (paging.getCookie() != null) { // throw new UnsupportedOperationException("Paging cookie is not supported here."); // } return paging.getOffset(); }
public Integer getMaxSize() { if (paging == null) { return null; } // if (paging.getCookie() != null) { // throw new UnsupportedOperationException("Paging cookie is not supported here."); // } return paging.getMaxSize(); }
public ExistsRestriction(InterpretationContext context, ExistsFilter filter, JpaEntityDefinition baseEntityDefinition, Restriction parent) { super(context, filter, filter.getFullPath(), null, baseEntityDefinition, parent); }
public boolean equals(Object o, boolean exact) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; ObjectQueryImpl that = (ObjectQueryImpl) o; if (allowPartialResults != that.allowPartialResults) return false; if (filter != null ? !filter.equals(that.filter, exact) : that.filter != null) return false; return paging != null ? paging.equals(that.paging, exact) : that.paging == null; }
public static AllFilter createAll(PrismContext prismContext) { return queryFactory(prismContext).createAll(); }
public static NoneFilter createNone(PrismContext prismContext) { return queryFactory(prismContext).createNone(); }
public void accept(Visitor visitor) { visitor.visit(this); }