@Override public boolean isOutputTypeEmpty() { return outputType == null || outputType.isEmptyType(); }
@Override public DiscoveryField getOutputField(String fieldName) { if (outputType.isEmptyType() || outputType.isPrimitive()) { return null; } return ((DiscoveryField) outputType).getField(fieldName); }
/** * Returns the Java representation of a zero value for that type, to be used in code sample doc. * * <p>Parametric types may use the diamond operator, since the return value will be used only in * initialization. */ @Override public TypedValue getSnippetZeroValue(TypeModel typeModel) { if (typeModel.isEmptyType()) { return TypedValue.create(getTypeName((DiscoveryField) null), "null"); } return getSnippetZeroValue((DiscoveryField) typeModel); }
@Override public TypeName getTypeNameForElementType(TypeModel type) { if (type.isStringType()) { return typeNameConverter.getTypeName("java.lang.String"); } else if (type.isEmptyType()) { return typeNameConverter.getTypeName("java.lang.Void"); } return getTypeNameForElementType((DiscoveryField) type); }
@Override public TypeName getTypeName(TypeModel type) { if (type instanceof DiscoveryRequestType) { Method method = ((DiscoveryRequestType) type).parentMethod().getDiscoMethod(); return getDiscoGapicNamer().getRequestTypeName(method, getNamer()); } if (type.isEmptyType()) { return getTypeNameForElementType(type); } return getTypeName((DiscoveryField) type); }
private List<LongRunningOperationDetailView> createLongRunningDescriptors( GapicInterfaceContext context) { List<LongRunningOperationDetailView> result = new ArrayList<>(); for (MethodModel method : context.getLongRunningMethods()) { GapicMethodContext methodContext = context.asDynamicMethodContext(method); LongRunningConfig lroConfig = methodContext.getMethodConfig().getLongRunningConfig(); TypeModel returnType = lroConfig.getReturnType(); TypeModel metadataType = lroConfig.getMetadataType(); result.add( LongRunningOperationDetailView.newBuilder() .methodName(context.getNamer().getApiMethodName(method, VisibilityConfig.PUBLIC)) .constructorName("") .clientReturnTypeName("") .operationPayloadTypeName(context.getImportTypeTable().getFullNameFor(returnType)) .isEmptyOperation(lroConfig.getReturnType().isEmptyType()) .isEmptyMetadata(lroConfig.getMetadataType().isEmptyType()) .metadataTypeName(context.getImportTypeTable().getFullNameFor(metadataType)) .implementsCancel(true) .implementsDelete(true) .initialPollDelay(lroConfig.getInitialPollDelay().toMillis()) .pollDelayMultiplier(lroConfig.getPollDelayMultiplier()) .maxPollDelay(lroConfig.getMaxPollDelay().toMillis()) .totalPollTimeout(lroConfig.getTotalPollTimeout().toMillis()) .build()); } return result; }
private List<LongRunningOperationDetailView> createLongRunningDescriptors( GapicInterfaceContext context) { List<LongRunningOperationDetailView> result = new ArrayList<>(); for (MethodModel method : context.getLongRunningMethods()) { GapicMethodContext methodContext = context.asDynamicMethodContext(method); LongRunningConfig lroConfig = methodContext.getMethodConfig().getLongRunningConfig(); TypeModel returnType = lroConfig.getReturnType(); TypeModel metadataType = lroConfig.getMetadataType(); result.add( LongRunningOperationDetailView.newBuilder() .methodName(context.getNamer().getApiMethodName(method, VisibilityConfig.PUBLIC)) .transportMethodName(context.getNamer().getGrpcMethodName(method)) .constructorName("") .clientReturnTypeName("") .operationPayloadTypeName(context.getImportTypeTable().getFullNameFor(returnType)) .isEmptyOperation(lroConfig.getReturnType().isEmptyType()) .isEmptyMetadata(lroConfig.getMetadataType().isEmptyType()) .metadataTypeName(context.getImportTypeTable().getFullNameFor(metadataType)) .implementsCancel(true) .implementsDelete(true) .initialPollDelay(lroConfig.getInitialPollDelay().toMillis()) .pollDelayMultiplier(lroConfig.getPollDelayMultiplier()) .maxPollDelay(lroConfig.getMaxPollDelay().toMillis()) .totalPollTimeout(lroConfig.getTotalPollTimeout().toMillis()) .build()); } return result; }
LongRunningOperationDetailView generateDetailView(MethodContext context) { MethodConfig methodConfig = context.getMethodConfig(); LongRunningConfig lroConfig = methodConfig.getLongRunningConfig(); SurfaceNamer namer = context.getNamer(); String clientReturnTypeName = namer.getAndSaveOperationResponseTypeName( context.getMethodModel(), context.getTypeTable(), methodConfig); String operationPayloadTypeName = namer.getLongRunningOperationTypeName(context.getTypeTable(), lroConfig.getReturnType()); String metadataTypeName = namer.getLongRunningOperationTypeName(context.getTypeTable(), lroConfig.getMetadataType()); return LongRunningOperationDetailView.newBuilder() .methodName(namer.getApiMethodName(context.getMethodModel(), VisibilityConfig.PUBLIC)) .constructorName(namer.getTypeConstructor(clientReturnTypeName)) .clientReturnTypeName(clientReturnTypeName) .operationPayloadTypeName(operationPayloadTypeName) .isEmptyOperation(lroConfig.getReturnType().isEmptyType()) .isEmptyMetadata(lroConfig.getMetadataType().isEmptyType()) .metadataTypeName(metadataTypeName) .implementsDelete(lroConfig.implementsDelete()) .implementsCancel(lroConfig.implementsCancel()) .initialPollDelay(lroConfig.getInitialPollDelay().toMillis()) .pollDelayMultiplier(lroConfig.getPollDelayMultiplier()) .maxPollDelay(lroConfig.getMaxPollDelay().toMillis()) .totalPollTimeout(lroConfig.getTotalPollTimeout().toMillis()) .build(); } }
if (context.getMethodConfig().isLongRunningOperation()) { methodViewBuilder.hasReturnValue( !context.getMethodConfig().getLongRunningConfig().getReturnType().isEmptyType()); } else { methodViewBuilder.hasReturnValue(!method.isOutputTypeEmpty());
boolean hasReturnValue = !method.isOutputTypeEmpty(); if (methodConfig.isLongRunningOperation()) { hasReturnValue = !methodConfig.getLongRunningConfig().getReturnType().isEmptyType();