Search in sources :

Example 1 with Syntax

use of com.google.protobuf.Descriptors.FileDescriptor.Syntax in project beam by apache.

the class ProtobufUtil method checkProto2Syntax.

/**
   * Recursively walks the given {@link Message} class and verifies that every field or message
   * linked in uses the Protocol Buffers proto2 syntax.
   */
static void checkProto2Syntax(Class<? extends Message> clazz, ExtensionRegistry registry) {
    for (GenericDescriptor d : getRecursiveDescriptorsForClass(clazz, registry)) {
        Syntax s = d.getFile().getSyntax();
        checkArgument(s == Syntax.PROTO2, "Message %s or one of its dependencies does not use proto2 syntax: %s in file %s", clazz.getName(), d.getFullName(), d.getFile().getName());
    }
}
Also used : GenericDescriptor(com.google.protobuf.Descriptors.GenericDescriptor) Syntax(com.google.protobuf.Descriptors.FileDescriptor.Syntax)

Aggregations

Syntax (com.google.protobuf.Descriptors.FileDescriptor.Syntax)1 GenericDescriptor (com.google.protobuf.Descriptors.GenericDescriptor)1