public static Builder newBuilder() { return new AutoValue_InitCodeContext.Builder() .symbolTable(new SymbolTable()) .initValueConfigMap(ImmutableMap.<String, InitValueConfig>of()) .fieldConfigMap(ImmutableMap.<String, FieldConfig>of()) .outputType(InitCodeOutputType.SingleObject) .additionalInitCodeNodes(ImmutableList.of()) .initFieldConfigStrings(ImmutableList.of()) .sampleParamConfigMap(ImmutableMap.of()); }
private Name identifierFromSampleArgumentName(InitCodeContext context, String argName) { Name name = Name.anyLower(argName); Preconditions.checkArgument( !context.symbolTable().contains(name), "sample_argument_name \"%s\" is already in use.", name); return context.symbolTable().getNewSymbol(name); }
/** * Returns a unique name, with a numeric suffix in case of conflicts. * * <p>Not guaranteed to work as expected if used in combination with {@link #getNewSymbol(Name)}. */ public String getNewSymbol(String desiredName) { String suffix = getAndSaveSuffix(desiredName); return desiredName + suffix; }
/** * Returns a new SymbolTable seeded with all the words in seed. * * <p>For example, if seed is {"int"}, a subsequent call to {@link #getNewSymbol(String)} for * "int" will return "int2". * * <p>The behavior of the returned SymbolTable is guaranteed if used with {@link * #getNewSymbol(String)}, but not with {@link #getNewSymbol(Name)}. */ public static SymbolTable fromSeed(Set<String> seed) { SymbolTable symbolTable = new SymbolTable(); for (String s : seed) { symbolTable.getNewSymbol(s); } return symbolTable; }
String getSchemaName(Schema schema, String basename) { return messageNames.computeIfAbsent(schema, k -> idSymbolTable.getNewSymbol(basename)); } }
StaticLangApiMessageView.Builder requestView = StaticLangApiMessageView.newBuilder(); SymbolTable symbolTable = SymbolTable.fromSeed(reservedKeywords); .privateFieldName(DiscoGapicParser.getRequestName(method.getDiscoMethod())); String requestName = nameFormatter.privateFieldName(Name.anyCamel(symbolTable.getNewSymbol(requestClassId))); paramView.description(STANDARD_QUERY_PARAMS.get(param)); paramView.rawName(param); paramView.name(symbolTable.getNewSymbol(param)); paramView.typeName("String"); paramView.innerTypeName("String"); paramView.description(description.toString()); paramView.rawName(resourceNameView.name()); paramView.name(symbolTable.getNewSymbol(resourceNameView.name())); paramView.typeName("String"); paramView.innerTypeName("String");
private StaticLangApiResourceNameView generateResourceNameClass( SchemaTransformationContext context, Method method, SingleResourceNameConfig nameConfig) { StaticLangApiResourceNameView.Builder resourceNameView = StaticLangApiResourceNameView.newBuilder(); SymbolTable symbolTable = SymbolTable.fromSeed(reservedKeywords); String resourceName = nameFormatter.localVarName(DiscoGapicParser.getResourceNameName(nameConfig)); resourceNameView.name(resourceName); resourceNameView.typeName(nameFormatter.publicClassName(Name.anyCamel(resourceName))); resourceNameView.pathTemplate(nameConfig.getNamePattern()); resourceNameView.serviceAddress(context.getDocContext().getServiceAddress()); List<StaticLangMemberView> properties = new LinkedList<>(); for (Map.Entry<String, Schema> entry : method.parameters().entrySet()) { if (entry.getValue().isPathParam()) { Schema param = entry.getValue(); properties.add(schemaToParamView(context, param, symbolTable)); } } Collections.sort(properties); resourceNameView.pathParams(properties); return resourceNameView.build(); }
Collection<Method> methodsToCreateRetriesFor, ProtoParser protoParser) { SymbolTable symbolTable = new SymbolTable(); symbolTable.getNewSymbol(retryCodesName); String httpGetRetryName = symbolTable.getNewSymbol(HTTP_RETRY_CODE_DEF_NAME); String noRetryName = symbolTable.getNewSymbol(NO_RETRY_CODE_DEF_NAME);
/** The test case name for the given method. */ @Override public String getTestCaseName(SymbolTable symbolTable, MethodModel method) { Name testCaseName = symbolTable.getNewSymbol(method.asName()); return publicMethodName(testCaseName); }
boolean hasRequiredProperties = false; SymbolTable symbolTableCopy = SymbolTable.fromSeed(reservedKeywords); nameFormatter.privateFieldName(Name.anyCamel(symbolTableCopy.getNewSymbol(schemaId)));
private TestCaseView createRequestObjectTestCase( GapicMethodContext requestContext, MethodConfig methodConfig, SymbolTable testNameTable, Synchronicity synchronicity) { InitCodeContext initCodeContext = initCodeTransformer.createRequestInitCodeContext( requestContext, new SymbolTable(), methodConfig.getRequiredFieldConfigs(), InitCodeOutputType.SingleObject, valueGenerator); return testCaseTransformer.createTestCaseView( requestContext, testNameTable, initCodeContext, synchronicity == Synchronicity.Sync ? ClientMethodType.RequestObjectMethod : ClientMethodType.AsyncRequestObjectCallSettingsMethod, synchronicity, null, null); }
SymbolTable table = new SymbolTable(); table.getNewSymbol(Name.from(InitFieldConfig.PROJECT_ID_VARIABLE_NAME));
@Override public String getTestCaseName(SymbolTable symbolTable, MethodModel method) { Name testCaseName = symbolTable.getNewSymbol(Name.upperCamel("Test", method.getSimpleName())); return publicMethodName(testCaseName); }
/** * Returns a unique name, with a numeric suffix in case of conflicts. * * <p>Not guaranteed to work as expected if used in combination with {@link * #getNewSymbol(String)}. */ public Name getNewSymbol(Name desiredName) { String lower = desiredName.toLowerUnderscore(); String suffix = getAndSaveSuffix(lower); if (Strings.isNullOrEmpty(suffix)) { return desiredName; } return desiredName.join(suffix); }
private List<TestCaseView> createUnitTestCaseViews( GapicInterfaceContext context, boolean packageHasMultipleServices) { ImmutableList.Builder<TestCaseView> testCases = ImmutableList.builder(); for (MethodModel method : context.getSupportedMethods()) { GapicMethodContext requestMethodContext = context.withNewTypeTable().asRequestMethodContext(method); MethodConfig methodConfig = requestMethodContext.getMethodConfig(); TestCaseTransformer testCaseTransformer = new TestCaseTransformer(valueProducer, packageHasMultipleServices); TestCaseView testCase = testCaseTransformer.createTestCaseView( requestMethodContext, new SymbolTable(), createUnitTestCaseInitCodeContext(context, method), getMethodType(methodConfig)); testCases.add(testCase); } return testCases.build(); }
@Override public String getExceptionTestCaseName(SymbolTable symbolTable, MethodModel method) { Name testCaseName = symbolTable.getNewSymbol(Name.upperCamel("Test", method.getSimpleName(), "Exception")); return publicMethodName(testCaseName); }
private List<TestCaseView> createTestCaseViews(GapicInterfaceContext context) { ArrayList<TestCaseView> testCaseViews = new ArrayList<>(); SymbolTable testNameTable = new SymbolTable(); for (MethodModel method : context.getSupportedMethods()) { GapicMethodContext methodContext = context.asRequestMethodContext(method); ClientMethodType clientMethodType = ClientMethodType.RequestObjectMethod; if (methodContext.getMethodConfig().isPageStreaming()) { clientMethodType = ClientMethodType.PagedRequestObjectMethod; } else if (methodContext.getMethodConfig().isLongRunningOperation()) { clientMethodType = ClientMethodType.OperationRequestObjectMethod; } InitCodeContext initCodeContext = initCodeTransformer.createRequestInitCodeContext( methodContext, new SymbolTable(), methodContext.getMethodConfig().getRequiredFieldConfigs(), InitCodeOutputType.SingleObject, valueGenerator); testCaseViews.add( testCaseTransformer.createTestCaseView( methodContext, testNameTable, initCodeContext, clientMethodType)); } return testCaseViews; }
@Override public String getAsyncTestCaseName(SymbolTable symbolTable, MethodModel method) { Name testCaseName = symbolTable.getNewSymbol(method.asName().join("async")); return publicMethodName(testCaseName); } }
private List<TestCaseView> createTestCaseViews(InterfaceContext context) { ArrayList<TestCaseView> testCaseViews = new ArrayList<>(); SymbolTable testNameTable = new SymbolTable(); for (MethodModel method : context.getSupportedMethods()) { MethodConfig methodConfig = context.getMethodConfig(method); initCodeTransformer.createRequestInitCodeContext( methodContext, new SymbolTable(), methodConfig.getRequiredFieldConfigs(), InitCodeOutputType.SingleObject, initCodeTransformer.createRequestInitCodeContext( methodContext, new SymbolTable(), flatteningGroup.getFlattenedFieldConfigs().values(), InitCodeOutputType.FieldList,
/** The test case name for the given method. */ public String getTestCaseName(SymbolTable symbolTable, MethodModel method) { Name testCaseName = symbolTable.getNewSymbol(method.asName().join("test")); return publicMethodName(testCaseName); }