private void acceptContainer(ProtoContainerElement container) { acceptMessages(container.getMessages()); acceptElems(container.getEnums()); }
private void acceptContainer(ProtoContainerElement container) { acceptMessages(container.getMessages()); acceptElems(container.getEnums()); }
public List<GrpcElementDocView> generateElementDocs( GapicProductConfig productConfig, ModelTypeTable typeTable, SurfaceNamer namer, ProtoContainerElement containerElement) { ImmutableList.Builder<GrpcElementDocView> children = ImmutableList.builder(); Set<String> lroTypes = productConfig .getInterfaceConfigMap() .values() .stream() .flatMap(i -> i.getMethodConfigs().stream()) .map(MethodConfig::getLongRunningConfig) .filter(Objects::nonNull) .flatMap(lro -> Stream.of(lro.getReturnType(), lro.getMetadataType())) .map(t -> ((ProtoTypeRef) t).getProtoType()) .map(TypeRef::getMessageType) .map(MessageType::getFullName) .collect(ImmutableSet.toImmutableSet()); Collection<MessageType> messages = containerElement .getMessages() .stream() .filter(m -> m.isReachable() || lroTypes.contains(m.getFullName())) .collect(ImmutableList.toImmutableList()); children.addAll(generateMessageDocs(productConfig, typeTable, namer, messages)); children.addAll(generateEnumDocs(typeTable, namer, containerElement.getEnums())); return children.build(); }
private <T> void recursivePutAttribute(ProtoContainerElement element, Key<T> key, T attribute) { element.putAttribute(key, attribute); for (ProtoContainerElement message : element.getMessages()) { recursivePutAttribute(message, key, attribute); } for (EnumType enumType : element.getEnums()) { enumType.putAttribute(key, attribute); } }
private <T> void recursivePutAttribute(ProtoContainerElement element, Key<T> key, T attribute) { element.putAttribute(key, attribute); for (ProtoContainerElement message : element.getMessages()) { recursivePutAttribute(message, key, attribute); } for (EnumType enumType : element.getEnums()) { enumType.putAttribute(key, attribute); } }
private List<GrpcElementDocView> generateEnumFileElements( ModelTypeTable typeTable, SurfaceNamer namer, ProtoContainerElement containerElement) { ImmutableList.Builder<GrpcElementDocView> elements = ImmutableList.builder(); elements.addAll( elementDocTransformer.generateEnumDocs(typeTable, namer, containerElement.getEnums())); for (MessageType message : containerElement.getMessages()) { List<GrpcElementDocView> elementDocs = generateEnumFileElements(typeTable, namer, message); if (!elementDocs.isEmpty()) { GrpcMessageDocView.Builder messageView = GrpcMessageDocView.newBuilder(); messageView.name(namer.publicClassName(Name.upperCamel(message.getSimpleName()))); messageView.fullName(typeTable.getFullNameFor(TypeRef.of(message))); messageView.fileUrl(GapicParser.getFileUrl(message.getFile())); messageView.lines(namer.getDocLines(GapicParser.getDocString(message))); messageView.properties(ImmutableList.<ParamDocView>of()); messageView.elementDocs(elementDocs); messageView.packageName(message.getFile().getFullName()); elements.add(messageView.build()); } } return elements.build(); }
MessageType messageType = getElementWithName(container.getMessages(), pathElement); EnumType enumType = getElementWithName(container.getEnums(), pathElement); if (messageType != null) {