use of io.jans.orm.search.filter.Filter in project jans by JanssenProject.
the class AbstractCustomScriptService method findScriptByPatternAndType.
public List<CustomScript> findScriptByPatternAndType(String pattern, CustomScriptType type, int sizeLimit) {
String baseDn = baseDn();
Filter filter = buildFindByPatterAndTypeFilter(baseDn, pattern, type);
return persistenceEntryManager.findEntries(baseDn(), CustomScript.class, filter, sizeLimit);
}
use of io.jans.orm.search.filter.Filter in project jans by JanssenProject.
the class MetricService method findAllPeriodBranches.
public List<SimpleBranch> findAllPeriodBranches(DefaultBatchOperation<SimpleBranch> batchOperation, ApplicationType applicationType, int count, int chunkSize) {
String baseDn = buildDn(null, null, applicationType);
Filter skipRootDnFilter = Filter.createNOTFilter(Filter.createEqualityFilter("ou", applicationType.getValue()));
return getEntryManager().findEntries(baseDn, SimpleBranch.class, skipRootDnFilter, SearchScope.SUB, new String[] { "ou" }, batchOperation, 0, count, chunkSize);
}
use of io.jans.orm.search.filter.Filter in project jans by JanssenProject.
the class MetricService method findMetricEntry.
public Map<MetricType, List<? extends MetricEntry>> findMetricEntry(ApplicationType applicationType, List<MetricType> metricTypes, Date startDate, Date endDate, String... returnAttributes) {
prepareBranch(null, applicationType);
Map<MetricType, List<? extends MetricEntry>> result = new HashMap<MetricType, List<? extends MetricEntry>>();
if ((metricTypes == null) || (metricTypes.size() == 0)) {
return result;
}
// Prepare list of DNs
Set<String> metricDns = getBaseDnForPeriod(applicationType, startDate, endDate);
if (metricDns.size() == 0) {
return result;
}
for (MetricType metricType : metricTypes) {
List<MetricEntry> metricTypeResult = new LinkedList<MetricEntry>();
for (String metricDn : metricDns) {
List<Filter> metricTypeFilters = new ArrayList<Filter>();
Filter applicationTypeFilter = Filter.createEqualityFilter("jansAppTyp", applicationType.getValue());
Filter eventTypeTypeFilter = Filter.createEqualityFilter("jansMetricTyp", metricType.getValue());
Filter startDateFilter = Filter.createGreaterOrEqualFilter("jansStartDate", getEntryManager().encodeTime(metricDn, (startDate)));
Filter endDateFilter = Filter.createLessOrEqualFilter("jansEndDate", getEntryManager().encodeTime(metricDn, endDate));
metricTypeFilters.add(applicationTypeFilter);
metricTypeFilters.add(eventTypeTypeFilter);
metricTypeFilters.add(startDateFilter);
metricTypeFilters.add(endDateFilter);
Filter filter = Filter.createANDFilter(metricTypeFilters);
List<? extends MetricEntry> metricTypeMonthResult = (List<? extends MetricEntry>) getEntryManager().findEntries(metricDn, metricType.getMetricEntryType(), filter, returnAttributes);
metricTypeResult.addAll(metricTypeMonthResult);
}
// Sort entries to avoid calculation errors
getEntryManager().sortListByProperties(MetricEntry.class, metricTypeResult, false, "creationDate");
result.put(metricType, metricTypeResult);
}
return result;
}
use of io.jans.orm.search.filter.Filter in project jans by JanssenProject.
the class LookupService method getDisplayNameEntries.
/**
* Returns list of DisplayNameEntry objects
*
* @param baseDn
* base DN
* @param dns
* list of display names to find
* @return list of DisplayNameEntry objects
*/
@SuppressWarnings("unchecked")
public <T> List<T> getDisplayNameEntries(String baseDn, Class<T> entryClass, List<String> dns) {
List<String> inums = getInumsFromDns(dns);
if (inums.size() == 0) {
return null;
}
String key = getCompoundKey(entryClass, inums);
List<T> entries = (List<T>) cacheService.get(OxConstants.CACHE_LOOKUP_NAME, key);
if (entries == null) {
Filter searchFilter = buildInumFilter(inums);
entries = persistenceEntryManager.findEntries(baseDn, entryClass, searchFilter);
cacheService.put(OxConstants.CACHE_LOOKUP_NAME, key, entries);
}
return entries;
}
use of io.jans.orm.search.filter.Filter in project jans by JanssenProject.
the class AuthenticationPersistenceService method getExpiredAuthenticationFilter.
private Filter getExpiredAuthenticationFilter(String baseDn) {
int unfinishedRequestExpiration = appConfiguration.getFido2Configuration().getUnfinishedRequestExpiration();
unfinishedRequestExpiration = unfinishedRequestExpiration == 0 ? 120 : unfinishedRequestExpiration;
int authenticationHistoryExpiration = appConfiguration.getFido2Configuration().getAuthenticationHistoryExpiration();
authenticationHistoryExpiration = authenticationHistoryExpiration == 0 ? 15 * 24 * 3600 : authenticationHistoryExpiration;
Calendar calendar1 = new GregorianCalendar(TimeZone.getTimeZone("UTC"));
calendar1.add(Calendar.SECOND, -unfinishedRequestExpiration);
final Date unfinishedRequestExpirationDate = calendar1.getTime();
Calendar calendar2 = new GregorianCalendar(TimeZone.getTimeZone("UTC"));
calendar2.add(Calendar.SECOND, -authenticationHistoryExpiration);
final Date authenticationHistoryExpirationDate = calendar2.getTime();
// Build unfinished request expiration filter
Filter authenticationStatusFilter1 = Filter.createNOTFilter(Filter.createEqualityFilter("jansStatus", Fido2AuthenticationStatus.authenticated.getValue()));
Filter exirationDateFilter1 = Filter.createLessOrEqualFilter("creationDate", persistenceEntryManager.encodeTime(baseDn, unfinishedRequestExpirationDate));
Filter unfinishedRequestFilter = Filter.createANDFilter(authenticationStatusFilter1, exirationDateFilter1);
// Build authentication history expiration filter
Filter authenticationStatusFilter2 = Filter.createEqualityFilter("jansStatus", Fido2AuthenticationStatus.authenticated.getValue());
Filter exirationDateFilter2 = Filter.createLessOrEqualFilter("creationDate", persistenceEntryManager.encodeTime(baseDn, authenticationHistoryExpirationDate));
Filter authenticationHistoryFilter = Filter.createANDFilter(authenticationStatusFilter2, exirationDateFilter2);
return Filter.createORFilter(unfinishedRequestFilter, authenticationHistoryFilter);
}
Aggregations