class NpmRepairPackageRootComponent extends RepairMetadataComponent {

  public void repair() {
    log.info("Beginning processing all npm packages for repair");

    stream(repositoryManager.browse().spliterator(), false)
        .filter(this::shouldRepairRepository)
        .forEach(this::doRepairRepository);
  }

  @Inject public  NpmRepairPackageRootComponent(final RepositoryManager repositoryManager,
                                       final AssetEntityAdapter assetEntityAdapter,
                                       final NpmPackageParser npmPackageParser,
                                       @Named(HostedType.NAME) final Type hostedType,
                                       @Named(NpmFormat.NAME) final Format npmFormat);

}