class ExplorerServiceHelper {

    public boolean hasAssets(final Package pkg) {
        if (pkg == null) {
            return false;
        }

        if (hasAssets(pkg.getPackageMainSrcPath())
                || hasAssets(pkg.getPackageTestSrcPath())
                || hasAssets(pkg.getPackageMainResourcesPath())
                || hasAssets(pkg.getPackageTestResourcesPath())) {
            return true;
        }

        final Set<Package> childPackages = moduleService.resolvePackages(pkg);
        for (final Package childPackage : childPackages) {

            if (!childPackage.equals(pkg) && hasAssets(childPackage)) {
                return true;
            }
        }

        return false;
    }

    public  ExplorerServiceHelper();
    @Inject public  ExplorerServiceHelper(final KieModuleService moduleService,
                                 final FolderListingResolver folderListingResolver,
                                 @Named("ioStrategy") final IOService ioService,
                                 @Named("configIO") final IOService ioServiceConfig,
                                 final VFSLockServiceImpl lockService,
                                 final MetadataService metadataService,
                                 final UserServicesImpl userServices,
                                 final DeleteService deleteService,
                                 final RenameService renameService,
                                 final CopyService copyService,
                                 @Managed final ExecutorService executorService);

}