List of usage examples for org.springframework.util StringUtils commaDelimitedListToSet
public static Set<String> commaDelimitedListToSet(@Nullable String str)
From source file:org.cloudfoundry.identity.uaa.oauth.UaaAuthorizationRequestManagerTests.java
@Test public void testResourceIdsWithCustomSeparator() { factory.setScopeSeparator("--"); client.setAuthorities(AuthorityUtils.commaSeparatedStringToAuthorityList("foo--bar,spam--baz")); parameters.put("grant_type", "client_credentials"); AuthorizationRequest request = factory.createAuthorizationRequest(parameters); assertEquals(StringUtils.commaDelimitedListToSet("foo,spam"), request.getResourceIds()); }
From source file:com.consol.citrus.admin.service.TestCaseService.java
/** * Get total number of tests in project. * @param project//from w w w .java2s .co m * @return */ public long getTestCount(Project project) { long testCount = 0L; try { List<File> sourceFiles = FileUtils.findFiles(project.getJavaDirectory(), StringUtils.commaDelimitedListToSet(project.getSettings().getJavaFilePattern())); for (File sourceFile : sourceFiles) { String sourceCode = FileUtils.readToString(new FileSystemResource(sourceFile)); testCount += StringUtils.countOccurrencesOf(sourceCode, "@CitrusTest"); testCount += StringUtils.countOccurrencesOf(sourceCode, "@CitrusXmlTest"); } } catch (IOException e) { log.warn("Failed to read Java source files - list of test cases for this project is incomplete", e); } return testCount; }
From source file:com.ephesoft.dcma.mail.service.MailServiceImpl.java
@Override public void mailOnWorkflowError(BatchInstance batchInstance, Exception exception, String subject, String mailTemplatePath, String errorPlugin) throws DCMAApplicationException { LOGGER.trace("Creating mailMetaData in Mail service impl"); if (null != batchInstance && null != exception) { MailMetaData metaData = new MailMetaData(); metaData.setFromAddress(this.fromMail); metaData.setFromName(this.fromMail); metaData.setSubject(subject);//from w w w . j a v a2s. com metaData.setToAddresses(new ArrayList<String>(StringUtils.commaDelimitedListToSet(toMail))); MailContentModel model = new MailContentModel(); model.add(MailConstants.WORKFLOW, batchInstance.getBatchClass().getName()); model.add(MailConstants.BATCH_INSTANCE, batchInstance.getIdentifier()); model.add(MailConstants.BATCH_NAME, batchInstance.getBatchName()); String exceptionMessage = exception.getMessage(); if (null == exceptionMessage) { exceptionMessage = ICommonConstants.EMPTY_STRING; } model.add(MailConstants.ERROR_MESSAGE, exceptionMessage); model.add(MailConstants.ERROR_LOG, ExceptionUtils.getFullStackTrace(exception)); model.add(MailConstants.ERROR_PLUGIN, errorPlugin); try { sendTextMailWithClasspathTemplate(metaData, mailTemplatePath, model); } catch (final SendMailException sendMailException) { LOGGER.error("Error encountered while sending mail.", sendMailException); throw new DCMAApplicationException("Error encountered while sending mail.", sendMailException); } } else { LOGGER.error( "Either or both batchInstance or exception object is null. Error notification mail cann't be sent."); } LOGGER.trace("Exiting mail send on error for workflow in Mail service impl"); }
From source file:org.wallride.service.ArticleService.java
@CacheEvict(value = WallRideCacheConfiguration.ARTICLE_CACHE, allEntries = true) public Article saveArticle(ArticleUpdateRequest request, AuthorizedUser authorizedUser) { postRepository.lock(request.getId()); Article article = articleRepository.findOneByIdAndLanguage(request.getId(), request.getLanguage()); LocalDateTime now = LocalDateTime.now(); String code = request.getCode(); if (code == null) { try {//from ww w .j a v a 2 s . c om code = new CodeFormatter().parse(request.getTitle(), LocaleContextHolder.getLocale()); } catch (ParseException e) { throw new ServiceException(e); } } if (!StringUtils.hasText(code)) { if (!article.getStatus().equals(Post.Status.DRAFT)) { throw new EmptyCodeException(); } } if (!article.getStatus().equals(Post.Status.DRAFT)) { Post duplicate = postRepository.findOneByCodeAndLanguage(code, request.getLanguage()); if (duplicate != null && !duplicate.equals(article)) { throw new DuplicateCodeException(code); } } if (!article.getStatus().equals(Post.Status.DRAFT)) { article.setCode(code); article.setDraftedCode(null); } else { article.setCode(null); article.setDraftedCode(code); } Media cover = null; if (request.getCoverId() != null) { cover = entityManager.getReference(Media.class, request.getCoverId()); } article.setCover(cover); article.setTitle(request.getTitle()); article.setBody(request.getBody()); // User author = null; // if (request.getAuthorId() != null) { // author = entityManager.getReference(User.class, request.getAuthorId()); // } // article.setAuthor(author); LocalDateTime date = request.getDate(); if (!Post.Status.DRAFT.equals(article.getStatus())) { if (date == null) { date = now; } else if (date.isAfter(now)) { article.setStatus(Post.Status.SCHEDULED); } else { article.setStatus(Post.Status.PUBLISHED); } } article.setDate(date); article.setLanguage(request.getLanguage()); article.getCategories().clear(); for (long categoryId : request.getCategoryIds()) { article.getCategories().add(entityManager.getReference(Category.class, categoryId)); } article.getTags().clear(); Set<String> tagNames = StringUtils.commaDelimitedListToSet(request.getTags()); if (!CollectionUtils.isEmpty(tagNames)) { for (String tagName : tagNames) { Tag tag = tagRepository.findOneForUpdateByNameAndLanguage(tagName, request.getLanguage()); if (tag == null) { tag = new Tag(); tag.setName(tagName); tag.setLanguage(request.getLanguage()); article.setCreatedAt(now); article.setCreatedBy(authorizedUser.toString()); article.setUpdatedAt(now); article.setUpdatedBy(authorizedUser.toString()); tag = tagRepository.saveAndFlush(tag); } article.getTags().add(tag); } } article.getRelatedPosts().clear(); Set<Post> relatedPosts = new HashSet<>(); for (long relatedId : request.getRelatedPostIds()) { relatedPosts.add(entityManager.getReference(Post.class, relatedId)); } article.setRelatedToPosts(relatedPosts); Seo seo = new Seo(); seo.setTitle(request.getSeoTitle()); seo.setDescription(request.getSeoDescription()); seo.setKeywords(request.getSeoKeywords()); article.setSeo(seo); List<Media> medias = new ArrayList<>(); if (StringUtils.hasText(request.getBody())) { // Blog blog = blogService.getBlogById(Blog.DEFAULT_ID); String mediaUrlPrefix = wallRideProperties.getMediaUrlPrefix(); Pattern mediaUrlPattern = Pattern.compile(String.format("%s([0-9a-zA-Z\\-]+)", mediaUrlPrefix)); Matcher mediaUrlMatcher = mediaUrlPattern.matcher(request.getBody()); while (mediaUrlMatcher.find()) { Media media = mediaRepository.findOneById(mediaUrlMatcher.group(1)); medias.add(media); } } article.setMedias(medias); article.setUpdatedAt(now); article.setUpdatedBy(authorizedUser.toString()); Map<CustomField, CustomFieldValue> valueMap = new LinkedHashMap<>(); for (CustomFieldValue value : article.getCustomFieldValues()) { valueMap.put(value.getCustomField(), value); } article.getCustomFieldValues().clear(); if (!CollectionUtils.isEmpty(request.getCustomFieldValues())) { for (CustomFieldValueEditForm valueForm : request.getCustomFieldValues()) { CustomField customField = entityManager.getReference(CustomField.class, valueForm.getCustomFieldId()); CustomFieldValue value = valueMap.get(customField); if (value == null) { value = new CustomFieldValue(); } value.setCustomField(customField); value.setPost(article); if (valueForm.getFieldType().equals(CustomField.FieldType.CHECKBOX)) { if (!ArrayUtils.isEmpty(valueForm.getTextValues())) { value.setTextValue(String.join(",", valueForm.getTextValues())); } else { value.setTextValue(null); } } else { value.setTextValue(valueForm.getTextValue()); } value.setStringValue(valueForm.getStringValue()); value.setNumberValue(valueForm.getNumberValue()); value.setDateValue(valueForm.getDateValue()); value.setDatetimeValue(valueForm.getDatetimeValue()); if (!value.isEmpty()) { article.getCustomFieldValues().add(value); } } } return articleRepository.save(article); }
From source file:com.ephesoft.dcma.mail.service.MailServiceImpl.java
@Override public void mailOnError(final String subject, final Message previousMailMessage, final String batchClassName, final String userName, final String mailTemplatePath) throws DCMAApplicationException { LOGGER.debug("Creating mailMetaData odr mail or error."); if (null != subject && null != batchClassName && null != userName && null != previousMailMessage) { final MailMetaData metaData = new MailMetaData(); metaData.setFromAddress(fromMail); metaData.setFromName(fromMail);/*from ww w.j a v a2 s . c om*/ metaData.setSubject(subject); metaData.setToAddresses(new ArrayList<String>(StringUtils.commaDelimitedListToSet(toMail))); final MailContentModel model = new MailContentModel(); model.add(MailConstants.BATCH_CLASS, batchClassName); model.add(MailConstants.USER_ID, userName); try { String ccString = Arrays.toString(previousMailMessage.getHeader(MailConstants.CC)) .replace(MailConstants.OPENING_BRACKET, MailConstants.SPACE) .replace(MailConstants.CLOSING_BRACKET, MailConstants.EMPTY_STRING); String toString = Arrays.toString(previousMailMessage.getHeader(MailConstants.TO)) .replace(MailConstants.OPENING_BRACKET, MailConstants.SPACE) .replace(MailConstants.CLOSING_BRACKET, MailConstants.EMPTY_STRING); // below date format will be used to format date string received // from mail header. Mail header can provide a lot more // info. SimpleDateFormat simpleDateFormat = new SimpleDateFormat(MailConstants.DATE_FORMAT); model.add(MailConstants.SUBJECT, previousMailMessage.getSubject()); model.add(MailConstants.FROM, Arrays.toString(previousMailMessage.getHeader(MailConstants.FROM)) .replace(MailConstants.OPENING_BRACKET, MailConstants.SPACE) .replace(MailConstants.CLOSING_BRACKET, "")); model.add(MailConstants.TO, toString.equalsIgnoreCase(MailConstants.NULL_STRING) ? MailConstants.EMPTY_STRING : toString); model.add(MailConstants.CC, ccString.equalsIgnoreCase(MailConstants.NULL_STRING) ? MailConstants.EMPTY_STRING : ccString); model.add(MailConstants.RECEIVED_DATE, simpleDateFormat .parseObject(previousMailMessage.getHeader(MailConstants.DATE_STRING)[0].toString()) .toString()); } catch (javax.mail.MessagingException mailException) { LOGGER.error("Error encountered while extarcting info from previos mail object", mailException); throw new DCMAApplicationException( "Error encountered while extarcting infor from previos mail object", mailException); } catch (java.text.ParseException parseException) { LOGGER.error( "Error encountered while parsing date extracted from mail header of previos mail object", parseException); throw new DCMAApplicationException( "Error encountered while parsing received date from previos mail object", parseException); } LOGGER.debug( EphesoftStringUtil.concatenate("Batch Class Name: ", batchClassName, " UserName: ", userName)); sendTextMailWithClasspathTemplate(metaData, mailTemplatePath, model, previousMailMessage); } else { LOGGER.error( "Either or all of the following values are null. Error notification mail cann't be sent. \n Subject,BatchClassName, UserName"); } }
From source file:org.wallride.service.PageService.java
@CacheEvict(value = WallRideCacheConfiguration.PAGE_CACHE, allEntries = true) public Page savePage(PageUpdateRequest request, AuthorizedUser authorizedUser) { postRepository.lock(request.getId()); Page page = pageRepository.findOneByIdAndLanguage(request.getId(), request.getLanguage()); LocalDateTime now = LocalDateTime.now(); String code = request.getCode(); if (code == null) { try {//from www . j a v a 2 s .c o m code = new CodeFormatter().parse(request.getTitle(), LocaleContextHolder.getLocale()); } catch (ParseException e) { throw new ServiceException(e); } } if (!StringUtils.hasText(code)) { if (!page.getStatus().equals(Post.Status.DRAFT)) { throw new EmptyCodeException(); } } if (!page.getStatus().equals(Post.Status.DRAFT)) { Post duplicate = postRepository.findOneByCodeAndLanguage(code, request.getLanguage()); if (duplicate != null && !duplicate.equals(page)) { throw new DuplicateCodeException(code); } } if (!page.getStatus().equals(Post.Status.DRAFT)) { page.setCode(code); page.setDraftedCode(null); } else { page.setCode(null); page.setDraftedCode(code); } Page parent = (request.getParentId() != null) ? entityManager.getReference(Page.class, request.getParentId()) : null; if (!(page.getParent() == null && parent == null) && !ObjectUtils.nullSafeEquals(page.getParent(), parent)) { pageRepository.shiftLftRgt(page.getLft(), page.getRgt()); pageRepository.shiftRgt(page.getRgt()); pageRepository.shiftLft(page.getRgt()); int rgt = 0; if (parent == null) { rgt = pageRepository.findMaxRgt(); rgt++; } else { rgt = parent.getRgt(); pageRepository.unshiftRgt(rgt); pageRepository.unshiftLft(rgt); } page.setLft(rgt); page.setRgt(rgt + 1); } page.setParent(parent); Media cover = null; if (request.getCoverId() != null) { cover = entityManager.getReference(Media.class, request.getCoverId()); } page.setCover(cover); page.setTitle(request.getTitle()); page.setBody(request.getBody()); // User author = null; // if (request.getAuthorId() != null) { // author = entityManager.getReference(User.class, request.getAuthorId()); // } // page.setAuthor(author); LocalDateTime date = request.getDate(); if (Post.Status.PUBLISHED.equals(page.getStatus())) { if (date == null) { date = now.truncatedTo(ChronoUnit.HOURS); } else if (date.isAfter(now)) { page.setStatus(Post.Status.SCHEDULED); } } page.setDate(date); page.setLanguage(request.getLanguage()); page.getCategories().clear(); SortedSet<Category> categories = new TreeSet<>(); for (long categoryId : request.getCategoryIds()) { categories.add(entityManager.getReference(Category.class, categoryId)); } page.setCategories(categories); page.getTags().clear(); Set<String> tagNames = StringUtils.commaDelimitedListToSet(request.getTags()); if (!CollectionUtils.isEmpty(tagNames)) { for (String tagName : tagNames) { Tag tag = tagRepository.findOneForUpdateByNameAndLanguage(tagName, request.getLanguage()); if (tag == null) { tag = new Tag(); tag.setName(tagName); tag.setLanguage(request.getLanguage()); page.setCreatedAt(now); page.setCreatedBy(authorizedUser.toString()); page.setUpdatedAt(now); page.setUpdatedBy(authorizedUser.toString()); tag = tagRepository.saveAndFlush(tag); } page.getTags().add(tag); } } page.getRelatedPosts().clear(); Set<Post> relatedPosts = new HashSet<>(); for (long relatedId : request.getRelatedPostIds()) { relatedPosts.add(entityManager.getReference(Post.class, relatedId)); } page.setRelatedToPosts(relatedPosts); Seo seo = new Seo(); seo.setTitle(request.getSeoTitle()); seo.setDescription(request.getSeoDescription()); seo.setKeywords(request.getSeoKeywords()); page.setSeo(seo); List<Media> medias = new ArrayList<>(); if (StringUtils.hasText(request.getBody())) { // Blog blog = blogService.getBlogById(Blog.DEFAULT_ID); String mediaUrlPrefix = wallRideProperties.getMediaUrlPrefix(); Pattern mediaUrlPattern = Pattern.compile(String.format("%s([0-9a-zA-Z\\-]+)", mediaUrlPrefix)); Matcher mediaUrlMatcher = mediaUrlPattern.matcher(request.getBody()); while (mediaUrlMatcher.find()) { Media media = mediaRepository.findOneById(mediaUrlMatcher.group(1)); medias.add(media); } } page.setMedias(medias); page.setUpdatedAt(now); page.setUpdatedBy(authorizedUser.toString()); SortedSet<CustomFieldValue> fieldValues = new TreeSet<>(); Map<CustomField, CustomFieldValue> valueMap = new LinkedHashMap<>(); for (CustomFieldValue value : page.getCustomFieldValues()) { valueMap.put(value.getCustomField(), value); } page.getCustomFieldValues().clear(); if (!CollectionUtils.isEmpty(request.getCustomFieldValues())) { for (CustomFieldValueEditForm valueForm : request.getCustomFieldValues()) { CustomField customField = entityManager.getReference(CustomField.class, valueForm.getCustomFieldId()); CustomFieldValue value = valueMap.get(customField); if (value == null) { value = new CustomFieldValue(); } value.setCustomField(customField); value.setPost(page); if (valueForm.getFieldType().equals(CustomField.FieldType.CHECKBOX)) { if (!ArrayUtils.isEmpty(valueForm.getTextValues())) { value.setTextValue(String.join(",", valueForm.getTextValues())); } else { value.setTextValue(null); } } else { value.setTextValue(valueForm.getTextValue()); } value.setStringValue(valueForm.getStringValue()); value.setNumberValue(valueForm.getNumberValue()); value.setDateValue(valueForm.getDateValue()); value.setDatetimeValue(valueForm.getDatetimeValue()); if (!value.isEmpty()) { fieldValues.add(value); } } } page.setCustomFieldValues(fieldValues); return pageRepository.save(page); }
From source file:com.devnexus.ting.core.service.impl.BusinessServiceImpl.java
@Transactional @Override/*from w w w.ja v a 2s. com*/ public Set<PresentationTag> processPresentationTags(String tagsAsText) { final Set<PresentationTag> presentationTagsToSave = new HashSet<>(); if (!tagsAsText.trim().isEmpty()) { Set<String> tags = StringUtils.commaDelimitedListToSet(tagsAsText); for (String tag : tags) { if (tag != null) { final String massagedTagName = tag.trim().toLowerCase(Locale.ENGLISH); PresentationTag tagFromDb = this.getPresentationTag(massagedTagName); if (tagFromDb == null) { PresentationTag presentationTag = new PresentationTag(); presentationTag.setName(massagedTagName); tagFromDb = this.savePresentationTag(presentationTag); } presentationTagsToSave.add(tagFromDb); } } } return presentationTagsToSave; }
From source file:org.kuali.student.myplan.course.controller.CourseSearchController.java
private void loadScheduledTerms(List<CourseSearchItem> courses, Set<String> subjectSet, CourseSearchForm form) { try {/*from ww w . jav a 2 s . c om*/ logger.info( "Start of method loadScheduledTerms of CourseSearchController:" + System.currentTimeMillis()); AcademicCalendarService atpService = getAcademicCalendarService(); List<TermInfo> terms = atpService.searchForTerms( QueryByCriteria.Builder.fromPredicates(equalIgnoreCase("query", PlanConstants.PUBLISHED)), CourseSearchConstants.CONTEXT_INFO); // For each term load all course offerings by subjectArea for (TermInfo term : terms) { Set<String> courseOfferingByTermSet = new HashSet<String>(); Map<String, ActivitySearchItem> coursesToActivitySearchItem = new LinkedHashMap<String, ActivitySearchItem>(); /*If the search term is ANY then we do regular search for course offeringIds otherwise we do a section search based on meeting times and days passed in the form.*/ if (CourseSearchConstants.SEARCH_TERM_ANY_ITEM.equals(form.getSearchTerm()) || !term.getId().equals(form.getSearchTerm())) { for (String subjectArea : subjectSet) { List<String> offeringIds = getCourseOfferingService() .getCourseOfferingIdsByTermAndSubjectArea(term.getId(), subjectArea, CourseSearchConstants.CONTEXT_INFO); courseOfferingByTermSet.addAll(offeringIds); } } else { AtpHelper.YearTerm yt = AtpHelper.atpToYearTerm(form.getSearchTerm()); for (String subjectArea : subjectSet) { SearchRequestInfo request = new SearchRequestInfo( CourseSearchConstants.COURSE_OFFERING_MEETING_TIME_SEARCH); request.addParam(CourseSearchConstants.COURSE_OFFERING_SEARCH_DAYS_PARAM, org.apache.commons.lang.StringUtils.join(form.getSelectedDays(), ":")); request.addParam(CourseSearchConstants.COURSE_OFFERING_SEARCH_START_TIME_PARAM, form.getStartTime()); request.addParam(CourseSearchConstants.COURSE_OFFERING_SEARCH_END_TIME_PARAM, form.getEndTime()); request.addParam(CourseSearchConstants.COURSE_OFFERING_SEARCH_TERM_PARAM, yt.getTermAsID()); request.addParam(CourseSearchConstants.COURSE_OFFERING_SEARCH_YEAR_PARAM, yt.getYearAsString()); request.addParam(CourseSearchConstants.COURSE_OFFERING_SEARCH_SUBJECT_PARAM, subjectArea.trim()); SearchResultInfo result = null; try { result = getCourseOfferingSearchService().search(request, CourseSearchConstants.CONTEXT_INFO); } catch (Exception e) { logger.error("Could not retrieve course offering by meeting times for subject: " + subjectArea + " for term: " + form.getSearchTerm(), e); } for (SearchResultRow row : result.getRows()) { String id = SearchHelper.getCellValue(row, "section.id"); String meetingTimes = SearchHelper.getCellValue(row, "section.meeting.days.and.times"); String subject = SearchHelper.getCellValue(row, "section.curriculum.abbreviation"); String number = SearchHelper.getCellValue(row, "section.course.number"); boolean primary = Boolean.valueOf(SearchHelper.getCellValue(row, "section.primary")); int secondaryCount = Integer .parseInt(SearchHelper.getCellValue(row, "section.secondary.count")); String primaryId = SearchHelper.getCellValue(row, "section.primary.id"); String secondaryActivityTypes = SearchHelper.getCellValue(row, "section.secondary.types"); String activityType = SearchHelper.getCellValue(row, "section.type"); String code = getCourseHelper().joinStringsByDelimiter(' ', subject.trim(), number.trim()); ActivitySearchItem activitySearchItem = coursesToActivitySearchItem.get(code) != null ? coursesToActivitySearchItem.get(code) : new ActivitySearchItem(); if (primary) { courseOfferingByTermSet.add(id); activitySearchItem.getPrimaryToSecondaries().put(id, secondaryCount > 0 ? new LinkedHashSet<String>() : null); if (secondaryCount > 0) { activitySearchItem.getPrimaryToSecondaryTypes().put(id, StringUtils.commaDelimitedListToSet(secondaryActivityTypes)); } } else { if (activitySearchItem.getPrimaryToSecondaries().get(primaryId) == null) { continue; } else { activitySearchItem.getPrimaryToSecondaries().get(primaryId).add(id); Set<String> secondaryTypes = activitySearchItem .getPrimaryToSecondaryTypesAvailable().get(primaryId); if (CollectionUtils.isEmpty(secondaryTypes)) { secondaryTypes = new HashSet<String>(); } secondaryTypes.add(activityType); activitySearchItem.getPrimaryToSecondaryTypesAvailable().put(primaryId, secondaryTypes); } } activitySearchItem.getMeetingTimes().add(meetingTimes); coursesToActivitySearchItem.put(code, activitySearchItem); } } } /*Filtering out the activities from courseOfferingByTermSet which do not have a complete course activity set.*/ for (String key : coursesToActivitySearchItem.keySet()) { ActivitySearchItem activitySearchItem = coursesToActivitySearchItem.get(key); if (!CollectionUtils.isEmpty(activitySearchItem.getPrimaryToSecondaryTypes())) { for (String primaryId : activitySearchItem.getPrimaryToSecondaryTypes().keySet()) { if (activitySearchItem.getPrimaryToSecondaryTypesAvailable().get(primaryId) == null) { courseOfferingByTermSet.remove(primaryId); } else if (activitySearchItem.getPrimaryToSecondaryTypesAvailable().get(primaryId) .size() != activitySearchItem.getPrimaryToSecondaryTypes().get(primaryId) .size()) { courseOfferingByTermSet.remove(primaryId); } } } } // Check to see if the course is offered for (CourseSearchItem item : courses) { if (getCourseHelper().isCourseInOfferingIds(item.getSubject(), item.getNumber(), courseOfferingByTermSet)) { item.addScheduledTerm(term.getName()); if (!CourseSearchConstants.SEARCH_TERM_ANY_ITEM.equals(form.getSearchTerm()) && term.getId().equals(form.getSearchTerm())) { String code = getCourseHelper().joinStringsByDelimiter(' ', item.getSubject().trim(), item.getNumber().trim()); ActivitySearchItem activitySearchItem = coursesToActivitySearchItem.get(code); if (activitySearchItem != null) { if (!CollectionUtils.isEmpty(activitySearchItem.getPrimaryToSecondaries())) { for (String primaryId : activitySearchItem.getPrimaryToSecondaries().keySet()) { if (!item.isSortToTop()) { item.setSortToTop(activitySearchItem.getPrimaryToSecondaries() .get(primaryId) == null || activitySearchItem.getPrimaryToSecondaries().get(primaryId) .size() > 0); } else { /*Since we only need to check if there is atLeast one match of primary and secondary for this particular course*/ break; } } item.getMeetingDaysAndTimes().addAll(activitySearchItem.getMeetingTimes()); item.setMeetingDayFacetKeys(getMeetingDataByTypeWithDelimiters( item.getMeetingDaysAndTimes(), MEETING_DAYS)); item.setMeetingTimeFacetKeys(getMeetingDataByTypeWithDelimiters( item.getMeetingDaysAndTimes(), MEETING_TIMES)); item.setMeetingDayTimeFacetKeys(getMeetingDataByTypeWithDelimiters( item.getMeetingDaysAndTimes(), MEETING_DAY_TIMES)); } } } } } } logger.info("End of method loadScheduledTerms of CourseSearchController:" + System.currentTimeMillis()); } catch (Exception e) { // TODO: Eating this error sucks logger.error("Web service call failed.", e); } }
From source file:it.smartcommunitylab.aac.controller.ResourceAccessController.java
/** * Check the access to the specified resource using the client app token header * @param token/*from w ww . j av a2s . c om*/ * @param resourceUri * @param request * @return */ @ApiOperation(value = "Check scope access for token") @RequestMapping(method = RequestMethod.GET, value = "/resources/access") @Deprecated public @ResponseBody Boolean canAccessResource(@RequestParam String scope, HttpServletRequest request) { try { String parsedToken = it.smartcommunitylab.aac.common.Utils.parseHeaderToken(request); OAuth2Authentication auth = resourceServerTokenServices.loadAuthentication(parsedToken); Collection<String> actualScope = auth.getOAuth2Request().getScope(); Collection<String> scopeSet = StringUtils.commaDelimitedListToSet(scope); if (actualScope != null && !actualScope.isEmpty() && actualScope.containsAll(scopeSet)) { return true; } } catch (AuthenticationException e) { logger.error("Error validating token: " + e.getMessage()); } return false; }
From source file:it.smartcommunitylab.aac.manager.ResourceManager.java
/** * @param apiKey// www. j a va2 s. co m * @return all the roles associated to the fixed service resources */ public Set<String> getResourceRoles(String apiKey) { ServiceDescriptor sd = serviceRepository.findByAPIKey(apiKey); if (sd != null) { Set<String> result = new HashSet<>(); List<Resource> resources = resourceRepository.findByService(sd); resources.forEach(r -> { if (r.getResourceParameter() == null && StringUtils.hasText(r.getRoles())) { result.addAll(StringUtils.commaDelimitedListToSet(r.getRoles()).stream() .map(rs -> Role.parse(rs).getRole()).collect(Collectors.toSet())); } }); return result; } return Collections.emptySet(); }