當前位置: 首頁>>代碼示例>>Java>>正文


Java Multimap.keySet方法代碼示例

本文整理匯總了Java中com.google.common.collect.Multimap.keySet方法的典型用法代碼示例。如果您正苦於以下問題:Java Multimap.keySet方法的具體用法?Java Multimap.keySet怎麽用?Java Multimap.keySet使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在com.google.common.collect.Multimap的用法示例。


在下文中一共展示了Multimap.keySet方法的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: buildRecursively

import com.google.common.collect.Multimap; //導入方法依賴的package包/類
private List<ConsumerProvidedTaskSelector> buildRecursively(GradleProject project) {
    Multimap<String, String> aggregatedTasks = ArrayListMultimap.create();

    collectTasks(project, aggregatedTasks);

    List<ConsumerProvidedTaskSelector> selectors = Lists.newArrayList();
    for (String selectorName : aggregatedTasks.keySet()) {
        SortedSet<String> selectorTasks = Sets.newTreeSet(new TaskNameComparator());
        selectorTasks.addAll(aggregatedTasks.get(selectorName));
        selectors.add(new ConsumerProvidedTaskSelector().
                setName(selectorName).
                setTaskNames(selectorTasks).
                setDescription(project.getParent() != null
                        ? String.format("%s:%s task selector", project.getPath(), selectorName)
                        : String.format("%s task selector", selectorName)).
                setDisplayName(String.format("%s in %s and subprojects.", selectorName, project.getName())));
    }
    return selectors;
}
 
開發者ID:lxxlxx888,項目名稱:Reer,代碼行數:20,代碼來源:BuildInvocationsConverter.java

示例2: extractDependencies

import com.google.common.collect.Multimap; //導入方法依賴的package包/類
/** Looks for dependencies contained in all configurations to remove them from multimap and return as result. */
private List<IdeDependencyKey<?, Dependency>> extractDependencies(Multimap<IdeDependencyKey<?, Dependency>, String> dependenciesToConfigs,
                        Collection<String> configurations, Collection<String> minusConfigurations) {
    List<IdeDependencyKey<?, Dependency>> deps = new ArrayList<IdeDependencyKey<?, Dependency>>();
    List<IdeDependencyKey<?, Dependency>> minusDeps = new ArrayList<IdeDependencyKey<?, Dependency>>();
    for (IdeDependencyKey<?, Dependency> dependencyKey : dependenciesToConfigs.keySet()) {
        if (dependenciesToConfigs.get(dependencyKey).containsAll(configurations)) {
            boolean isInMinus = false;
            for (String minusConfiguration : minusConfigurations) {
                if (dependenciesToConfigs.get(dependencyKey).contains(minusConfiguration)) {
                    isInMinus = true;
                    break;
                }
            }
            if (!isInMinus) {
                deps.add(dependencyKey);
            } else {
                minusDeps.add(dependencyKey);
            }
        }
    }
    for (IdeDependencyKey<?, Dependency> key : Iterables.concat(deps, minusDeps)) {
        dependenciesToConfigs.removeAll(key);
    }
    return deps;
}
 
開發者ID:lxxlxx888,項目名稱:Reer,代碼行數:27,代碼來源:IdeaDependenciesProvider.java

示例3: sortByListSize

import com.google.common.collect.Multimap; //導入方法依賴的package包/類
/** Sorts a {@link Multimap} based on the length of each value list */
static public <E extends Comparable<E>, T extends Comparable<T>> TreeMap<T, Collection<E>> sortByListSize(
		Multimap<T, E> multimap) {

	Comparator<T> comparator = new Comparator<T>() {
		@Override
		public int compare(T t1, T t2) {
			int s1 = multimap.get(t1).size();
			int s2 = multimap.get(t2).size();
			if (s2 != s1)
				return s2 - s1;
			return t1.compareTo(t2);
		}
	};
	TreeMap<T, Collection<E>> sortedMap = new TreeMap<>(comparator);
	for (T key : multimap.keySet()) {
		Collection<E> elems = multimap.get(key);
		sortedMap.put(key, elems);
	}

	return sortedMap;
}
 
開發者ID:eclipse,項目名稱:n4js,代碼行數:23,代碼來源:ReportUtils.java

示例4: createOptions

import com.google.common.collect.Multimap; //導入方法依賴的package包/類
/**
 * Turn this Multimap into a two-dimensional array the first index giving the page, second the choices of this page.
 *
 * @param multimap
 *            name to many options
 * @return two-dim Array of T
 */
public static <T> Object[][] createOptions(Multimap<String, T> multimap) {
	Object[][] result = new Object[multimap.keySet().size()][];

	int page = 0;
	for (String key : multimap.keySet()) {
		Collection<T> values = multimap.get(key);
		result[page] = new Object[values.size()];
		int valueIndex = 0;
		for (T value : values) {
			result[page][valueIndex] = value;
			valueIndex++;
		}
		page++;
	}

	return result;
}
 
開發者ID:eclipse,項目名稱:n4js,代碼行數:25,代碼來源:Multimaps3.java

示例5: institutionEvent

import com.google.common.collect.Multimap; //導入方法依賴的package包/類
@Override
public void institutionEvent(final InstitutionEvent event)
{
	switch( event.getEventType() )
	{
		case AVAILABLE:
			Multimap<Long, Institution> schema2inst = event.getChanges();
			Set<Long> schemas = schema2inst.keySet();
			for( Long schemaId : schemas )
			{
				backgroundIndexers.getUnchecked(schemaId).synchronizeFull(schema2inst.get(schemaId));
			}
			break;
		default:
			break;
	}

}
 
開發者ID:equella,項目名稱:Equella,代碼行數:19,代碼來源:FreeTextServiceImpl.java

示例6: loadTypesToValidRolesMap

import com.google.common.collect.Multimap; //導入方法依賴的package包/類
private static Multimap<Symbol, Symbol> loadTypesToValidRolesMap(final Parameters params)
    throws IOException {
  final Multimap<Symbol, Symbol> typesToValidRolesInitial = FileUtils.loadSymbolMultimap(
      Files.asCharSource(params.getExistingFile("typeAndRoleFile"), Charsets.UTF_8));
  final Set<Symbol> alwaysValidRoles = params.getSymbolSet("alwaysValidRoles");
  final ImmutableMultimap.Builder<Symbol, Symbol> typesToValidRolesB = ImmutableMultimap.builder();
  typesToValidRolesB.putAll(typesToValidRolesInitial);
  for (final Symbol eventType : typesToValidRolesInitial.keySet()) {
    typesToValidRolesB.putAll(eventType, alwaysValidRoles);
  }
  return typesToValidRolesB.build();
}
 
開發者ID:isi-nlp,項目名稱:tac-kbp-eal,代碼行數:13,代碼來源:FilterAnswerKeyByTypeAndRole.java

示例7: joinSelect

import com.google.common.collect.Multimap; //導入方法依賴的package包/類
String joinSelect(Multimap<String, String> columns) {
  List<String> selectColumns = new ArrayList<>();

  for (String table : columns.keySet()) {
    final Collection<String> keyColumns = columns.get(table);
    for (String keyColumn : keyColumns) {
      selectColumns.add(
          String.format("[%s].[%s]", table, keyColumn)
      );
    }
  }

  return Joiner.on(", ").join(selectColumns);
}
 
開發者ID:jcustenborder,項目名稱:kafka-connect-cdc-mssql,代碼行數:15,代碼來源:MsSqlQueryBuilder.java

示例8: logSummaryOfDuplicates

import com.google.common.collect.Multimap; //導入方法依賴的package包/類
private void logSummaryOfDuplicates( Multimap<Collection<File>, String> overlapping )
{
    for ( Collection<File> jarz : overlapping.keySet() )
    {
        List<String> jarzS = new LinkedList<String>();

        for ( File jjar : jarz )
        {
            jarzS.add( jjar.getName() );
        }

        List<String> classes = new LinkedList<String>();

        for ( String clazz : overlapping.get( jarz ) )
        {
            classes.add( clazz.replace( ".class", "" ).replace( "/", "." ) );
        }

        //CHECKSTYLE_OFF: LineLength
        getLogger().warn(
            Joiner.on( ", " ).join( jarzS ) + " define " + classes.size() + " overlapping classes: " );
        //CHECKSTYLE_ON: LineLength

        int max = 10;

        for ( int i = 0; i < Math.min( max, classes.size() ); i++ )
        {
            getLogger().warn( "  - " + classes.get( i ) );
        }

        if ( classes.size() > max )
        {
            getLogger().warn( "  - " + ( classes.size() - max ) + " more..." );
        }

    }
}
 
開發者ID:javiersigler,項目名稱:apache-maven-shade-plugin,代碼行數:38,代碼來源:DefaultShader.java

示例9: performAdditionalQueries

import com.google.common.collect.Multimap; //導入方法依賴的package包/類
@Override
public void performAdditionalQueries(ItemSerializerState state)
{
	if( state.hasCategory(ItemSerializerService.CATEGORY_ATTACHMENT) )
	{
		Multimap<Long, Attachment> attachments = itemDao
			.getAttachmentsForItemIds(state.getItemIdsWithPrivilege(ItemSecurityConstants.VIEW_ITEM));
		for( Long itemId : attachments.keySet() )
		{
			state.setData(itemId, ALIAS_ATTACHMENTS, attachments.get(itemId));
		}
	}
}
 
開發者ID:equella,項目名稱:Equella,代碼行數:14,代碼來源:AttachmentSerializerProvider.java

示例10: regroupPerWays

import com.google.common.collect.Multimap; //導入方法依賴的package包/類
private static Set<Long> regroupPerWays(Multimap<Long, SignPostPath> sp) {
    Set<Long> result = newHashSet();

    for (Long key : sp.keySet()) {
        for(SignPostPath signPostPath : sp.get(key)) {
            result.add(signPostPath.getTomtomId());
        }
    }

    return result;
}
 
開發者ID:Mappy,項目名稱:fpm,代碼行數:12,代碼來源:SignPosts.java

示例11: dependenciesByLevel

import com.google.common.collect.Multimap; //導入方法依賴的package包/類
public static String dependenciesByLevel(Multimap<Integer, String> instancesByLevel) {
    StringBuilder sb = new StringBuilder();

    for (Integer key : instancesByLevel.keySet()) {
        sb.append("Level ")
          .append(key)
          .append(": ")
          .append(instancesByLevel.get(key))
          .append('\n');
    }
    return sb.toString();
}
 
開發者ID:aartiPl,項目名稱:SDI,代碼行數:13,代碼來源:LoggingUtils.java

示例12: createVariables

import com.google.common.collect.Multimap; //導入方法依賴的package包/類
/**
 * Create one multi-valued variable per column : variableName_[columnName]_[row].
 * @param variableManager
 * @param valuesForEachColumn
 * @param variableName
 */
static void createVariables(VariableManager variableManager, Multimap<String, String> valuesForEachColumn,
		String variableName) {
	final Set<String> columnNames = valuesForEachColumn.keySet();
	int randomRow = -1;
	for (final String columnName : columnNames) {
		final Iterator<String> valuesIt = valuesForEachColumn.get(columnName).iterator();
		int row = 1;
		int rowCount = valuesForEachColumn.get(columnName).size();
		while (valuesIt.hasNext()) {
			final String value = valuesIt.next();
			if (row == 1) {
				//first row, we set values count
				variableManager.setValue(variableName + SEP_VAR + columnName, value);
				variableManager.setValue(variableName + SEP_VAR + columnName + SEP_VAR + COUNT_NAME,
						Integer.toString(rowCount));
				variableManager.setValue(variableName + SEP_VAR + columnName + SEP_VAR + MATCH_NR_NAME,
						Integer.toString(rowCount));
			}
			if (row == 1 && randomRow == -1) {
				//first row and first column
				variableManager.setValue(variableName, value);
				//create a random value between 1 and rowCount
				randomRow = RANDOM.nextInt(rowCount) + 1;
			}
			variableManager.setValue(variableName + SEP_VAR + columnName + SEP_VAR + (row++), value);
		}
		variableManager.setValue(variableName + SEP_VAR + columnName + SEP_VAR + RAND_NAME,
				variableManager.getValue(variableName + SEP_VAR + columnName + SEP_VAR + randomRow));
	}

}
 
開發者ID:Neotys-Labs,項目名稱:Database-Advanced-Actions,代碼行數:38,代碼來源:Sqlactionutils.java

示例13: getTotalRowCountAsString

import com.google.common.collect.Multimap; //導入方法依賴的package包/類
/**
 * Get the total of rows retrieved by all queries executed.
 * @param columnsForEachSqlStatement
 * @param valuesForEachColumn
 * @return
 */
static String getTotalRowCountAsString(final Multimap<String, String> columnsForEachSqlStatement,
		final Multimap<String, String> valuesForEachColumn) {
	int count = 0;
	if (columnsForEachSqlStatement == null || valuesForEachColumn == null) {
		return Integer.toString(count);
	}
	for (final String result : columnsForEachSqlStatement.keySet()) {
		final String firstColumn = columnsForEachSqlStatement.get(result).iterator().next();
		if (valuesForEachColumn.containsKey(firstColumn)) {
			count += valuesForEachColumn.get(firstColumn).size();
		}
	}
	return Integer.toString(count);
}
 
開發者ID:Neotys-Labs,項目名稱:Database-Advanced-Actions,代碼行數:21,代碼來源:Sqlactionutils.java

示例14: dumpOverlapProblems

import com.google.common.collect.Multimap; //導入方法依賴的package包/類
public void dumpOverlapProblems(Multimap<byte[], HbckInfo> regions) {
  // we display this way because the last end key should be displayed as
  // well.
  for (byte[] k : regions.keySet()) {
    errors.print(Bytes.toStringBinary(k) + ":");
    for (HbckInfo r : regions.get(k)) {
      errors.print("[ " + r.toString() + ", "
          + Bytes.toStringBinary(r.getEndKey()) + "]");
    }
    errors.print("----");
  }
}
 
開發者ID:fengchen8086,項目名稱:ditb,代碼行數:13,代碼來源:HBaseFsck.java

示例15: validateQueryParameters

import com.google.common.collect.Multimap; //導入方法依賴的package包/類
private List<ValidationError> validateQueryParameters(final Request request, final Method method) {
    final List<ValidationError> validationErrors = new ArrayList<>();
    if (disableValidation(request.getHeaders(), ValidationFlag.queryParameter)) {
        return validationErrors;
    }

    final Map<String, TypeDeclaration> queryParamToDeclaration = method.queryParameters().stream()
            .collect(Collectors.toMap(TypeDeclaration::name, Function.identity()));

    final Map<Pattern, String> queryParamToPattern = method.queryParameters().stream()
            .collect(
                    Collectors.toMap(param -> Pattern.compile(param.name().replaceAll("(<<[^>]+>>)", "[^=]+")), TypeDeclaration::name)
            );

    final Multimap<String, String> queryParams = ArrayListMultimap.create();
    for (final Map.Entry<String, String> queryParam : request.getQueryParams().entrySet()) {
        Optional<Map.Entry<Pattern, String>> patternEntry = queryParamToPattern.entrySet().stream().filter(
                patternStringEntry -> patternStringEntry.getKey().matcher(queryParam.getKey()).matches()
        ).findFirst();
        if (patternEntry.isPresent()) {
            queryParams.put(patternEntry.get().getValue(), queryParam.getValue());
        } else {
            queryParams.put(queryParam.getKey(), queryParam.getValue());
        }
    }
    for (final String queryParamName : queryParams.keySet()) {
        String declarationMatch = queryParamToDeclaration.keySet().stream().filter(s -> {
            final String pattern = s.startsWith("/") && s.endsWith("/") ? s.substring(1, s.length() - 1) : s;
            return queryParamName.matches(pattern);
        }).findFirst().orElse(null);
        if (queryParamToDeclaration.containsKey(declarationMatch)) {
            final TypeDeclaration queryParamDeclaration = queryParamToDeclaration.get(declarationMatch);
            for (final String queryParamValue : queryParams.get(queryParamName)) {
                final String validationContext = String.join("=", queryParamName, queryParamValue);
                final List<ValidationError> errors = validate(queryParamValue, queryParamDeclaration, ValidationKind.queryParameter, validationContext);
                validationErrors.addAll(errors);
            }
        } else {
            validationErrors.add(new ValidationError(ValidationKind.queryParameter, queryParamName, "Unknown query parameter"));
        }
    }
    validationErrors.addAll(method.queryParameters().stream()
            .filter(TypeDeclaration::required)
            .map(TypeDeclaration::name)
            .filter(queryParamName -> !queryParams.containsKey(queryParamName))
            .map(queryParamName -> new ValidationError(ValidationKind.queryParameter, queryParamName, "Required query parameter missing"))
            .collect(Collectors.toList()));

    return validationErrors;
}
 
開發者ID:vrapio,項目名稱:vrap,代碼行數:51,代碼來源:Validator.java


注:本文中的com.google.common.collect.Multimap.keySet方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。