Package org.jboss.classloading.spi.metadata

Examples of org.jboss.classloading.spi.metadata.Requirement


   {
      ClassLoadingSpace space = getClassLoadingSpace();
      if (resolveSpace && space != null)
         space.resolve(this);

      Requirement requirement = dependency.getRequirement();
      return checkDomain().resolveModule(this, requirement);
   }
View Full Code Here


      if (dependencies == null || dependencies.isEmpty())
         return;
     
      for (RequirementDependencyItem item : dependencies)
      {
         Requirement requirement = item.getRequirement();
        
         // If we are looking at everything or this is a re-export
         if (reExport == false || requirement.isReExport())
         {
            // Sanity checks
            if (item.isResolved() == false)
               throw new IllegalStateException("Item not resolved: " + item);
           
            // Dynamic requirement, create it lazily
            if (requirement.isDynamic())
            {
               DelegateLoader delegate = createLazyDelegateLoader(checkDomain(), item);
               dynamic.add(delegate);
               continue;
            }

            String name = (String) item.getIDependOn();
            if (name == null)
            {
               // Optional requirement, just ignore
               if (requirement.isOptional())
                  continue;
               // Something has gone wrong
               throw new IllegalStateException("No iDependOn for item: " + item);
            }
            Module iDependOnModule = checkDomain().getModule(name);
            if (iDependOnModule == null)
               throw new IllegalStateException("Module not found with name: " + name);

            // Determine the delegate loader for the module
            Module other = item.getModule();
            DelegateLoader delegate = iDependOnModule.getDelegateLoader(other, requirement);

            // Check for re-export by the module
            if (requirement.wantReExports())
               addDelegates(iDependOnModule, delegates, dynamic, visited, true);
           
            // We want a module's re-exports (i.e. part of its imports) before the module itself
            if (delegate != null)
               delegates.add(delegate);
View Full Code Here

   {
      ClassLoadingSpace space = getClassLoadingSpace();
      if (resolveSpace && space != null)
         space.resolve(this);

      Requirement requirement = dependency.getRequirement();
      return checkDomain().resolveModule(this, requirement);
   }
View Full Code Here

      // Maps the iDependOnModule to the list of package names that we are importing
      Map<Module, List<String>> delegateToRequiredPackages = new LinkedHashMap<Module, List<String>>();
     
      for (RequirementDependencyItem item : dependencies)
      {
         Requirement requirement = item.getRequirement();
        
         // If we are looking at everything or this is a re-export
         if (reExport == false || requirement.isReExport())
         {
            // Sanity checks
            if (item.isResolved() == false)
               throw new IllegalStateException("Item not resolved: " + item);
           
            // Dynamic requirement, create it lazily
            if (requirement.isDynamic())
            {
               DelegateLoader delegate = createLazyDelegateLoader(checkDomain(), item);
               dynamic.add(delegate);
               continue;
            }
           
            Module iDependOnModule = item.getResolvedModule();
            if (iDependOnModule == null)
            {
               // Do it the hard way - probably optional or a self dependency?
               String name = (String) item.getIDependOn();
               if (name != null)
                  iDependOnModule = checkDomain().getModule(name);
               if (iDependOnModule == null)
               {
                  if (requirement.isOptional())
                     continue;
                  throw new IllegalStateException("Module not found for requirement: " + item);
               }
            }

            // Check for re-export by the module
            if (requirement.wantReExports())
               addDelegates(iDependOnModule, delegates, dynamic, visited, true);
           
            // Only add a the delegate if this is not a self-dependency
            if (iDependOnModule != module)
            {
View Full Code Here

      Set<Module> result = new HashSet<Module>();
      if (depends.isEmpty() == false)
      {
         for (RequirementDependencyItem item : depends)
         {
            Requirement requirement = item.getRequirement();
            if (type == null || type.isInstance(requirement))
               result.add(item.getModule());
         }
      }
      return result;
View Full Code Here

   {
      ClassLoadingSpace space = getClassLoadingSpace();
      if (resolveSpace && space != null)
         space.resolve(this);

      Requirement requirement = dependency.getRequirement();
      return checkDomain().resolveModule(this, requirement);
   }
View Full Code Here

         List<RequirementDependencyItem> requirementDependencyItems = module.getDependencies();
         if (requirementDependencyItems != null && requirementDependencyItems.isEmpty() == false)
         {
            for (RequirementDependencyItem dependencyItem : requirementDependencyItems)
            {
               Requirement requirement = dependencyItem.getRequirement();
               if (requirement instanceof ModuleRequirement && dependencyItem.isResolved())
               {
                  ModuleRequirement moduleRequirement = (ModuleRequirement) requirement;
                  if (name == null || name.equals(moduleRequirement.getName()))
                  {
View Full Code Here

      return resolvedModule;
   }

   public boolean resolve(Controller controller)
   {
      Requirement requirement = getRequirement();
      Module module = getModule().resolveModule(this, true);
     
      // No module present
      if (module == null)
      {
         setResolved(requirement.isOptional() || requirement.isDynamic());
         return isResolved();
      }

      // Self dependency
      if (module == this.module)
View Full Code Here

      ClassLoadingMetaDataFactory factory = ClassLoadingMetaDataFactory.getInstance();
     
      ClassLoadingMetaData test = new ClassLoadingMetaData();
      RequirementsMetaData requirementsMetaData = test.getRequirements();
      assertNull(requirementsMetaData.getRequirements());
      Requirement requirement = factory.createRequireModule("test");
      requirementsMetaData.addRequirement(requirement);
      assertEquals(Collections.singletonList(requirement), requirementsMetaData.getRequirements());

      ClassLoadingMetaData test2 = new ClassLoadingMetaData();
      testEquals(test, test2, false);
View Full Code Here

   }
  
   public void testCreateRequireModuleNoVersion() throws Exception
   {
      ClassLoadingMetaDataFactory factory = ClassLoadingMetaDataFactory.getInstance();
      Requirement test = factory.createRequireModule("test");
      assertEquals(new ModuleRequirement("test"), test);
   }
View Full Code Here

TOP

Related Classes of org.jboss.classloading.spi.metadata.Requirement

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.