protected void enumToString(Enum enumValue, StringBuilder sb) { appendLine(sb, "enum %s {", enumValue.getName()); for (EnumConstant enumConstant : enumValue.getConstants()) { appendLine(sb, " %s = %s;", enumConstant.getName(), enumConstant.getValue()); } sb.append("}\n\n"); }
/** * Get enum that is declared under this container. * * @param name the enum short name * * @return enum instance or null if message with given name is not declared under * this container */ @Nullable default Enum getEnum(String name) { for (Enum anEnum : getEnums()) { if (name.equals(anEnum.getName())) { return anEnum; } } return null; }
/** * Get enum that is declared under this container. * * @param name the enum short name * * @return enum instance or null if message with given name is not declared under * this container */ @Nullable default Enum getEnum(String name) { for (Enum anEnum : getEnums()) { if (name.equals(anEnum.getName())) { return anEnum; } } return null; }
protected void enumToString(Enum enumValue, StringBuilder sb) { appendLine(sb, "enum %s {", enumValue.getName()); for (EnumConstant enumConstant : enumValue.getConstants()) { appendLine(sb, " %s = %s;", enumConstant.getName(), enumConstant.getValue()); } sb.append("}\n\n"); }
private List<JsonTreeNode> processContainer(UserTypeContainer proto) { List<JsonTreeNode> result = new ArrayList<>(); proto.getEnums() .forEach(anEnum -> result.add(ImmutableJsonTreeNode.builder() .label(anEnum.getName()) .data(ImmutableNodeData.builder() .type(NodeType.ENUM) .ref(anEnum.getCanonicalName()) .build()) .build())); proto.getMessages().stream() .filter(message -> !message.isMapEntry()) .forEach(message -> { ImmutableJsonTreeNode.Builder builder = ImmutableJsonTreeNode.builder(); builder.label(message.getName()); builder.data(ImmutableNodeData.builder() .type(NodeType.MESSAGE) .ref(message.getCanonicalName()) .build()); List<JsonTreeNode> children = processContainer(message); if (!children.isEmpty()) { builder.children(children); } result.add(builder.build()); }); return result; } }
private List<JsonTreeNode> processContainer(UserTypeContainer proto) { List<JsonTreeNode> result = new ArrayList<>(); proto.getEnums() .forEach(anEnum -> result.add(ImmutableJsonTreeNode.builder() .label(anEnum.getName()) .data(ImmutableNodeData.builder() .type(NodeType.ENUM) .ref(anEnum.getCanonicalName()) .build()) .build())); proto.getMessages().stream() .filter(message -> !message.isMapEntry()) .forEach(message -> { ImmutableJsonTreeNode.Builder builder = ImmutableJsonTreeNode.builder(); builder.label(message.getName()); builder.data(ImmutableNodeData.builder() .type(NodeType.MESSAGE) .ref(message.getCanonicalName()) .build()); List<JsonTreeNode> children = processContainer(message); if (!children.isEmpty()) { builder.children(children); } result.add(builder.build()); }); return result; } }
private void process(Module module, Enum anEnum) { ImmutableEnumDescriptor descriptor = ImmutableEnumDescriptor.builder() .type(NodeType.ENUM) .name(anEnum.getName()) .canonicalName(anEnum.getCanonicalName()) .description(markdownProcessor.toHtml(anEnum.getComments())) .options(anEnum.getOptions().toMap()) .usages(module.usageIndex().getUsages(anEnum).stream() .map(type -> ImmutableUsageItem.builder() .ref(type.getCanonicalName()) .type(UsageType.from(type)) .build()) .collect(Collectors.toList())) .addAllConstants(anEnum.getConstants().stream() .map(enumConstant -> ImmutableEnumConstant.builder() .name(enumConstant.getName()) .value(enumConstant.getValue()) .description(markdownProcessor.toHtml(enumConstant.getComments())) .options(enumConstant.getOptions().toMap()) .build()) .collect(Collectors.toList())) .build(); String output = "data/type/" + anEnum.getCanonicalName() + ".json"; write(module, output, descriptor); } }
private void process(Module module, Enum anEnum) { ImmutableEnumDescriptor descriptor = ImmutableEnumDescriptor.builder() .type(NodeType.ENUM) .name(anEnum.getName()) .canonicalName(anEnum.getCanonicalName()) .description(markdownProcessor.toHtml(anEnum.getComments())) .options(anEnum.getOptions().toMap()) .usages(module.usageIndex().getUsages(anEnum).stream() .map(type -> ImmutableUsageItem.builder() .ref(type.getCanonicalName()) .type(UsageType.from(type)) .build()) .collect(Collectors.toList())) .addAllConstants(anEnum.getConstants().stream() .map(enumConstant -> ImmutableEnumConstant.builder() .name(enumConstant.getName()) .value(enumConstant.getValue()) .description(markdownProcessor.toHtml(enumConstant.getComments())) .options(enumConstant.getOptions().toMap()) .build()) .collect(Collectors.toList())) .build(); String output = "data/type/" + anEnum.getCanonicalName() + ".json"; write(module, output, descriptor); } }
for (Enum type : enums) { type.setProto(proto); String fullyQualifiedName = proto.getNamespace() + type.getName(); type.setFullyQualifiedName(fullyQualifiedName); context.register(fullyQualifiedName, type);
for (Enum type : enums) { type.setProto(proto); String fullyQualifiedName = proto.getNamespace() + type.getName(); type.setFullyQualifiedName(fullyQualifiedName); context.register(fullyQualifiedName, type);