class DataFetchingUtils {

    public Set<String> getDeliveryDependencies(final RepositoryHandler repoHandler,
                                               final DependencyHandler depHandler,
                                               final Delivery delivery) {

        final FiltersHolder filters = new FiltersHolder();
        filters.getDecorator().setShowCorporate(Boolean.FALSE);
        filters.getDecorator().setShowThirdparty(Boolean.TRUE);

        Set<String> deps = new HashSet<>();

        delivery.getDependencies().forEach(d -> {
            final DbModule module = repoHandler.getModule(d);
            if (module != null) {
                final List<Dependency> allDependencies = depHandler.getModuleDependencies(module.getId(), filters);
                allDependencies.forEach(dep -> deps.add(dep.getTarget().getGavc()));
            } else {
                //
                // This stripping occurs because the dep.getTarget().getGavc() returns the
                // "short form" of the artifact group_id:artifact_id:version
                //
                if(isFullGAVC(d)) {
                    deps.add(strip(d, 2));
                } else {
                    deps.add(d);
                }
            }
        });

        return deps;
    }

}