@JsonCreator public static Variable.Type fromString(String name) { Variable.Type value = MAP.get(name.toLowerCase()); if (value != null) { return value; } // no variable type of that name, check if it's an old CompletionType try { CompletionType completionType = CompletionType.valueOf(name.toUpperCase()); value = COMPLETION_TYPE_MAP.get(completionType); } catch (IllegalArgumentException e) { // neither a Variable.Type or CompletionType value = null; } if (value == null) { throw new BatfishException( "No " + Variable.Type.class.getSimpleName() + " with name: '" + name + "'"); } return value; }
addTextMultiPart(multiPart, CoordConsts.SVC_KEY_NETWORK_NAME, networkName); addTextMultiPart(multiPart, CoordConsts.SVC_KEY_SNAPSHOT_NAME, snapshotName); addTextMultiPart(multiPart, CoordConsts.SVC_KEY_COMPLETION_TYPE, completionType.toString()); addTextMultiPart(multiPart, CoordConsts.SVC_KEY_QUERY, query); addTextMultiPart(
@Test public void testFromStringCompletionTypes() { assertThat( Variable.Type.fromString(CompletionType.BGP_PEER_PROPERTY.toString()), equalTo(BGP_PEER_PROPERTY_SPEC)); assertThat( Variable.Type.fromString(CompletionType.BGP_PROCESS_PROPERTY.toString()), equalTo(BGP_PROCESS_PROPERTY_SPEC)); assertThat( Variable.Type.fromString(CompletionType.INTERFACE_PROPERTY.toString()), equalTo(INTERFACE_PROPERTY_SPEC)); assertThat( Variable.Type.fromString(CompletionType.NAMED_STRUCTURE.toString()), equalTo(NAMED_STRUCTURE_SPEC)); assertThat(Variable.Type.fromString(CompletionType.NODE.toString()), equalTo(NODE_SPEC)); assertThat( Variable.Type.fromString(CompletionType.NODE_PROPERTY.toString()), equalTo(NODE_PROPERTY_SPEC)); assertThat( Variable.Type.fromString(CompletionType.OSPF_PROPERTY.toString()), equalTo(OSPF_PROPERTY_SPEC)); }
private boolean autoComplete(List<String> options, List<String> parameters) { if (!isValidArgument(options, parameters, 1, 2, 2, Command.AUTOCOMPLETE)) { return false; } if (!isSetContainer(true) || !isSetTestrig()) { return false; } int maxSuggestions = options.size() == 1 ? Integer.parseInt(options.get(0)) : Integer.MAX_VALUE; CompletionType completionType = CompletionType.valueOf(parameters.get(0).toUpperCase()); String query = parameters.get(1); String suggestionsJson = _workHelper.autoComplete( _currContainerName, _currTestrig, completionType, query, maxSuggestions); _logger.outputf("Auto complete: %s\n", suggestionsJson); return true; }