public CriteriaBuilder orderBy(final String attribute) { return orderBy(attribute, true); }
public CriteriaBuilder orderBy(final String attribute) { return orderBy(attribute, true); }
public void addRestriction(String property, CriteriaBuilderHelper criteriaBuilderHelper, CriteriaBuilder criteriaBuilder, Object[] values) { criteriaBuilder.orderBy(values[0].toString()); } };
@Override @Transactional public Optional<OnmsAcknowledgment> findLatestAckForRefId(Integer refId) { CriteriaBuilder builder = new CriteriaBuilder(OnmsAcknowledgment.class) .eq("refId", refId) .limit(1) .orderBy("ackTime").desc() .orderBy("id").desc(); List<OnmsAcknowledgment> acks = findMatching(builder.toCriteria()); return acks.size() == 1 ? Optional.of(acks.get(0)) : Optional.empty(); } }
@Override public List<SearchResult> query(SearchQuery searchQuery, GraphContainer container) { LOG.info("ApplicationServiceSearchProvider->query: called with search query: '{}'", searchQuery); List<SearchResult> results = Lists.newArrayList(); String queryString = searchQuery.getQueryString(); CriteriaBuilder bldr = new CriteriaBuilder(OnmsApplication.class); if (queryString != null && queryString.length() > 0) { bldr.ilike("name", String.format("%%%s%%", queryString)); } bldr.orderBy("name", true); bldr.limit(10); Criteria dbQueryCriteria = bldr.toCriteria(); for (OnmsApplication application : applicationDao.findMatching(dbQueryCriteria)) { final ApplicationVertex applicationVertex = new ApplicationVertex(application); SearchResult searchResult = new SearchResult(applicationVertex, true, false); results.add(searchResult); } LOG.info("ApplicationServiceSearchProvider->query: found {} results: {}", results.size(), results); return results; }
criteriaBuilder.orderBy("pageTime", false);
criteriaBuilder.orderBy("pageTime", false);
@Override public List<SearchResult> query(SearchQuery searchQuery, GraphContainer container) { LOG.info("ApplicationServiceSearchProvider->query: called with search query: '{}'", searchQuery); List<SearchResult> results = Lists.newArrayList(); String queryString = searchQuery.getQueryString(); CriteriaBuilder bldr = new CriteriaBuilder(OnmsApplication.class); if (queryString != null && queryString.length() > 0) { bldr.ilike("name", String.format("%%%s%%", queryString)); } bldr.orderBy("name", true); bldr.limit(10); Criteria dbQueryCriteria = bldr.toCriteria(); for (OnmsApplication application : applicationDao.findMatching(dbQueryCriteria)) { final ApplicationVertex applicationVertex = new ApplicationVertex(application); SearchResult searchResult = new SearchResult(applicationVertex, true, false); results.add(searchResult); } LOG.info("ApplicationServiceSearchProvider->query: found {} results: {}", results.size(), results); return results; }
public OnmsAlarm getAlarm(int nodeId) { CriteriaBuilder builder = new CriteriaBuilder(OnmsAlarm.class); builder.alias("node", "node"); builder.ne("severity", OnmsSeverity.CLEARED); builder.orderBy("severity").desc(); builder.eq("node.id", nodeId); builder.limit(Integer.valueOf(1)); List<OnmsAlarm> alarms = alarmDao.findMatching(builder.toCriteria()); return alarms == null || alarms.isEmpty() ? null : alarms.get(0); } }
public OnmsAlarm getAlarm(int nodeId) { CriteriaBuilder builder = new CriteriaBuilder(OnmsAlarm.class); builder.alias("node", "node"); builder.ne("severity", OnmsSeverity.CLEARED); builder.orderBy("severity").desc(); builder.eq("node.id", nodeId); builder.limit(Integer.valueOf(1)); List<OnmsAlarm> alarms = alarmDao.findMatching(builder.toCriteria()); return alarms == null || alarms.isEmpty() ? null : alarms.get(0); } }
@Override public List<SearchResult> query(SearchQuery searchQuery, GraphContainer container) { LOG.info("ApplicationServiceSearchProvider->query: called with search query: '{}'", searchQuery); List<SearchResult> results = Lists.newArrayList(); String queryString = searchQuery.getQueryString(); CriteriaBuilder bldr = new CriteriaBuilder(OnmsApplication.class); if (queryString != null && queryString.length() > 0) { bldr.ilike("name", String.format("%%%s%%", queryString)); } bldr.orderBy("name", true); bldr.limit(10); Criteria dbQueryCriteria = bldr.toCriteria(); for (OnmsApplication application : applicationDao.findMatching(dbQueryCriteria)) { final ApplicationVertex applicationVertex = new ApplicationVertex(application); SearchResult searchResult = new SearchResult(applicationVertex); searchResult.setCollapsed(false); searchResult.setCollapsible(true); results.add(searchResult); } LOG.info("ApplicationServiceSearchProvider->query: found {} results: {}", results.size(), results); return results; }
@Override public Defaults getDefaults() { return new Defaults() .withPreferredLayout("Hierarchy Layout") .withCriteria(() -> { // Grab the business service with the smallest id List<BusinessService> businessServices = businessServiceManager.findMatching(new CriteriaBuilder(BusinessService.class).orderBy("id", true).limit(1).toCriteria()); // If one was found, use it for the default focus if (!businessServices.isEmpty()) { BusinessService businessService = businessServices.iterator().next(); BusinessServiceVertex businessServiceVertex = new BusinessServiceVertex(businessService, 0); return Lists.newArrayList(new VertexHopGraphProvider.DefaultVertexHopCriteria(businessServiceVertex)); } return null; }); }
@Override public List<? extends VertexRef> queryVertices(SearchQuery searchQuery, GraphContainer container) { List<BusinessServiceVertex> results = Lists.newArrayList(); String queryString = searchQuery.getQueryString(); CriteriaBuilder bldr = new CriteriaBuilder(BusinessService.class); if (queryString != null && queryString.length() > 0) { bldr.ilike("name", String.format("%%%s%%", queryString)); } bldr.orderBy("name", true); bldr.limit(10); Criteria dbQueryCriteria = bldr.toCriteria(); for (BusinessService bs : businessServiceManager.findMatching(dbQueryCriteria)) { final BusinessServiceVertex businessServiceVertex = new BusinessServiceVertex(bs, 0); // Only consider results which are available in the Topology Provider, see BSM-191 if (container.getTopologyServiceClient().getVertex(businessServiceVertex) != null) { results.add(businessServiceVertex); } } return results; }
public static void applyQueryParameters(CriteriaBuilder builder, QueryParameters queryParameters) { Objects.requireNonNull(builder); Objects.requireNonNull(queryParameters); builder.limit(queryParameters.getLimit()); if (queryParameters.getOffset() != null) { builder.offset(queryParameters.getOffset()); } if (queryParameters.getOrder() != null) { builder.clearOrder(); builder.orderBy(queryParameters.getOrder().getColumn(), !queryParameters.getOrder().isDesc()); } } }
public static void applyQueryParameters(CriteriaBuilder builder, QueryParameters queryParameters) { Objects.requireNonNull(builder); Objects.requireNonNull(queryParameters); builder.limit(queryParameters.getLimit()); if (queryParameters.getOffset() != null) { builder.offset(queryParameters.getOffset()); } if (queryParameters.getOrder() != null) { builder.clearOrder(); builder.orderBy(queryParameters.getOrder().getColumn(), !queryParameters.getOrder().isDesc()); } } }
private Status getStatusForGroup(VertexRef groupRef) { List<Vertex> vertices = getVertexProvider().getChildren(groupRef); Collection<Integer> nodeIds = new ArrayList<Integer>(); for(Vertex vertex : vertices) { if(!vertex.isGroup()) { nodeIds.add(vertex.getNodeID()); } } CriteriaBuilder builder = new CriteriaBuilder(OnmsAlarm.class); builder.alias("node", "node"); builder.in("node.id", nodeIds); builder.ge("severity", OnmsSeverity.WARNING); builder.orderBy("severity").desc(); builder.limit(1); return getStatusForCriteria(builder); }
private List<OnmsAlarm> findAlarms(final List<SearchResult> results, final String queryString) { CriteriaBuilder bldr = new CriteriaBuilder(OnmsAlarm.class); OnmsSeverity severity = OnmsSeverity.get(queryString); List<OnmsAlarm> alarms; if (!OnmsSeverity.INDETERMINATE.equals(severity)) { bldr = new CriteriaBuilder(OnmsAlarm.class); bldr.eq("severity", severity); alarms = alarmProvider.findMatchingAlarms(bldr.toCriteria()); if (alarms.size() > 0) { AlarmSearchResult result = new AlarmSearchResult(queryString); result.setSeverityQuery(true); results.add(result); } } else { bldr.isNotNull("node").ilike("uei", "%"+queryString+"%").orderBy("node"); alarms = alarmProvider.findMatchingAlarms(bldr.toCriteria()); } return alarms; }
private List<OnmsAlarm> findAlarms(final List<SearchResult> results, final String queryString) { CriteriaBuilder bldr = new CriteriaBuilder(OnmsAlarm.class); OnmsSeverity severity = OnmsSeverity.get(queryString); List<OnmsAlarm> alarms; if (!OnmsSeverity.INDETERMINATE.equals(severity)) { bldr = new CriteriaBuilder(OnmsAlarm.class); bldr.eq("severity", severity); alarms = alarmProvider.findMatchingAlarms(bldr.toCriteria()); if (alarms.size() > 0) { AlarmSearchResult result = new AlarmSearchResult(queryString); result.setSeverityQuery(true); results.add(result); } } else { bldr.isNotNull("node").ilike("uei", "%"+queryString+"%").orderBy("node"); alarms = alarmProvider.findMatchingAlarms(bldr.toCriteria()); } return alarms; }
@Override public Status getStatusForVertex(VertexRef vertexRef) { if(vertexRef.getNamespace().equals("nodes")) { if(isGroup(vertexRef) && getVertexProvider() != null) { return getStatusForGroup(vertexRef); } else { try { int nodeId = Integer.valueOf(vertexRef.getId()); CriteriaBuilder builder = new CriteriaBuilder(OnmsAlarm.class); builder.alias("node", "node"); builder.eq("node.id", nodeId); builder.ge("severity", OnmsSeverity.WARNING); builder.orderBy("severity").desc(); builder.limit(1); return getStatusForCriteria(builder); }catch(NumberFormatException e) { return createIndeterminateStatus(); } } } else { return createIndeterminateStatus(); } }
/** * Retrieves all of the outages (using DAOs) associated with * the given service. */ private List<OnmsOutage> getOutages(MockService svc) { OnmsMonitoredService monitoredSvc = m_monitoredServiceDao.get( svc.getNodeId(), svc.getAddress(), svc.getSvcName()); Criteria criteria = new CriteriaBuilder(OnmsOutage.class) .eq("monitoredService", monitoredSvc) .orderBy("ifLostService") .toCriteria(); return m_outageDao.findMatching(criteria); }