public DynamicClassLoaderManagerImpl()

in src/main/java/org/apache/sling/maven/jspc/classloader/DynamicClassLoaderManagerImpl.java [56:85]


    public DynamicClassLoaderManagerImpl(final BundleContext ctx,
                                         final PackageAdmin pckAdmin,
                                         final ClassLoader parent,
                                         final DynamicClassLoaderManagerFactory factory) {
        this.deprecatedProviderTracker = new ServiceTracker(ctx, DynamicClassLoaderProvider.class.getName(),
                new ServiceTrackerCustomizer() {

                    public void removedService(final ServiceReference serviceRef,
                                               final Object paramObject) {
                        ctx.ungetService(serviceRef);
                    }

                    public void modifiedService(final ServiceReference serviceRef,
                                                final Object paramObject) {
                        // nothing to do
                    }

                    public Object addingService(final ServiceReference serviceRef) {
                        final Object obj = ctx.getService(serviceRef);
                        if ( obj != null ) {
                            logger.warn("Dynamic class loader does not support deprecated dynamic class loader providers: {} : {}",
                                    serviceRef, obj);
                        }
                        return obj;
                    }
                });
        this.deprecatedProviderTracker.open();
        this.loaders = new ClassLoader[] {new PackageAdminClassLoader(pckAdmin, parent, factory)};
        this.facade = new ClassLoaderFacade(this);
    }