List of usage examples for org.apache.commons.lang StringUtils containsIgnoreCase
public static boolean containsIgnoreCase(String str, String searchStr)
Checks if String contains a search String irrespective of case, handling null
.
From source file:org.processbase.ui.bpm.admin.AdminTaskList.java
@Override public int load(int startPosition, int maxResults) { table.removeAllItems();/* w ww . j a va 2s. co m*/ try { BPMModule bpmModule = ProcessbaseApplication.getCurrent().getBpmModule(); Set<LightActivityInstance> ais = bpmModule.getActivityInstances(); Set<ActivityState> stateFilters = new HashSet<ActivityState>(); if (showFinished == null || !(Boolean) showFinished.getValue()) { stateFilters.add(ActivityState.READY); stateFilters.add(ActivityState.EXECUTING); stateFilters.add(ActivityState.SUSPENDED); } // Filter words Set<String> filterWords = new HashSet<String>(); if (additionalFilter != null && additionalFilter.getValue() != null && StringUtils.isNotBlank(additionalFilter.getValue() + "")) { String[] words = StringUtils.splitByWholeSeparator(additionalFilter.getValue() + "", " "); for (int i = 0; i < words.length; i++) { filterWords.add(words[i]); } } // Filter List<LightActivityInstance> filtered = new ArrayList<LightActivityInstance>(); for (LightActivityInstance ai : ais) { if (stateFilters.size() > 0 && !stateFilters.contains(ai.getState())) { continue; } if (filterWords.size() > 0) { String processName = ai.getProcessDefinitionUUID().toString(); StringBuilder link = new StringBuilder( ai.getActivityLabel() != null ? ai.getActivityLabel() : ai.getActivityName()); if (ai.getDynamicLabel() != null && ai.getDynamicDescription() != null) { link.append("(").append(ai.getDynamicLabel()).append(" - ") .append(ai.getDynamicDescription()).append(")"); } else if (ai.getDynamicLabel() != null && ai.getDynamicDescription() == null) { link.append("(").append(ai.getDynamicLabel()).append(")"); } else if (ai.getDynamicLabel() != null && ai.getDynamicDescription() != null) { link.append("(").append(ai.getDynamicDescription()).append(")"); } String taskName = link.toString(); boolean contains = true; for (String w : filterWords) { if (!StringUtils.containsIgnoreCase(processName, w) && !StringUtils.containsIgnoreCase(taskName, w)) { contains = false; break; } } if (!contains) { continue; } } filtered.add(ai); } // Let sort list Collections.sort(filtered, new Comparator<LightActivityInstance>() { public int compare(LightActivityInstance o1, LightActivityInstance o2) { return o2.getLastUpdateDate().compareTo(o1.getLastUpdateDate()); } }); int from = startPosition < filtered.size() ? startPosition : filtered.size(); int to = (startPosition + maxResults) < filtered.size() ? (startPosition + maxResults) : filtered.size(); List<LightActivityInstance> page = filtered.subList(from, to); for (LightActivityInstance ai : page) { Item woItem = table.addItem(ai); LightProcessDefinition lpd = bpmModule.getLightProcessDefinition(ai.getProcessDefinitionUUID()); String processName = lpd.getLabel() != null ? lpd.getLabel() : lpd.getName(); String processInstanceUUID = ai.getProcessInstanceUUID().toString(); woItem.getItemProperty("processName").setValue(processName + " #" + processInstanceUUID.substring(processInstanceUUID.lastIndexOf("--") + 2)); StringBuilder link = new StringBuilder( ai.getActivityLabel() != null ? ai.getActivityLabel() : ai.getActivityName()); if (ai.getDynamicLabel() != null && ai.getDynamicDescription() != null) { link.append("(").append(ai.getDynamicLabel()).append(" - ").append(ai.getDynamicDescription()) .append(")"); } else if (ai.getDynamicLabel() != null && ai.getDynamicDescription() == null) { link.append("(").append(ai.getDynamicLabel()).append(")"); } else if (ai.getDynamicLabel() != null && ai.getDynamicDescription() != null) { link.append("(").append(ai.getDynamicDescription()).append(")"); } TableLinkButton teb = new TableLinkButton(link.toString(), ai.getActivityDescription(), null, ai, this, Constants.ACTION_OPEN); woItem.getItemProperty("label").setValue(teb); woItem.getItemProperty("lastUpdate").setValue(ai.getLastUpdateDate()); woItem.getItemProperty("state").setValue(getText(ai.getState().toString())); if (ai.isTask()) { woItem.getItemProperty("type").setValue(getText("task")); } else if (ai.isAutomatic()) { woItem.getItemProperty("type").setValue(getText("automatic")); } else if (ai.isTimer()) { woItem.getItemProperty("type").setValue(getText("timer")); } else if (ai.isSubflow()) { woItem.getItemProperty("type").setValue(getText("subflow")); } if (ai.getTask() != null && ai.getTask().isTaskAssigned()) { woItem.getItemProperty("assigned").setValue(ai.getTask().getTaskUser()); } ProcessInstanceUUID processUuid = ai.getProcessInstanceUUID(); if (ai.getRootInstanceUUID() != null) { processUuid = ai.getRootInstanceUUID(); } try { LightProcessInstance process = bpmModule.getLightProcessInstance(processUuid); woItem.getItemProperty("initiator").setValue(process.getStartedBy()); } catch (Exception e) { e.printStackTrace(); } } table.setSortContainerPropertyId("lastUpdate"); table.setSortAscending(false); table.sort(); return page.size(); } catch (Exception ex) { ex.printStackTrace(); } return 0; }
From source file:org.processbase.ui.bpm.worklist.CandidateCaseList.java
@Override public int load(int startPosition, int maxResults) { int results = 0; table.removeAllItems();/*w w w . j a va2 s . co m*/ try { // 1. load all tasks assigned to logged user Set<String> pids = new HashSet<String>(); // Search states List<ActivityState> states = new ArrayList<ActivityState>(); states.add(ActivityState.READY); states.add(ActivityState.EXECUTING); states.add(ActivityState.SUSPENDED); if (showFinished != null && ((Boolean) showFinished.getValue())) { states.add(ActivityState.FINISHED); states.add(ActivityState.CANCELLED); states.add(ActivityState.ABORTED); states.add(ActivityState.SKIPPED); } // Filter words Set<String> filterWords = new HashSet<String>(); if (additionalFilter != null && additionalFilter.getValue() != null && StringUtils.isNotBlank(additionalFilter.getValue() + "")) { String[] words = StringUtils.splitByWholeSeparator(additionalFilter.getValue() + "", " "); for (int i = 0; i < words.length; i++) { filterWords.add(words[i]); } } ProcessbaseApplication application = ProcessbaseApplication.getCurrent(); BPMModule bpmModule = application.getBpmModule(); List<LightProcessInstance> processes = new ArrayList<LightProcessInstance>(); Map<LightProcessInstance, LightTaskInstance> processTask = new HashMap<LightProcessInstance, LightTaskInstance>(); // Find tasks List<LightTaskInstance> tasks = new ArrayList<LightTaskInstance>(); for (ActivityState state : states) { try { tasks.addAll(bpmModule.getUserLightTaskList(application.getUserName(), state)); } catch (Exception e) { LOG.warn("could not find tasks", e); } } for (LightTaskInstance task : tasks) { if (task.isTask()) { try { LightProcessInstance process = bpmModule .getLightProcessInstance(task.getProcessInstanceUUID()); // If not root process (#1491) if (process.getParentInstanceUUID() != null) { continue; } // Do filter if (filterWords.size() > 0) { String processName = process.getUUID().toString().split("--")[0] + " #" + process.getNb(); String taskName = task.getActivityLabel(); boolean contains = true; for (String w : filterWords) { if (!StringUtils.containsIgnoreCase(processName, w) && !StringUtils.containsIgnoreCase(taskName, w)) { contains = false; break; } } if (!contains) { continue; } } String pid = task.getProcessInstanceUUID().toString(); if (!pids.contains(pid)) { pids.add(pid);// Add to set so we don't show // dublicate processes processes.add(process); processTask.put(process, task); } } catch (Exception e) { LOG.warn("could not find process", e); } } } // 2. load all instances started by the logged user Set<LightProcessInstance> processInstances = bpmModule.getLightUserInstances(); for (LightProcessInstance process : processInstances) { // If not root process (#1491) if (process.getParentInstanceUUID() != null) { continue; } // Do filter if (filterWords.size() > 0) { String name = process.getUUID().toString().split("--")[0] + " #" + process.getNb(); boolean contains = true; for (String w : filterWords) { if (!StringUtils.containsIgnoreCase(name, w)) { contains = false; break; } } if (!contains) { continue; } } String pid = process.getProcessInstanceUUID().toString(); if (process.getInstanceState() == InstanceState.STARTED && !pids.contains(pid)) { processes.add(process); } } // Let sort list Collections.sort(processes, new Comparator<LightProcessInstance>() { public int compare(LightProcessInstance o1, LightProcessInstance o2) { return o2.getStartedDate().compareTo(o1.getStartedDate()); } }); int from = startPosition < processes.size() ? startPosition : processes.size(); int to = (startPosition + maxResults) < processes.size() ? (startPosition + maxResults) : processes.size(); List<LightProcessInstance> page = processes.subList(from, to); for (LightProcessInstance process : page) { if (processTask.containsKey(process)) { addTableRow(process, true, processTask.get(process)); } else { addTableRow(process, false, null); } } results = page.size(); } catch (Exception e) { e.printStackTrace(); } table.setSortContainerPropertyId("lastUpdate"); table.setSortAscending(false); table.sort(); return results; }
From source file:org.processbase.ui.bpm.worklist.CandidateTaskList.java
@Override public int load(int startPosition, int maxResults) { int results = 0; table.removeAllItems();// ww w .ja va 2 s. c om try { BPMModule bpmModule = ProcessbaseApplication.getCurrent().getBpmModule(); List<LightTaskInstance> tasks = new ArrayList<LightTaskInstance>(); tasks.addAll(bpmModule.getLightTaskList(ActivityState.READY)); tasks.addAll(bpmModule.getLightTaskList(ActivityState.EXECUTING)); tasks.addAll(bpmModule.getLightTaskList(ActivityState.SUSPENDED)); // Filter words Set<String> filterWords = new HashSet<String>(); if (additionalFilter != null && additionalFilter.getValue() != null && StringUtils.isNotBlank(additionalFilter.getValue() + "")) { String[] words = StringUtils.splitByWholeSeparator(additionalFilter.getValue() + "", " "); for (int i = 0; i < words.length; i++) { filterWords.add(words[i]); } } List<LightTaskInstance> filteredTasks = new ArrayList<LightTaskInstance>(); for (LightTaskInstance task : tasks) { //Do filter String processName = task.getProcessDefinitionUUID().toString(); String taskName = task.getActivityLabel(); boolean contains = true; for (String w : filterWords) { if (!StringUtils.containsIgnoreCase(processName, w) && !StringUtils.containsIgnoreCase(taskName, w)) { contains = false; break; } } if (!contains) { continue; } filteredTasks.add(task); } //Let sort list Collections.sort(filteredTasks, new Comparator<LightTaskInstance>() { public int compare(LightTaskInstance o1, LightTaskInstance o2) { return o2.getLastUpdateDate().compareTo(o1.getLastUpdateDate()); } }); int from = startPosition < filteredTasks.size() ? startPosition : filteredTasks.size(); int to = (startPosition + maxResults) < filteredTasks.size() ? (startPosition + maxResults) : filteredTasks.size(); //Get page List<LightTaskInstance> page = filteredTasks.subList(from, to); for (LightTaskInstance task : page) { addTableRow(task, null); } results = page.size(); } catch (Exception ex) { ex.printStackTrace(); } table.setSortContainerPropertyId("lastUpdate"); table.setSortAscending(false); table.sort(); return results; }
From source file:org.projectforge.business.task.TaskFilter.java
/** * @param node// w ww. ja v a2 s. c om * @param task * @return true if the search string matches at least one field of the task of if this methods returns true for any * descendant. */ private boolean isVisibleBySearchString(final TaskNode node, final TaskDO task, final TaskDao taskDao, final PFUserDO user) { final Boolean cachedVisibility = taskVisibility.get(task.getId()); if (cachedVisibility != null) { return cachedVisibility; } if (isVisibleByStatus(node, task) == false && node.isRootNode() == false) { taskVisibility.put(task.getId(), false); return false; } if (taskDao != null && taskDao.hasSelectAccess(user, node.getTask(), false) == false) { return false; } final PFUserDO responsibleUser = TenantRegistryMap.getInstance().getTenantRegistry().getUserGroupCache() .getUser(task.getResponsibleUserId()); final String username = responsibleUser != null ? responsibleUser.getFullname() + " " + responsibleUser.getUsername() : null; if (StringUtils.containsIgnoreCase(task.getTitle(), this.searchString) == true || StringUtils.containsIgnoreCase(task.getReference(), this.searchString) == true || StringUtils.containsIgnoreCase(task.getShortDescription(), this.searchString) == true || StringUtils.containsIgnoreCase(task.getDescription(), this.searchString) == true || StringUtils.containsIgnoreCase(task.getShortDisplayName(), this.searchString) == true || StringUtils.containsIgnoreCase(username, this.searchString) == true || StringUtils.containsIgnoreCase(task.getWorkpackageCode(), this.searchString) == true) { taskVisibility.put(task.getId(), true); tasksMatched.add(task.getId()); return true; } else if (node.hasChilds() == true && node.isRootNode() == false) { for (final TaskNode childNode : node.getChilds()) { final TaskDO childTask = childNode.getTask(); if (isVisibleBySearchString(childNode, childTask, taskDao, user) == true) { taskVisibility.put(childTask.getId(), true); return true; } } } taskVisibility.put(task.getId(), false); return false; }
From source file:org.projectforge.plugins.skillmatrix.SkillFilter.java
/** * @param node//from w w w . j ava 2s .c o m * @param skill * @return true if the search string matches at least one field of the skill of if this methods returns true for any descendant. */ private boolean isVisibleBySearchString(final SkillNode node, final SkillDO skill, final SkillDao skillDao, final PFUserDO user) { final Boolean cachedVisibility = skillVisibility.get(skill.getId()); if (cachedVisibility != null) { return cachedVisibility; } if (StringUtils.containsIgnoreCase(skill.getTitle(), this.searchString) == true || StringUtils.containsIgnoreCase(skill.getDescription(), this.searchString) == true || StringUtils.containsIgnoreCase(skill.getComment(), this.searchString) == true) { skillVisibility.put(skill.getId(), true); skillsMatched.add(skill.getId()); return true; } else if (node.hasChilds() == true && node.isRootNode() == false) { for (final SkillNode childNode : node.getChilds()) { final SkillDO childSkill = childNode.getSkill(); if (isVisibleBySearchString(childNode, childSkill, skillDao, user) == true) { skillVisibility.put(childSkill.getId(), true); return true; } } } skillVisibility.put(skill.getId(), false); return false; }
From source file:org.projectforge.task.TaskFilter.java
/** * @param node/*from w ww.jav a2s . c o m*/ * @param task * @return true if the search string matches at least one field of the task of if this methods returns true for any descendant. */ private boolean isVisibleBySearchString(final TaskNode node, final TaskDO task) { final Boolean cachedVisibility = taskVisibility.get(task.getId()); if (cachedVisibility != null) { return cachedVisibility; } if (isVisibleByStatus(node, task) == false && node.isRootNode() == false) { taskVisibility.put(task.getId(), false); return false; } final PFUserDO user = Registry.instance().getUserGroupCache().getUser(task.getResponsibleUserId()); final String username = user != null ? user.getFullname() + " " + user.getUsername() : null; if (StringUtils.containsIgnoreCase(task.getTitle(), this.searchString) == true || StringUtils.containsIgnoreCase(task.getReference(), this.searchString) == true || StringUtils.containsIgnoreCase(task.getDescription(), this.searchString) == true || StringUtils.containsIgnoreCase(task.getShortDisplayName(), this.searchString) == true || StringUtils.containsIgnoreCase(username, this.searchString) == true || StringUtils.containsIgnoreCase(task.getWorkpackageCode(), this.searchString) == true) { taskVisibility.put(task.getId(), true); tasksMatched.add(task.getId()); return true; } else if (node.hasChilds() == true && node.isRootNode() == false) { for (final TaskNode childNode : node.getChilds()) { final TaskDO childTask = childNode.getTask(); if (isVisibleBySearchString(childNode, childTask) == true) { taskVisibility.put(childTask.getId(), true); return true; } } } taskVisibility.put(task.getId(), false); return false; }
From source file:org.sonar.api.checks.NoSonarFilter.java
public boolean isIgnored(Violation violation) { boolean ignored = false; if (violation.getResource() != null && violation.getLineId() != null) { Set<Integer> noSonarLines = noSonarLinesByResource.get(violation.getResource()); ignored = noSonarLines != null && noSonarLines.contains(violation.getLineId()); if (ignored && violation.getRule() != null && StringUtils.containsIgnoreCase(violation.getRule().getKey(), "nosonar")) { ignored = false;//from w w w.j a va 2s.c o m } } return ignored; }
From source file:org.sonar.api.issue.NoSonarFilter.java
@Override public boolean accept(FilterableIssue issue, IssueFilterChain chain) { boolean accepted = true; if (issue.line() != null) { Set<Integer> noSonarLines = noSonarLinesByResource.get(issue.componentKey()); accepted = noSonarLines == null || !noSonarLines.contains(issue.line()); if (!accepted && StringUtils.containsIgnoreCase(issue.ruleKey().rule(), "nosonar")) { accepted = true;//from w w w . ja v a2 s. c o m } } if (accepted) { accepted = chain.accept(issue); } return accepted; }
From source file:org.sonar.batch.index.DefaultIndexTest.java
@Before public void createIndex() { lock = new DefaultResourceCreationLock(new Settings()); MetricFinder metricFinder = mock(MetricFinder.class); when(metricFinder.findByKey("ncloc")).thenReturn(CoreMetrics.NCLOC); index = new DefaultIndex(mock(PersistenceManager.class), lock, mock(ProjectTree.class), metricFinder, mock(ScanGraph.class)); Project project = new Project("project"); ResourceFilter filter = new ResourceFilter() { public boolean isIgnored(Resource resource) { return StringUtils.containsIgnoreCase(resource.getKey(), "excluded"); }/*from w ww .j a v a 2s . co m*/ }; RulesProfile rulesProfile = RulesProfile.create(); rule = Rule.create("repoKey", "ruleKey", "Rule"); rule.setId(1); rulesProfile.activateRule(rule, null); index.setCurrentProject(project, new ResourceFilters(new ResourceFilter[] { filter }), new ViolationFilters(), rulesProfile); index.doStart(project); }
From source file:org.sonar.css.checks.CommentContainsPatternChecker.java
@Override public void visitComment(SyntaxTrivia trivia) { String comment = trivia.text(); if (StringUtils.containsIgnoreCase(comment, pattern) && !isLetterAround(comment, pattern)) { addPreciseIssue(trivia, message); }/*from www .j a v a 2s .co m*/ super.visitComment(trivia); }