static EntityMetadata parse()

in src/main/java/org/apache/skywalking/banyandb/v1/client/metadata/MetadataCache.java [106:122]


    static EntityMetadata parse(Stream s) {
        int totalTags = 0;
        final int[] tagFamilyCapacity = new int[s.getTagFamiliesList().size()];
        Map<String, TagInfo> tagInfo = new HashMap<>();
        int k = 0;
        for (int i = 0; i < s.getTagFamiliesList().size(); i++) {
            final String tagFamilyName = s.getTagFamiliesList().get(i).getName();
            tagFamilyCapacity[i] = s.getTagFamiliesList().get(i).getTagsList().size();
            totalTags += tagFamilyCapacity[i];
            for (int j = 0; j < tagFamilyCapacity[i]; j++) {
                tagInfo.put(s.getTagFamiliesList().get(i).getTagsList().get(j).getName(), new TagInfo(tagFamilyName, k++));
            }
        }
        return new EntityMetadata(s.getMetadata().getGroup(), s.getMetadata().getName(), s.getMetadata().getModRevision(), totalTags, 0, tagFamilyCapacity,
                Collections.unmodifiableMap(tagInfo),
                Collections.emptyMap());
    }