List of usage examples for com.google.common.collect ArrayListMultimap create
public static <K, V> ArrayListMultimap<K, V> create()
From source file:org.zanata.security.permission.PermissionProvider.java
public final Multimap<String, PermissionGranter> getPermissionGranters() { Class<? extends PermissionProvider> clazz = getClass(); Multimap<String, PermissionGranter> permissionGrantMethods = ArrayListMultimap.create(); for (Method m : clazz.getDeclaredMethods()) { if (m.isAnnotationPresent(GrantsPermission.class)) { PermissionGranter granter = new PermissionGranter(m); granter.validate();/*from ww w . j ava 2 s . co m*/ if (granter.getEvaluatedActions().size() == 0) { // This granter is to apply to every action permissionGrantMethods.put(ALL_ACTION_GRANTER, granter); } else { for (String action : granter.getEvaluatedActions()) { permissionGrantMethods.put(action, granter); } } } } return permissionGrantMethods; }
From source file:springfox.documentation.spring.web.scanners.ApiListingReferenceScanner.java
public ApiListingReferenceScanResult scan(DocumentationContext context) { LOG.info("Scanning for api listing references"); ArrayListMultimap<ResourceGroup, RequestMappingContext> resourceGroupRequestMappings = ArrayListMultimap .create();/*from w w w. ja v a2 s.c o m*/ ApiSelector selector = context.getApiSelector(); Iterable<RequestHandler> matchingHandlers = from(context.getRequestHandlers()) .filter(selector.getRequestHandlerSelector()); for (RequestHandler handler : matchingHandlers) { ResourceGroup resourceGroup = new ResourceGroup(handler.groupName(), handler.declaringClass(), 0); RequestMappingContext requestMappingContext = new RequestMappingContext(context, handler); resourceGroupRequestMappings.put(resourceGroup, requestMappingContext); } return new ApiListingReferenceScanResult(asMap(resourceGroupRequestMappings)); }
From source file:com.opengamma.collect.io.PropertiesFile.java
private static PropertySet parse(CharSource source) throws IOException { ImmutableList<String> lines = source.readLines(); Multimap<String, String> parsed = ArrayListMultimap.create(); int lineNum = 0; for (String line : lines) { lineNum++;//from w ww . j ava2 s.c om line = line.trim(); if (line.length() == 0 || line.startsWith("#") || line.startsWith(";")) { continue; } int equalsPosition = line.indexOf('='); if (equalsPosition < 0) { throw new IllegalArgumentException( "Invalid properties file, expected key=value property, line " + lineNum); } String key = line.substring(0, equalsPosition).trim(); String value = line.substring(equalsPosition + 1).trim(); if (key.length() == 0) { throw new IllegalArgumentException("Invalid properties file, empty key, line " + lineNum); } parsed.put(key, value); } return PropertySet.of(parsed); }
From source file:org.sonar.api.batch.debt.internal.DefaultDebtModel.java
public DefaultDebtModel() { characteristicsByKey = ArrayListMultimap.create(); }
From source file:com.android.build.gradle.managed.adaptor.ShaderOptionsAdaptor.java
@Override public ListMultimap<String, String> getScopedGlslcArgs() { ModelMap<ScopedShaderOptions> scopedArgsMap = shaderOptions.getScopedArgs(); ListMultimap<String, String> map = ArrayListMultimap.create(); for (String key : scopedArgsMap.keySet()) { ScopedShaderOptions scopedArgs = scopedArgsMap.get(key); map.putAll(key, scopedArgs.getGlslcArgs()); }// www . j av a 2 s . c o m return map; }
From source file:org.apache.ctakes.temporal.ae.feature.PredicateArgumentExtractor.java
public PredicateArgumentExtractor(JCas jCas) { this.tokenPredicateMap = ArrayListMultimap.create(); for (Predicate predicate : JCasUtil.select(jCas, Predicate.class)) { for (BaseToken token : JCasUtil.selectCovered(jCas, BaseToken.class, predicate)) { this.tokenPredicateMap.put(token, predicate); }/*from www.j a v a 2s. c o m*/ } this.tokenArgumentMap = ArrayListMultimap.create(); for (SemanticArgument argument : JCasUtil.select(jCas, SemanticArgument.class)) { for (BaseToken token : JCasUtil.selectCovered(jCas, BaseToken.class, argument)) { this.tokenArgumentMap.put(token, argument); } } }
From source file:org.franca.tools.contracts.tracevalidator.search.regexp.RegexpBuilder.java
/** * Constructs the regular expression that accepts the traces matching the * given contract./*from ww w . j av a 2s . co m*/ * * @param contract * the Franca contract for the interface * @return the regular expression associated to the contract */ public static RegexpElement buildRegexp(FContract contract) { Set<FState> statesVisited = new HashSet<FState>(); List<FState> statesToVisit = new LinkedList<FState>(); FState initial = contract.getStateGraph().getInitial(); statesToVisit.add(initial); Map<FState, Multimap<FState, TraceElement>> traceElementMap = new HashMap<FState, Multimap<FState, TraceElement>>(); Set<TraceElement> traceElements = new HashSet<TraceElement>(); int stateNum = contract.getStateGraph().getStates().size(); List<FState> states = contract.getStateGraph().getStates(); RegexpElement[][][] regexpArray = new RegexpElement[stateNum][stateNum][stateNum]; // Create trace elements between the states of the contract's state // machine. The state machine must be strongly connected while (!statesToVisit.isEmpty()) { FState state = statesToVisit.remove(0); statesVisited.add(state); Multimap<FState, TraceElement> innerMap = ArrayListMultimap.create(); for (FTransition transition : state.getTransitions()) { TraceElement traceElement = new FrancaTraceElement(state, transition); traceElements.add(traceElement); innerMap.put(transition.getTo(), traceElement); if (!statesVisited.contains(transition.getTo())) { statesToVisit.add(transition.getTo()); } } traceElementMap.put(state, innerMap); } for (int i = 0; i < stateNum; i++) { for (int j = 0; j < stateNum; j++) { Collection<TraceElement> elements = traceElementMap.get(states.get(i)).get(states.get(j)); if (elements != null) { Collection<RegexpElement> regexpElements = new ArrayList<RegexpElement>(); for (TraceElement e : elements) { regexpElements.add(new SingleElement(e)); } if (i != j) { regexpArray[i][j][0] = new OrElement(regexpElements.toArray(new RegexpElement[0])); } else { regexpArray[i][j][0] = RegexpHelper.union( new OrElement(regexpElements.toArray(new RegexpElement[0])), EmptyElement.INSTANCE); } } else { regexpArray[i][j][0] = NullElement.INSTANCE; } } } if (states.size() > 0) { for (int k = 1; k < stateNum; k++) { for (int i = 0; i < stateNum; i++) { for (int j = 0; j < stateNum; j++) { regexpArray[i][j][k] = RegexpHelper.union(regexpArray[i][j][k - 1], RegexpHelper.and( RegexpHelper.and(regexpArray[i][k][k - 1], RegexpHelper.closure(regexpArray[k][k][k - 1])), regexpArray[k][j][k - 1])); } } } } RegexpElement result = regexpArray[0][0][stateNum - 1]; if (states.size() > 1) { for (int i = 1; i < stateNum; i++) { result = RegexpHelper.union(result, regexpArray[0][i][stateNum - 1]); } } //All states are accepting? return result; }
From source file:org.sonar.core.issue.tracking.AbstractTracker.java
protected void match(Tracking<RAW, BASE> tracking, Function<Trackable, SearchKey> searchKeyFactory) { if (tracking.isComplete()) { return;//from www .j a va2s .c o m } Multimap<SearchKey, BASE> baseSearch = ArrayListMultimap.create(); for (BASE base : tracking.getUnmatchedBases()) { baseSearch.put(searchKeyFactory.apply(base), base); } for (RAW raw : tracking.getUnmatchedRaws()) { SearchKey rawKey = searchKeyFactory.apply(raw); Collection<BASE> bases = baseSearch.get(rawKey); bases.stream().sorted( comparing(this::statusRank).reversed().thenComparing(comparing(Trackable::getCreationDate))) .findFirst().ifPresent(match -> { tracking.match(raw, match); baseSearch.remove(rawKey, match); }); } }
From source file:rx.codegen.internal.util.CodegenUtil.java
private static ListMultimap<String, ExecutableElement> initObjectMethodsByName(TypeElement objectTypeElement) { final ListMultimap<String, ExecutableElement> ret = ArrayListMultimap.create(); for (ExecutableElement method : ElementFilter.methodsIn(objectTypeElement.getEnclosedElements())) { ret.put(method.getSimpleName().toString(), method); }//from www .j av a 2 s.com return ret; }
From source file:pt.iscte.xdiagram.provider.internal.handlers.ContainsHandler.java
public ContainsHandler() { references = ArrayListMultimap.create(); owners = Maps.newHashMap(); }