public FieldModel getResourcesField() { return getResourcesFieldConfig().getField(); }
private boolean isPageSizeParam(MethodConfig methodConfig, FieldModel field) { return methodConfig.isPageStreaming() && methodConfig.getPageStreaming().hasPageSizeField() && field.equals(methodConfig.getPageStreaming().getPageSizeField()); }
@Nullable public FieldModel getPageSizeField() { return getPagingFields().getPageSizeField(); }
private PageStreamingDescriptorClassView generateDescriptorClass(MethodContext context) { SurfaceNamer namer = context.getNamer(); ImportTypeTable typeTable = context.getTypeTable(); MethodModel method = context.getMethodModel(); PageStreamingConfig pageStreaming = context.getMethodConfig().getPageStreaming(); PageStreamingDescriptorClassView.Builder desc = PageStreamingDescriptorClassView.newBuilder(); FieldModel resourceField = pageStreaming.getResourcesField(); FieldConfig resourceFieldConfig = pageStreaming.getResourcesFieldConfig(); desc.name(namer.getPageStreamingDescriptorConstName(method)); desc.typeName(namer.getAndSavePagedResponseTypeName(context, resourceFieldConfig)); desc.requestTypeName(method.getAndSaveRequestTypeName(typeTable, namer)); desc.responseTypeName(method.getAndSaveResponseTypeName(typeTable, namer)); desc.resourceTypeName(typeTable.getAndSaveNicknameForElementType(resourceField)); desc.defaultTokenValue( typeTable.getSnippetZeroValueAndSaveNicknameFor(pageStreaming.getResponseTokenField())); desc.requestTokenSetFunction( namer.getFieldSetFunctionName(pageStreaming.getRequestTokenField())); if (pageStreaming.hasPageSizeField()) { desc.requestPageSizeSetFunction( namer.getFieldSetFunctionName(pageStreaming.getPageSizeField())); desc.requestPageSizeGetFunction( namer.getFieldGetFunctionName(pageStreaming.getPageSizeField())); } desc.responseTokenGetFunction( namer.getFieldGetFunctionName(pageStreaming.getResponseTokenField())); desc.resourcesFieldGetFunction(namer.getFieldGetFunctionName(resourceField)); desc.resourcesFieldIsMap(resourceField.isMap()); return desc.build(); }
private PagedListResponseFactoryClassView generateFactoryClass(MethodContext context) { SurfaceNamer namer = context.getNamer(); MethodModel method = context.getMethodModel(); ImportTypeTable typeTable = context.getTypeTable(); PageStreamingConfig pageStreaming = context.getMethodConfig().getPageStreaming(); FieldModel resourceField = pageStreaming.getResourcesField(); FieldConfig resourceFieldConfig = pageStreaming.getResourcesFieldConfig(); PagedListResponseFactoryClassView.Builder factory = PagedListResponseFactoryClassView.newBuilder(); factory.name(namer.getPagedListResponseFactoryConstName(method)); factory.requestTypeName(method.getAndSaveRequestTypeName(typeTable, namer)); factory.responseTypeName(method.getAndSaveResponseTypeName(typeTable, namer)); factory.resourceTypeName(typeTable.getAndSaveNicknameForElementType(resourceField)); factory.pagedListResponseTypeName( namer.getAndSavePagedResponseTypeName(context, resourceFieldConfig)); factory.pageStreamingDescriptorName(namer.getPageStreamingDescriptorConstName(method)); return factory.build(); } }
&& methodConfig.getPageStreaming().hasPageSizeField() && field.equals(methodConfig.getPageStreaming().getPageSizeField())) { docLines.add( "The maximum number of resources contained in the underlying API", "there are additional values to be retrieved."); } else if (methodConfig.isPageStreaming() && field.equals(methodConfig.getPageStreaming().getRequestTokenField())) { docLines.add( "A page token is used to specify a page of values to be returned.",
FieldModel field = config.getResourcesField(); InitCodeNode initCodeNode; if (field.isRepeated()) { initCodeNode = InitCodeNode.createSingletonList(config.getResourcesFieldName()); } else { initCodeNode = InitCodeNode.create(field.getNameAsParameter()); if (config.getResourcesField().isMap()) { initCodeNode = InitCodeNode.createWithChildren( config.getResourcesField().getNameAsParameter(), MapInitLine, initCodeNode); String responseTokenName = config.getResponseTokenField().getSimpleName(); additionalSubTrees.add( InitCodeNode.createWithValue(
public String getResourcesFieldName() { return getResourcesField().getSimpleName(); }
private List<FieldModel> removePageTokenFromFields(MethodConfig methodConfig) { ImmutableList.Builder<FieldModel> newFields = ImmutableList.builder(); for (FieldModel field : methodConfig.getOptionalFields()) { if (methodConfig.isPageStreaming() && field.equals(methodConfig.getPageStreaming().getRequestTokenField())) { continue; } newFields.add(field); } return newFields.build(); }
.equals(methodConfigProto.getPageStreaming())) { pageStreaming = PageStreamingConfig.createPageStreamingFromGapicConfig( diagCollector, messageConfigs, resourceNameConfigs, methodConfigProto, methodModel); if (pageStreaming == null) { .build(); pageStreaming = PageStreamingConfig.createPageStreamingFromProtoFile( diagCollector, messageConfigs,
/** Returns whether there is a field for page size. */ public boolean hasPageSizeField() { return getPageSizeField() != null; }
/** The formatted name of a page streaming resources field. */ public String getResourcesFieldName(PageStreamingConfig pageStreaming) { return keyName(Name.from(pageStreaming.getResourcesFieldName())); }
/** The formatted field name of a page streaming response token. */ public String getResponseTokenFieldName(PageStreamingConfig pageStreaming) { return keyName(Name.from(pageStreaming.getResponseTokenField().getSimpleName())); }
.equals(methodConfigProto.getPageStreaming())) { pageStreaming = PageStreamingConfig.createPageStreamingFromGapicConfig( diagCollector, messageConfigs, resourceNameConfigs, methodConfigProto, methodModel); if (pageStreaming == null) {
public PageStreamingDescriptorView generateDescriptor( InterfaceContext context, MethodModel method) { MethodConfig methodConfig = context.getMethodConfig(method); PageStreamingConfig pageStreaming = methodConfig.getPageStreaming(); PageStreamingDescriptorView.Builder descriptor = PageStreamingDescriptorView.newBuilder(); descriptor.varName(context.getNamer().getPageStreamingDescriptorName(method)); descriptor.requestTokenFieldName(context.getNamer().getRequestTokenFieldName(pageStreaming)); descriptor.requestTokenGetMethodName( context.getNamer().getFieldGetFunctionName(pageStreaming.getRequestTokenField())); descriptor.requestTokenSetMethodName( context.getNamer().getFieldSetFunctionName(pageStreaming.getRequestTokenField())); if (pageStreaming.hasPageSizeField()) { descriptor.requestPageSizeGetMethodName( context.getNamer().getFieldGetFunctionName(pageStreaming.getPageSizeField())); descriptor.requestPageSizeSetMethodName( context.getNamer().getFieldSetFunctionName(pageStreaming.getPageSizeField())); } descriptor.responseTokenFieldName(context.getNamer().getResponseTokenFieldName(pageStreaming)); descriptor.responseTokenGetMethodName( context.getNamer().getFieldGetFunctionName(pageStreaming.getResponseTokenField())); descriptor.resourcesFieldName(context.getNamer().getResourcesFieldName(pageStreaming)); descriptor.resourcesGetMethodName( context.getNamer().getFieldGetFunctionName(pageStreaming.getResourcesField())); descriptor.methodName(context.getNamer().getMethodKey(method)); descriptor.transportMethodName(context.getNamer().getGrpcMethodName(method)); return descriptor.build(); }
case PagedApiCallable: settings.type(ApiCallableImplType.PagedApiCallable); FieldModel resourceField = methodConfig.getPageStreaming().getResourcesField(); settings.resourceTypeName(typeTable.getAndSaveNicknameForElementType(resourceField)); settings.pagedListResponseTypeName( namer.getAndSavePagedResponseTypeName( context, methodConfig.getPageStreaming().getResourcesFieldConfig())); settings.pagedListResponseFactoryName(namer.getPagedListResponseFactoryConstName(method)); break;
MethodConfig methodConfig = context.getMethodConfig(); if (methodConfig.isPageStreaming() && methodConfig.getPageStreaming().hasPageSizeField() && field.equals(methodConfig.getPageStreaming().getPageSizeField())) { docLines = Arrays.asList( }); } else if (methodConfig.isPageStreaming() && field.equals(methodConfig.getPageStreaming().getRequestTokenField())) { docLines = Arrays.asList(
MethodConfig methodConfig = methodContext.getMethodConfig(); if (methodConfig.isPageStreaming()) { FieldModel resourceType = methodConfig.getPageStreaming().getResourcesField(); String resourceTypeName = context.getImportTypeTable().getAndSaveNicknameForElementType(resourceType);
private boolean isRequestTokenParam(MethodConfig methodConfig, FieldModel field) { return methodConfig.isPageStreaming() && field.equals(methodConfig.getPageStreaming().getRequestTokenField()); }
@Test public void testAccessorNewVariablePageStreamingResourceNameResponse() { Scanner scanner = new Scanner("$resp"); when(config.getPageStreaming()).thenReturn(pageStreamingConfig); when(pageStreamingConfig.getResourcesFieldConfig()).thenReturn(resourceFieldConfig); when(namer.getAndSaveElementResourceTypeName(typeTable, resourceFieldConfig)) .thenReturn("ShelfBookName"); when(featureConfig.useResourceNameFormatOption(resourceFieldConfig)).thenReturn(true); OutputView.VariableView variableView = accessorNewVariable(scanner, context, valueSet, parent, "newVar", false); assertThat(variableView.variable()).isEqualTo("sampleResponseVarName"); assertThat(variableView.accessors()).isEmpty(); assertThat(parent.getTypeName("newVar")).isEqualTo("ShelfBookName"); assertThat(parent.getTypeModel("newVar")).isNull(); }