Package org.impalaframework.module

Examples of org.impalaframework.module.ModuleDefinition


       
        //recursively build child definitions
        buildChildDefinitions(rootModuleDefinition, rootModuleName);
       
        for (String sibling : siblings) {
            ModuleDefinition siblingDefinition = buildModuleDefinition(null, sibling);
            buildChildDefinitions(siblingDefinition, siblingDefinition.getName());
            rootModuleDefinition.addSibling(siblingDefinition);
        }
        return rootModuleDefinition;
    }
View Full Code Here


   
    protected void buildChildDefinitions(ModuleDefinition parentDefinition, String parentModuleName) {
        Set<String> moduleChildren = children.get(parentModuleName);
        if (moduleChildren != null) {
            for (String moduleName : moduleChildren) {
                ModuleDefinition definition = buildModuleDefinition(parentDefinition, moduleName);
                buildChildDefinitions(definition, moduleName);
            }
        }
    }
View Full Code Here

        }
    }
   
    private RootModuleDefinition readRootModuleDefinition(Properties rootModuleProperties,
            TypeReader typeReader) {
        ModuleDefinition moduleDefinition = typeReader.readModuleDefinition(null, rootModuleName, rootModuleProperties);
        if (!(moduleDefinition instanceof RootModuleDefinition)) {
            throw new IllegalStateException("Type reader " + typeReader + " produced " + ModuleDefinition.class.getSimpleName() + " which is not an instance of " + RootModuleDefinition.class.getName());
        }
        RootModuleDefinition rootDefinition = (RootModuleDefinition) moduleDefinition;
        return rootDefinition;
View Full Code Here

       
        logger.info("With parent '" + parent + "', adding module: " + moduleDefinition);
       
        final Vertex parentVertex = getRequiredVertex(parent);
       
        ModuleDefinition parentDefinition = parentVertex.getModuleDefinition();
        parentDefinition.addChildModuleDefinition(moduleDefinition);
        moduleDefinition.setParentDefinition(parentDefinition);
       
        //now recursively add definitions
        List<Vertex> addedVertices = new ArrayList<Vertex>();
        populateDefinition(addedVertices, moduleDefinition);
View Full Code Here

     */
    private void populateVertexDependencies(Vertex vertex) {
       
        Assert.notNull(vertex, "vertex cannot be null");
       
        final ModuleDefinition moduleDefinition = vertex.getModuleDefinition();
       
        populateDependencies(vertex, moduleDefinition, false);
        populateDependencies(vertex, moduleDefinition, true);
    }
View Full Code Here

     * implementation. If no parent definition is available, the built {@link ModuleDefinition} instance
     * is added as a sibling to the {@link RootModuleDefinition}.
     */
    public RootModuleDefinition getModuleDefinition() {
       
        ModuleDefinition currentParentDefinition = parentDefinition;
        for (String moduleName : modulesToLoad) {
            ModuleDefinition definition = buildModuleDefinition(currentParentDefinition, moduleName);
           
            if (currentParentDefinition == null) {
                Assert.isTrue(!definition.getName().equals(rootModuleDefinition.getName()), "Module definition with no parent cannot be the root module definition");
                rootModuleDefinition.addSibling(definition);
            }
           
            currentParentDefinition = definition;
        }
View Full Code Here

            afterModuleLoaded(definition);
        }
    }
   
    public final void closeModule(RuntimeModule runtimeModule) {
        final ModuleDefinition moduleDefinition = runtimeModule.getModuleDefinition();
        classLoaderRegistry.removeClassLoader(moduleDefinition.getName());
        doCloseModule(runtimeModule);
    }
View Full Code Here

        return (rootModuleDefinition.findChildDefinition(moduleName, true) != null);
    }

    public String findLike(String moduleName) {
        RootModuleDefinition rootModuleDefinition = getModuleStateHolder().getRootModuleDefinition();
        ModuleDefinition definition = rootModuleDefinition.findChildDefinition(moduleName, false);
        if (definition != null) {
            return definition.getName();
        }
        return null;
    }
View Full Code Here

    class Test3 implements ModuleDefinitionSource {
        ModuleDefinitionSource source = new SimpleModuleDefinitionSource("impala-core", new String[] { "parentTestContext.xml" }, new String[] { plugin1, plugin2 });

        public Test3() {

            ModuleDefinition p2 = source.getModuleDefinition().getChildModuleDefinition(plugin2);
            new SimpleModuleDefinition(p2, plugin3);
        }
View Full Code Here

    public void testGetModuleDefinitionGraph() {
        moduleDefinitionSource.setResource(new ClassPathResource("xmlinternal/modulegraph.xml"));
        RootModuleDefinition moduleDefinition = moduleDefinitionSource.getModuleDefinition();
        System.out.println(moduleDefinition);
       
        ModuleDefinition definition1 = getDefinition(moduleDefinition, "sample-module1");
        assertEquals(ModuleTypes.APPLICATION, definition1.getType());
        assertEquals(Arrays.asList(new String[0]), definition1.getConfigLocations());
       
        ModuleDefinition definition2 = getDefinition(moduleDefinition, "sample-module2");
        getDefinition(definition2, "sample-module3");
        getDefinition(definition2, "sample-module4");
       
        ModuleDefinition definition5 = moduleDefinition.getSiblingModule("sample-module5");
        assertNotNull(definition5);
       
        ModuleDefinition definition = getDefinition(definition5, "sample-module6");
        assertEquals(Arrays.asList("sample-module3,sample-module4,sample-module5".split(",")), definition.getDependentModuleNames(false));
    }
View Full Code Here

TOP

Related Classes of org.impalaframework.module.ModuleDefinition

Copyright © 2018 www.massapicom. 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.