private static void getDependencies(@Nonnull Descriptors.FileDescriptor fileDescriptor, @Nonnull Map<String, Descriptors.FileDescriptor> allDependencies, @Nullable Map<String, Descriptors.FileDescriptor> excludedDependencies) { for (Descriptors.FileDescriptor dependency : fileDescriptor.getDependencies()) { if (excludedDependencies != null && excludedDependencies.containsKey(dependency.getName())) { // Just pass. continue; } else if (!allDependencies.containsKey(dependency.getName())) { allDependencies.put(dependency.getName(), dependency); getDependencies(dependency, allDependencies, excludedDependencies); } else if (!allDependencies.get(dependency.getName()).equals(dependency)) { throw new MetaDataException(String.format("Dependency mismatch found for file %s", dependency.getName())); } } }
private void addFile(FileDescriptor file) { // Skip the file if it's already added. if (!files.add(file.getFullName())) { return; } for (FileDescriptor dependency : file.getDependencies()) { addFile(dependency); } for (Descriptor message : file.getMessageTypes()) { addMessage(message); } }
private void addFile(FileDescriptor file) { // Skip the file if it's already added. if (!files.add(file.getFullName())) { return; } for (FileDescriptor dependency : file.getDependencies()) { addFile(dependency); } for (Descriptor message : file.getMessageTypes()) { addMessage(message); } }
Assert.assertEquals(1, file.getDependencies().size()); this.importFile = file.getDependencies().get(0); this.publicImportFile = importFile.getDependencies().get(0);
.setRecords(recordMetaData.toProto(dependencies)); MetaDataProtoTest.verifyEquals(recordMetaData, builder4.getRecordMetaData()); Descriptors.FileDescriptor dep4 = builder4.getRecordMetaData().getRecordsDescriptor().getDependencies().get(1); assertEquals(dep4.getName(), TestRecords1Proto.getDescriptor().getName()); assertSame(dep4, dependencies[0]); Descriptors.FileDescriptor dep2 = builder2.getRecordMetaData().getRecordsDescriptor().getDependencies().get(1); assertEquals(dep2.getName(), dep4.getName()); assertNotSame(dep2, dep4);
visit(fileDescriptor.getExtensions()); visit(fileDescriptor.getEnumTypes()); visit(fileDescriptor.getDependencies()); } else if (descriptor instanceof Descriptor) { Descriptor messageDescriptor = (Descriptor) descriptor;
visit(fileDescriptor.getExtensions()); visit(fileDescriptor.getEnumTypes()); visit(fileDescriptor.getDependencies()); } else if (descriptor instanceof Descriptor) { Descriptor messageDescriptor = (Descriptor) descriptor;
private void addFile(FileDescriptor file) { // Skip the file if it's already added. if (!files.add(file.getFullName())) { return; } for (FileDescriptor dependency : file.getDependencies()) { addFile(dependency); } for (Descriptor message : file.getMessageTypes()) { addMessage(message); } }
private void addFile(FileDescriptor file) { // Skip the file if it's already added. if (!files.add(file.getFullName())) { return; } for (FileDescriptor dependency : file.getDependencies()) { addFile(dependency); } for (Descriptor message : file.getMessageTypes()) { addMessage(message); } }
public FileDescriptorSetBuilder addFile(final FileDescriptor file) { if (!fileProtoSet.add(file.toProto())) { return this; } for (FileDescriptor dependency : file.getDependencies()) { addFile(dependency); } return this; }
private static FileDescriptorTreeProto persistFileDescriptorTree(FileDescriptor file) { FileDescriptorTreeProto.Builder builder = FileDescriptorTreeProto.newBuilder(); builder.setProtoFileDescriptor(file.toProto().toByteString()); for (FileDescriptor dependency : file.getDependencies()) { builder.addDependencies(persistFileDescriptorTree(dependency)); } return builder.build(); }
private Descriptors.FileDescriptor buildRecordDescriptor(@Nonnull DescriptorProtos.FileDescriptorProto proto) throws Descriptors.DescriptorValidationException { final Descriptors.FileDescriptor[] dependencies = new Descriptors.FileDescriptor[metaData.getRecordsDescriptor().getDependencies().size()]; metaData.getRecordsDescriptor().getDependencies().toArray(dependencies); return Descriptors.FileDescriptor.buildFrom(proto, dependencies); }
private static FileDescriptorTreeProto persistFileDescriptorTree(FileDescriptor file) { FileDescriptorTreeProto.Builder builder = FileDescriptorTreeProto.newBuilder(); builder.setProtoFileDescriptor(file.toProto().toByteString()); for (FileDescriptor dependency : file.getDependencies()) { builder.addDependencies(persistFileDescriptorTree(dependency)); } return builder.build(); }