private Option<TemporaryWebAttachmentsMonitor> getMonitorFromSession(final Option<HttpSession> sessionOption) { return sessionOption.flatMap(session -> Option.option((TemporaryWebAttachmentsMonitor) session.getAttribute(SessionKeys.TEMP_WEB_ATTACHMENTS))); }
@Override public Option<HipChatLinkId> getHipChatLinkId() { return hipChatLinkProvider.getDefaultLink().flatMap(new Function<HipChatLink, Option<HipChatLinkId>>() { @Override public Option<HipChatLinkId> apply(HipChatLink link) { return Option.some(link.getId()); } }); }
private Option<ApplicationRole> toApplicationRole(final String applicationId) { return toApplicationKey(applicationId).flatMap(applicationRoleManager::getRole); }
@Override public Option<SessionData> apply(HipChatUserId hipChatUserId) { return hipChatAOUserManager.getByUserKey(user).flatMap(new Function<AOHipChatUser, Option<SessionData>>() { @Override public Option<SessionData> apply(AOHipChatUser aoHipChatUser) { return Option.some( new SessionData( aoHipChatUser.getHipChatLink().getGroupName(), aoHipChatUser.getHipChatUserName(), aoHipChatUser.getHipChatLink().getApiUrl())); } }); } });
@Override public Option<User> load(final String idOrEmailAddress) { return hipChatLinkProvider.getDefaultLink() .flatMap(new Function<HipChatLink, Option<User>>() { @Override public Option<User> apply(HipChatLink link) { return link.getAddonApi() .users() .getUser(idOrEmailAddress) .claim() .option(); } }); } },
private Option<ErrorCollection> validateAvatar(final ApplicationUser user, final IssueTypeUpdateInput issueTypeCreateInput) { return issueTypeCreateInput.getAvatarId().flatMap(new Function<Long, Option<ErrorCollection>>() { @Override public Option<ErrorCollection> apply(final Long avatarId) { final Avatar avatar = avatarService.getAvatar(user, avatarId); if (avatar == null) { return errorCollection("avatarId", i18n.getText("admin.errors.project.no.avatar.with.id"), VALIDATION_FAILED); } return none(); } }); }
private boolean hasSingleAnnotation(final Method method) { return option(method.getAnnotation(ActionViewData.class)).flatMap(new Function<ActionViewData, Option<String>>() { @Override public Option<String> apply(final ActionViewData input) { return option(input.value()); } }).flatMap(new Function<String, Option<Boolean>>() { @Override public Option<Boolean> apply(@Nullable final String value) { return option(actionResult.equals(value) || "*".equals(value)); } }).getOrElse(false); }
@Override public Option<DedicatedRoom> getDedicatedRoom(final Issue issue) { return hipChatService.getApiUrl().flatMap(new Function<String, Option<DedicatedRoom>>() { @Override public Option<DedicatedRoom> apply(final String apiUrl) { return dedicatedRoomDAO.getDedicatedRoom(issue.getId()) .map(new Function<DedicatedRoom, DedicatedRoom>() { @Override public DedicatedRoom apply(DedicatedRoom room) { return DedicatedRoomDTO.builder(room) .setApiUrl(domainManager.getDefaultDomain()) .build(); } }); } }); }
public Option<String> getHttpHeaderFromLastRequest(final String name) { Predicate<String> equalsIgnoreCase = headerName -> headerName.equalsIgnoreCase(name); Option<String> maybeHeaderName = Iterables.findFirst(this.headersFromLastRequest.keySet(), equalsIgnoreCase); return maybeHeaderName.flatMap(headerName -> Option.option(headersFromLastRequest.get(headerName))); }
private boolean hasMultiAnnotation(final Method method) { return option(method.getAnnotation(ActionViewDataMappings.class)).flatMap(new Function<ActionViewDataMappings, Option<String[]>>() { @Override public Option<String[]> apply(final ActionViewDataMappings input) { return option(input.value()); } }).flatMap(new Function<String[], Option<Boolean>>() { @Override public Option<Boolean> apply(final String[] input) { for (String s : input) { if (actionResult.equals(s)) { return option(true); } } return option(false); } }).getOrElse(false); } }
@Nullable // when we figure out how to get a link to a room this will need to be passed the room... private URI getRootURI() { return hipChat.getApiUrl().flatMap(new Function<String, Option<URI>>() { @Override public Option<URI> apply(@Nullable String apiUrlString) { try { URI api = new URI(apiUrlString); return Option.some(new URI(api.getScheme(), api.getHost(), "/chat", null)); } catch (URISyntaxException e) { return Option.none(); } } }).getOrNull(); } }
@Override @Nonnull public Option<String> getHelpSpace(@Nonnull final ApplicationKey applicationKey) { return applicationManager.getApplication(applicationKey) .flatMap(app -> featureManager.isOnDemand() ? app.getProductHelpCloudSpaceURI() : app.getProductHelpServerSpaceURI()) .map(uri -> uri.toString()); }
private Option<PermissionHolderType> getActorType(final PermissionGrantBean grantBean) { return Option.option(grantBean.getHolder()).flatMap(new Function<PermissionHolderBean, Option<PermissionHolderType>>() { @Override public Option<PermissionHolderType> apply(final PermissionHolderBean holder) { return option(holder.getType()).map(new Function<String, PermissionHolderType>() { @Override public PermissionHolderType apply(final String holderType) { return PermissionHolderTypeMapping.fromRestType(holderType).orElse(permissionHolderType(holderType, holder.getParameter())); } }); } }); } }
return applications.flatMap(new Function<Iterable<Application>, Option<? extends Application>>()
/** * Stores a T against the given issue id. It won't do anything if the given value is None * * @param issueId the issueId to store against * @param key the key for the issue property to store value as * @param value the value to store * @throws java.lang.IllegalArgumentException if value is null or can not be serialised * @throws java.lang.IllegalStateException if an error is thrown during serialisation or serialisation fails */ public void put(final long issueId, final String key, @Nonnull final Option<T> value) { checkNotNull(value, "value is null. Pass an option.none() instead."); final Option<String> valueAsJson = value.flatMap(new Function<T, Option<String>>() { @Override public Option<String> apply(T input) { try { return Option.option(OBJECT_MAPPER.writeValueAsString(input)); } catch (IOException e) { log.error("Error serialising value to JSON: " + input, e); return Option.none(); } } }); if (valueAsJson.isEmpty()) { log.error("Error serialising value to JSON: " + value.getOrNull()); throw new IllegalStateException("Value could not be serialised to JSON."); } //TODO: remove call to deprecated method: https://jira.atlassian.com/browse/HC-10752 jsonEntityPropertyManager.put(entityName, issueId, key, valueAsJson.get()); }
/** * To support old temporary attachments we will use TemporaryAttachmentsMonitor */ private boolean allAttachmentExistsInOldMonitor(final List<String> temporaryAttachmentEntryIds) { //noinspection deprecation return Option.option(temporaryAttachmentsMonitorLocator.get(false)).flatMap(new Function<TemporaryAttachmentsMonitor, Option<Boolean>>() { @Override public Option<Boolean> apply(@Nullable final TemporaryAttachmentsMonitor monitor) { return convertToLongIds(temporaryAttachmentEntryIds).map(new Function<List<Long>, Boolean>() { @Override public Boolean apply(@Nullable final List<Long> longIds) { return allAttachmentExistsInOldMonitor(longIds, monitor); } }); } }).getOrElse(false); }
@Override public Option<String> getUrl(final Map<String, Object> context) { if (urlProvider != null) { return SafePluginPointAccess.call(new Callable<Option<String>>() { @Override public Option<String> call() throws Exception { return urlProvider.getUrl(ReportModuleDescriptorImpl.this, context); } }).flatMap(Functions.<Option<String>>identity()); } Project project = (Project) context.get("project"); return Option.option(MessageFormat.format(PARAMS_PATTERN, url, project.getId(), project.getName(), getCompleteKey())); }
public static PluginInfo addFailures(final PluginInfo pluginInfo, final Throwable cause) { final List<String> copiedCauses = copyPreviousCauses(pluginInfo); Option<List<String>> capturedCauses = option(cause).flatMap(CAPTURE_CAUSES); if (capturedCauses.isDefined()) { copiedCauses.addAll(capturedCauses.get()); } return new PluginInfo(pluginInfo.pluginKey, pluginInfo.pluginName, pluginInfo.pluginArtifact, option(copiedCauses), pluginInfo.dependencies); }
public String getPostSetupRedirect(Option<String> origin) throws URISyntaxException { final Option<Application> applicationWithPostInstall = getApplicationWithPostInstall(); final Option<URI> postInstallUri = applicationWithPostInstall.flatMap(new Function<Application, Option<URI>>() { @Override public Option<URI> apply(final Application input) { return input.getPostInstallURI(); } }); final String rawUri = postInstallUri.getOrElse(getDefaultPostSetupURI()).toASCIIString(); final String redirectWithOrigin = origin.fold(Suppliers.ofInstance(rawUri), new Function<String, String>() { @Override public String apply(final String input) { return addParameterToURI(rawUri, input); } }); return redirectWithOrigin; }
private boolean isAllowedToPickAvatar(final String ownerId, Avatar.Type type) { final ApplicationUser user = authenticationContext.getUser(); if (type == Avatar.Type.USER) { return avatarManager.hasPermissionToEdit(user, userUtil.getUserByKey(ownerId)); } else { final Option<TypeAvatarService> avatars = Option.option(universalAvatarsService.getAvatars(type)); final Option<Boolean> canCreateAvatarOption = avatars.flatMap(new Function<TypeAvatarService, Option<Boolean>>() { @Override public Option<Boolean> apply(final TypeAvatarService typeAvatarService) { return Option.some(typeAvatarService.canUserCreateAvatar(user, ownerId)); } }); return canCreateAvatarOption.getOrElse(Boolean.FALSE); } }