code: public void getDomainPatches(final AsyncCallback<List<Patches>> callback) {
          final List<Patches> patches = new ArrayList<>();
          final List<Function<List<Patches>>> functions = new ArrayList<>();
          for (String host : hostStore.getHostNames()) {
              functions.add(new ReadPatches(host));
          }
  
          //noinspection unchecked
          new Async<List<Patches>>().parallel(patches, new Outcome<List<Patches>>() {
              @Override
              public void onFailure(List<Patches> context) {
                  callback.onSuccess(context);
              }
  
              @Override
              public void onSuccess(List<Patches> context) {
                  callback.onSuccess(context);
  
              }
          }, functions.toArray(new Function[functions.size()]));
      }
docs: TODO (hpehl) Check performance for big topologies