public static Archive archive()

in examples-trunk/polling-parent/polling-client/src/main/java/jug/client/util/ConfigurableClasspathArchive.java [63:95]


    public static Archive archive(final ClassLoader loader, final URL location, boolean forceDescriptor) {
        try {
            URL scanXml = loader.getResource(SCAN_XML);
            if (scanXml == null && !forceDescriptor) {
                return ClasspathArchive.archive(loader, location);
            } else if (scanXml == null) {
                return new ClassesArchive();
            }

            // read descriptors
            ScanHandler scan;
            if (scanXml != null) {
                scan = read(scanXml);
            } else {
                scan = new ScanHandler();
            }

            final Archive packageArchive = packageArchive(scan.getPackages(), loader, location);
            final Archive classesArchive = classesArchive(scan.getPackages(), scan.getClasses(), loader);

            if (packageArchive != null && classesArchive != null) {
                return new CompositeArchive(classesArchive, packageArchive);
            } else if (packageArchive != null) {
                return packageArchive;
            }
            return classesArchive;
        } catch (IOException e) {
            if (forceDescriptor) {
                return new ClassesArchive();
            }
            return ClasspathArchive.archive(loader, location);
        }
    }