Examples of ClassRealm


Examples of org.codehaus.plexus.classworlds.realm.ClassRealm

        this.digest = digest;
    }
   
    private Class<?> getMojoClass(MojoDescriptor md, PluginDescriptor pd) throws ClassNotFoundException {
        try {
            ClassRealm classRealm = pd.getClassRealm();
            return classRealm == null ? null : classRealm.loadClass( md.getImplementation() );
        } catch (NoSuchMethodError e) {
            // maybe we are in maven2 build ClassRealm package has changed
            return getMojoClassForMaven2( md, pd );
        }
    }
View Full Code Here

Examples of org.codehaus.plexus.classworlds.realm.ClassRealm

       
        if (world == null) {
            world = new ClassWorld();
        }
       
        ClassRealm classRealm = createClassRealm( world, "plexus.core", parentClassLoader == null ? antClassLoader : parentClassLoader );

        for ( File jarFile : jarFiles ) {
            try {
                classRealm.addURL( jarFile.toURI().toURL() );
            } catch ( MalformedURLException e ) {
                throw new MavenEmbedderException( e.getMessage(), e );
            }
        }
        return classRealm;
View Full Code Here

Examples of org.codehaus.plexus.classworlds.realm.ClassRealm

    }
   
    public static PlexusContainer buildPlexusContainer(File mavenHome, MavenRequest mavenRequest) throws MavenEmbedderException {
        ClassWorld world = new ClassWorld("plexus.core", Thread.currentThread().getContextClassLoader());

        ClassRealm classRealm = MavenEmbedderUtils.buildClassRealm( mavenHome, world, Thread.currentThread().getContextClassLoader() );

        DefaultContainerConfiguration conf = new DefaultContainerConfiguration();

        conf.setContainerConfigurationURL( mavenRequest.getOverridingComponentsXml() )
            .setRealm( classRealm )
View Full Code Here

Examples of org.codehaus.plexus.classworlds.realm.ClassRealm

            .setComponentVisibility( mavenRequest.getContainerComponentVisibility() )
            .setContainerConfigurationURL(mavenRequest.getOverridingComponentsXml());

        ClassWorld classWorld = new ClassWorld();

        ClassRealm parentRealm = createParentRealm(classWorld, parent,
                                                   MavenExecutionRequestPopulator.class,
                                                   RepositorySystem.class,
                                                   PlexusCipher.class);

        ClassRealm classRealm = createClassRealm( classWorld, "maven", mavenClassLoader );
        classRealm.setParentRealm( parentRealm );
        conf.setRealm( classRealm );

        conf.setClassWorld( classWorld );

        return buildPlexusContainer(mavenRequest,conf);
View Full Code Here

Examples of org.codehaus.plexus.classworlds.realm.ClassRealm

    private static ClassRealm createParentRealm(ClassWorld classWorld, ClassLoader parent, Class... requiredClasses) {
        ClassLoader parentCL = parent == null ? Thread.currentThread().getContextClassLoader() : parent;
        Set<ClassLoader> usedCLs = new HashSet<ClassLoader>();
        usedCLs.add(parentCL);

        ClassRealm parentRealm = createClassRealm( classWorld, "maven-parent", parentCL);

        int i = 1;
        ClassRealm lastParent = parentRealm;
        for ( Class c : requiredClasses ) {
            if ( usedCLs.add(c.getClassLoader()) ) {
                ClassRealm newParent = createClassRealm( classWorld, "maven-parent" + i++, c.getClassLoader() );
                lastParent.setParentRealm( newParent );
                lastParent = newParent;
            }
        }
View Full Code Here

Examples of org.codehaus.plexus.classworlds.realm.ClassRealm

            throw new MavenEmbedderException( e.getMessage(), e );
        }
    }

    private static ClassRealm createClassRealm(ClassWorld world, String id, ClassLoader baseClassLoader) {
        return isIBM_JVM ? new IBMClassRealm(world, id, baseClassLoader) : new ClassRealm(world, id, baseClassLoader);
    }
View Full Code Here

Examples of org.codehaus.plexus.classworlds.realm.ClassRealm

    {
        if ( hint == null ) hint = PLEXUS_DEFAULT_HINT;

        try
        {
            ClassRealm realm = container.getLookupRealm();

            if ( realm != null )
            {
                return realm.loadClass( role );
            }
        }
        catch ( Throwable e )
        {
        }
View Full Code Here

Examples of org.codehaus.plexus.classworlds.realm.ClassRealm

            }
        }

        private ConverterLookup createConverterLookup()
        {
            ClassRealm realm = (ClassRealm) Thread.currentThread().getContextClassLoader();
            ConverterLookup lookup = new DefaultConverterLookup();
            lookup.registerConverter( new ClassRealmConverter( realm ) );
            return lookup;
        }
View Full Code Here

Examples of org.codehaus.plexus.classworlds.realm.ClassRealm

    private ThreadLocal<ClassRealm> lookupRealm = new ThreadLocal<ClassRealm>();

    public void addComponent( Object component, String role )
        throws ComponentRepositoryException
    {
        ClassRealm classRealm = null;

        // find a realm for this instance
        ClassLoader classLoader = Thread.currentThread().getContextClassLoader();
        if ( classLoader instanceof ClassRealm )
        {
View Full Code Here

Examples of org.codehaus.plexus.classworlds.realm.ClassRealm

        componentRegistry.addComponent( component, type, roleHint, classRealm );
    }

    public ClassRealm setLookupRealm( ClassRealm realm )
    {
        ClassRealm oldRealm = lookupRealm.get();

        lookupRealm.set( realm );

        return oldRealm;
    }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.