/** * Creates and return a new private module implementation giving a name and * version constraints. A private module is like any other module except * it is not registered to be shared by other potential module users. * * @param moduleName the module name * @param version the desired version * @return the new private module or null if cannot be found * @throws com.sun.enterprise.module.ResolveError if the module dependencies cannot be resolved */ /*package*/ ModuleImpl newPrivateModuleFor(String moduleName, String version) { if(parent!=null) { ModuleImpl m = ModulesRegistryImpl.class.cast(parent).newPrivateModuleFor(moduleName,version); if(m!=null) return m; } ModuleId id = AbstractFactory.getInstance().createModuleId(moduleName, version); Module module = modules.get(id); if (module!=null) { ModuleImpl privateModule = (ModuleImpl)newModule(module.getModuleDefinition()); privateModule.resolve(); return privateModule; } return (ModuleImpl)loadFromRepository(moduleName, version); }
/** * Creates and return a new private module implementation giving a name and * version constraints. A private module is like any other module except * it is not registered to be shared by other potential module users. * * @param moduleName the module name * @param version the desired version * @return the new private module or null if cannot be found * @throws com.sun.enterprise.module.ResolveError if the module dependencies cannot be resolved */ /*package*/ ModuleImpl newPrivateModuleFor(String moduleName, String version) { if(parent!=null) { ModuleImpl m = ModulesRegistryImpl.class.cast(parent).newPrivateModuleFor(moduleName,version); if(m!=null) return m; } ModuleId id = AbstractFactory.getInstance().createModuleId(moduleName, version); Module module = modules.get(id); if (module!=null) { ModuleImpl privateModule = (ModuleImpl)newModule(module.getModuleDefinition()); privateModule.resolve(); return privateModule; } return (ModuleImpl)loadFromRepository(moduleName, version); }
/** * Create and add a new module to this module's list of * imports. * @param dependency new module's definition */ public Module addImport(ModuleDependency dependency) { ModuleImpl newModule; if (dependency.isShared()) { newModule = (ModuleImpl)registry.makeModuleFor(dependency.getName(), dependency.getVersion()); } else { newModule = registry.newPrivateModuleFor(dependency.getName(), dependency.getVersion()); } addImport(newModule); return newModule; }
/** * Create and add a new module to this module's list of * imports. * @param dependency new module's definition */ public Module addImport(ModuleDependency dependency) { ModuleImpl newModule; if (dependency.isShared()) { newModule = (ModuleImpl)registry.makeModuleFor(dependency.getName(), dependency.getVersion()); } else { newModule = registry.newPrivateModuleFor(dependency.getName(), dependency.getVersion()); } addImport(newModule); return newModule; }