docs: private Deferred<List<String>> resolveAggTags(final Set<byte[]> tagks) {
      if (aggregated_tags != null) {
        return Deferred.fromResult(null);
      }
      aggregated_tags = new ArrayList<String>(tagks.size());
      
      final List<Deferred<String>> names = 
          new ArrayList<Deferred<String>>(tagks.size());
      for (final byte[] tagk : tagks) {
        names.add(tsdb.tag_names.getNameAsync(tagk));
      }
      
      /** Adds the names to the aggregated_tags list */
      final class ResolveCB implements Callback<List<String>, ArrayList<String>> {
        @Override
        public List<String> call(final ArrayList<String> names) throws Exception {
          for (final String name : names) {
            aggregated_tags.add(name);
          }
          return aggregated_tags;
        }
      }
      
      return Deferred.group(names).addCallback(new ResolveCB());
    }