/** * @see #builder(String) */ public static Builder builder(Class<? extends Summarizer> clazz) { return new Builder(clazz.getName()); } }
private static List<SummarizerConfiguration> getSummarizerConfigsFiltered( SortedMap<String,String> sprops) { if (sprops.size() == 0) { return Collections.emptyList(); } SummarizerConfiguration.Builder builder = null; List<SummarizerConfiguration> configs = new ArrayList<>(); final int preLen = Property.TABLE_SUMMARIZER_PREFIX.getKey().length(); for (Entry<String,String> entry : sprops.entrySet()) { String k = entry.getKey().substring(preLen); String[] tokens = k.split("\\."); String id = tokens[0]; if (tokens.length == 1) { if (builder != null) { configs.add(builder.build()); } builder = SummarizerConfiguration.builder(entry.getValue()).setPropertyId(id); } else if (tokens.length == 3 || tokens[1].equals("opt")) { builder.addOption(tokens[2], entry.getValue()); } else { throw new IllegalArgumentException("Unable to parse summarizer property : " + k); } } configs.add(builder.build()); return configs; }
"Require an even, positive number of arguments, got %s", keyValuePairs.length); for (int i = 0; i < keyValuePairs.length; i += 2) { addOption(keyValuePairs[i], keyValuePairs[i + 1]);
private static SummarizerConfiguration readConfig(DataInputStream in) throws IOException { // read summarizer configuration String summarizerClazz = in.readUTF(); String configId = in.readUTF(); // @formatter:off org.apache.accumulo.core.client.summary.SummarizerConfiguration.Builder scb = SummarizerConfiguration.builder(summarizerClazz).setPropertyId(configId); // @formatter:on int numOpts = WritableUtils.readVInt(in); for (int i = 0; i < numOpts; i++) { String k = in.readUTF(); String v = in.readUTF(); scb.addOption(k, v); } return scb.build(); }
/** * @param options * Each entry in the map is passed to {@link #addOption(String, String)} * @return this * * @see SummarizerConfiguration#getOptions() */ public Builder addOptions(Map<String,String> options) { options.entrySet().forEach(e -> addOption(e.getKey(), e.getValue())); return this; }
/** * Adds an option that Summarizers can use when constructing Collectors and Combiners. * * @return this * * @see SummarizerConfiguration#getOptions() */ public Builder addOption(String key, long value) { return addOption(key, Long.toString(value)); }
public static SummarizerConfiguration fromThrift(TSummarizerConfiguration config) { Builder builder = SummarizerConfiguration.builder(config.getClassname()); builder.setPropertyId(config.getConfigId()); builder.addOptions(config.getOptions()); return builder.build(); } }
/** * Call this method to initiate a chain of fluent method calls to a create an immutable * {@link SummarizerConfiguration} * * @param className * The fully qualified name of a class that implements {@link Summarizer}. */ public static Builder builder(String className) { return new Builder(className); }