List of usage examples for com.google.common.collect Sets intersection
public static <E> SetView<E> intersection(final Set<E> set1, final Set<?> set2)
From source file:eu.eidas.node.service.ColleagueRequestServlet.java
/** * Post method//from w w w .jav a2 s.c o m * * @param request * @param response * @throws ServletException * @throws IOException */ @Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { PropertiesUtil.checkProxyServiceActive(); // Obtaining the assertion consumer url from SPRING context ServiceControllerService controllerService = (ServiceControllerService) getApplicationContext() .getBean(NodeBeanNames.EIDAS_SERVICE_CONTROLLER.toString()); CorrelationMap<StoredAuthenticationRequest> requestCorrelationMap = controllerService .getProxyServiceRequestCorrelationMap(); // Prevent cookies from being accessed through client-side script WITHOUT renew of session. setHTTPOnlyHeaderToSession(false, request, response); SessionHolder.setId(request.getSession()); request.getSession().setAttribute(EidasParameterKeys.SAML_PHASE.toString(), EIDASValues.EIDAS_SERVICE_REQUEST); // Obtains the parameters from httpRequest WebRequest webRequest = new IncomingRequest(request); // Validating the only HTTP parameter: SAMLRequest. String samlRequest = webRequest.getEncodedLastParameterValue(EidasParameterKeys.SAML_REQUEST); NodeParameterValidator.paramName(EidasParameterKeys.SAML_REQUEST).paramValue(samlRequest) .eidasError(EidasErrorKey.COLLEAGUE_REQ_INVALID_SAML).validate(); // Storing the Remote Address and Host for auditing proposes. String remoteIpAddress = webRequest.getRemoteIpAddress(); // Validating the optional HTTP Parameter relayState. String relayState = webRequest.getEncodedLastParameterValue(NodeParameterNames.RELAY_STATE.toString()); LOG.debug("Saving ProxyService relay state. " + relayState); // Obtaining the authData IAuthenticationRequest authData = controllerService.getProxyService() .processAuthenticationRequest(webRequest, relayState, requestCorrelationMap, remoteIpAddress); if (StringUtils.isNotBlank(relayState)) { // RelayState's HTTP Parameter is optional! NodeParameterValidator.paramName(NodeParameterNames.RELAY_STATE).paramValue(relayState) .eidasError(EidasErrorKey.SPROVIDER_SELECTOR_INVALID_RELAY_STATE).validate(); } // Validating the personal attribute list IPersonalAttributeList persAttrList = PersonalAttributeList.copyOf(authData.getRequestedAttributes()); List<PersonalAttribute> attrList = new ArrayList<PersonalAttribute>(); boolean hasEidasAttributes = !Sets.intersection(EidasSpec.REGISTRY.getAttributes(), authData.getRequestedAttributes().getDefinitions()).isEmpty(); //ImmutablePersonalAttributeSet for (PersonalAttribute pa : persAttrList) { attrList.add(pa); } String redirectUrl = authData.getAssertionConsumerServiceURL(); LOG.debug("RedirectUrl: " + redirectUrl); // Validating the citizenConsentUrl NodeParameterValidator.paramName(EidasParameterKeys.EIDAS_SERVICE_REDIRECT_URL) .paramValue(controllerService.getCitizenConsentUrl()) .eidasError(EidasErrorKey.COLLEAGUE_REQ_INVALID_DEST_URL).validate(); LOG.debug("sessionId is on cookies () or fromURL ", request.isRequestedSessionIdFromCookie(), request.isRequestedSessionIdFromURL()); request.setAttribute(NodeParameterNames.SAML_TOKEN_FAIL.toString(), controllerService.getProxyService().generateSamlTokenFail(authData, EIDASStatusCode.REQUESTER_URI.toString(), EidasErrorKey.CITIZEN_RESPONSE_MANDATORY, remoteIpAddress)); request.setAttribute(EidasParameterKeys.SP_ID.toString(), authData.getProviderName()); if (authData instanceof IStorkAuthenticationRequest) { request.setAttribute(NodeParameterNames.QAA_LEVEL.toString(), ((IStorkAuthenticationRequest) authData).getQaa()); } request.setAttribute(NodeParameterNames.LOA_VALUE.toString(), EidasAttributesUtil.getUserFriendlyLoa(authData.getLevelOfAssurance())); request.setAttribute(NodeParameterNames.CITIZEN_CONSENT_URL.toString(), encodeURL(controllerService.getCitizenConsentUrl(), response)); // Correct URl redirect cookie implementation request.setAttribute(NodeParameterNames.ATTR_LIST.toString(), attrList); request.setAttribute(NodeParameterNames.REDIRECT_URL.toString(), encodeURL(redirectUrl, response));// Correct URl redirect cookie implementation request.setAttribute(NodeParameterNames.EIDAS_ATTRIBUTES_PARAM.toString(), Boolean.valueOf(hasEidasAttributes)); request.setAttribute(NodeParameterNames.REQUEST_ID.toString(), authData.getId()); request.setAttribute(NodeParameterNames.COLLEAGUE_REQUEST.toString(), authData); NodeViewNames forwardUrl; if (controllerService.isAskConsentType()) { forwardUrl = NodeViewNames.EIDAS_SERVICE_PRESENT_CONSENT; } else { forwardUrl = NodeViewNames.EIDAS_SERVICE_NO_CONSENT; } RequestDispatcher dispatcher = request.getRequestDispatcher(forwardUrl.toString()); dispatcher.forward(request, response); }
From source file:org.onlab.graph.SuurballeGraphSearch.java
private boolean isDisjoint(Path<V, E> a, Path<V, E> b) { return Sets.intersection(vertices(a), vertices(b)).isEmpty(); }
From source file:no.ssb.vtl.script.operations.FoldOperation.java
/** * Create indices used by the fold operation. * * @param structure the new structure./*ww w.j a v a 2 s. c o m*/ */ private void computeIndices(DataStructure structure) { ImmutableSet<String> originalColumns = ImmutableSet.copyOf(getChild().getDataStructure().keySet()); ImmutableSet<String> columns = ImmutableSet.copyOf(structure.keySet()); // Indices of the common columns. copyIndices = Sets.intersection(columns, originalColumns).stream() .mapToInt(originalColumns.asList()::indexOf).toArray(); elementIndices = Sets.intersection(elements, originalColumns).stream() .mapToInt(originalColumns.asList()::indexOf).toArray(); elementNames = elements.asList().toArray(new String[] {}); measureIndex = columns.asList().indexOf(measure); dimensionIndex = columns.asList().indexOf(dimension); size = columns.size(); }
From source file:org.eclipse.sw360.moderation.db.ModerationRequestGenerator.java
protected void dealWithStringKeyedMap(U field) { Map<String, Object> addedMap = new HashMap<>(); addedMap.putAll(nullToEmptyMap((Map<String, Object>) updateDocument.getFieldValue(field))); Map<String, Object> actualMap = (Map<String, Object>) actualDocument.getFieldValue(field); for (String key : actualMap.keySet()) { addedMap.remove(key);/*from w w w.j a v a2 s. c om*/ } Map<String, Object> deletedMap = new HashMap<>(); deletedMap.putAll(nullToEmptyMap((Map<String, Object>) actualDocument.getFieldValue(field))); Map<String, Object> updateMap = (Map<String, Object>) updateDocument.getFieldValue(field); for (String key : updateMap.keySet()) { deletedMap.remove(key); } //determine changes in common linkedProjects Set<String> commonKeys = Sets.intersection(updateMap.keySet(), actualMap.keySet()); for (String id : commonKeys) { Object actual = actualMap.get(id); Object update = updateMap.get(id); if (!actual.equals(update)) { addedMap.put(id, update); deletedMap.put(id, actual); } } if (!addedMap.isEmpty()) { documentAdditions.setFieldValue(field, addedMap); } if (!deletedMap.isEmpty()) { documentDeletions.setFieldValue(field, deletedMap); } }
From source file:io.druid.data.input.impl.DimensionsSpec.java
private void verify(List<SpatialDimensionSchema> spatialDimensions) { List<String> dimNames = getDimensionNames(); Preconditions.checkArgument(/* w ww . j a v a2 s . c o m*/ Sets.intersection(this.dimensionExclusions, Sets.newHashSet(dimNames)).isEmpty(), "dimensions and dimensions exclusions cannot overlap"); ParserUtils.validateFields(dimNames); ParserUtils.validateFields(dimensionExclusions); List<String> spatialDimNames = Lists.transform(spatialDimensions, new Function<SpatialDimensionSchema, String>() { @Override public String apply(SpatialDimensionSchema input) { return input.getDimName(); } }); // Don't allow duplicates between main list and deprecated spatial list ParserUtils.validateFields(Iterables.concat(dimNames, spatialDimNames)); }
From source file:com.getbase.android.schema.Schemas.java
private ImmutableMap<String, ImmutableList<? extends TableDefinitionOperation>> merge( ImmutableMap<String, ImmutableList<? extends TableDefinitionOperation>> schema, ImmutableMap<String, ImmutableList<? extends TableDowngradeOperation>> downgrades, int targetRevision) { ImmutableMap.Builder<String, ImmutableList<? extends TableDefinitionOperation>> builder = ImmutableMap .builder();// w w w .jav a 2 s . c om for (String unchangedTable : Sets.difference(schema.keySet(), downgrades.keySet())) { builder.put(unchangedTable, schema.get(unchangedTable)); } for (String alteredTable : Sets.intersection(downgrades.keySet(), schema.keySet())) { ImmutableList<? extends TableDefinitionOperation> mergedOperations = MERGER.merge( schema.get(alteredTable), downgrades.get(alteredTable), alteredTable, targetRevision, mRevisionDescriptionBuilder); if (!mergedOperations.isEmpty()) { builder.put(alteredTable, mergedOperations); } } for (String addedTable : Sets.difference(downgrades.keySet(), schema.keySet())) { builder.put(addedTable, CONVERTER.convert(downgrades.get(addedTable), addedTable, targetRevision, mRevisionDescriptionBuilder)); } return builder.build(); }
From source file:org.eclipse.sirius.business.internal.movida.DynamicVSMLoader.java
/** * {@inheritDoc}// w w w .ja va2 s . c o m */ @Override public synchronized void registryChanged(ViewpointRegistry reg, Set<URI> removed, Set<URI> added, Set<URI> changed) { assert reg == this.registry; SetView<URI> absentRequirements = Sets.intersection(requiredViewpoints, removed); if (!absentRequirements.isEmpty()) { if (errorHandler != null) { errorHandler.run(); } else { throw new IllegalStateException("The required viewpoints " //$NON-NLS-1$ + Joiner.on(", ").join(absentRequirements) + " are not available anymore."); //$NON-NLS-1$//$NON-NLS-2$ } } refresh(); }
From source file:eu.lp0.cursus.scoring.scores.impl.GenericRacePointsData.java
protected int getPointsForNoLaps(Pilot pilot, Race race) { if (!pilot.getEvents().contains(pilot) && Sets .intersection(lazyEventRaces.get().get(race.getEvent()), pilot.getRaces().keySet()).isEmpty()) { return getNonAttendeeFleetSize(race) + 1; } else {/*from w ww . j av a 2 s. c om*/ return getFleetSize(race) + 1; } }
From source file:grakn.core.graql.gremlin.GraqlTraversal.java
private GraphTraversal<Vertex, Map<String, Element>> applyFragments(TransactionOLTP tx, Set<Variable> vars, ImmutableList<Fragment> fragmentList, GraphTraversal<Vertex, ? extends Element> traversal) { Set<Variable> foundVars = new HashSet<>(); // Apply fragments in order into one single traversal Variable currentName = null;//from w w w. j av a 2 s . c o m for (Fragment fragment : fragmentList) { // Apply fragment to traversal fragment.applyTraversal(traversal, tx, foundVars, currentName); currentName = fragment.end() != null ? fragment.end() : fragment.start(); } // Select all the variable names return selectVars(traversal, Sets.intersection(vars, foundVars)); }
From source file:org.apache.shindig.gadgets.rewrite.lexer.DefaultContentRewriter.java
private boolean rewrite(GadgetSpec spec, Uri source, MutableContent mc, String mimeType, Writer w) { // Dont rewrite content if the spec is unavailable if (spec == null) { return false; }//from w ww.j ava 2 s .com ContentRewriterFeature rewriterFeature = new ContentRewriterFeature(spec, includeUrls, excludeUrls, expires, includeTags); if (!rewriterFeature.isRewriteEnabled()) { return false; } if (isHTML(mimeType)) { Map<String, HtmlTagTransformer> transformerMap = Maps.newHashMap(); if (getProxyUrl() != null) { LinkRewriter linkRewriter = createLinkRewriter(spec, rewriterFeature); LinkingTagRewriter rewriter = new LinkingTagRewriter(linkRewriter, source); Set<String> toProcess = Sets.intersection(rewriter.getSupportedTags(), rewriterFeature.getIncludedTags()); for (String tag : toProcess) { transformerMap.put(tag, rewriter); } if (rewriterFeature.getIncludedTags().contains("style")) { transformerMap.put("style", new StyleTagRewriter(source, linkRewriter)); } } if (getConcatUrl() != null && rewriterFeature.getIncludedTags().contains("script")) { transformerMap.put("script", new JavascriptTagMerger(spec, rewriterFeature, getConcatUrl(), source)); } HtmlRewriter.rewrite(new StringReader(mc.getContent()), source, transformerMap, w); return true; } else if (isCSS(mimeType)) { if (getProxyUrl() != null) { CssRewriter.rewrite(new StringReader(mc.getContent()), source, createLinkRewriter(spec, rewriterFeature), w, false); return true; } else { return false; } } return false; }