Package org.jboss.forge.furnace.modules.providers

Source Code of org.jboss.forge.furnace.modules.providers.AbstractModuleSpecProvider

package org.jboss.forge.furnace.modules.providers;

import java.io.File;
import java.io.IOException;
import java.net.URISyntaxException;
import java.net.URL;
import java.net.URLClassLoader;
import java.util.Enumeration;
import java.util.HashSet;
import java.util.Set;
import java.util.jar.JarEntry;
import java.util.jar.JarFile;

import org.jboss.forge.furnace.modules.ModuleSpecProvider;
import org.jboss.modules.DependencySpec;
import org.jboss.modules.ModuleIdentifier;
import org.jboss.modules.ModuleLoader;
import org.jboss.modules.ModuleSpec;
import org.jboss.modules.ModuleSpec.Builder;
import org.jboss.modules.filter.PathFilters;

/**
* This class is the base class for any {@link ModuleSpecProvider} implementation inside Furnace
*/
public abstract class AbstractModuleSpecProvider implements ModuleSpecProvider
{
   @Override
   public ModuleSpec get(ModuleLoader loader, ModuleIdentifier id)
   {
      if (getId().equals(id))
      {
         Builder builder = ModuleSpec.build(id);
         builder.addDependency(DependencySpec.createClassLoaderDependencySpec(PathFilters.acceptAll(),
                  PathFilters.acceptAll(), ClassLoader.getSystemClassLoader(), getPaths()));

         configure(loader, builder);

         return builder.create();
      }
      return null;
   }

   protected void configure(ModuleLoader loader, Builder builder)
   {
   }

   protected abstract ModuleIdentifier getId();

   protected abstract Set<String> getPaths();

   static protected Set<String> systemPaths = new HashSet<String>();

   private static Set<String> getPathsFrom(String root, File file)
   {
      Set<String> result = new HashSet<String>();
      String[] children = file.list();
      for (String name : children)
      {
         File child = new File(file, name);
         if (child.isDirectory())
         {
            result.addAll(getPathsFrom(root, child));
            String path = child.getAbsolutePath().substring(root.length() + 1);
            result.add(path);
         }
      }
      return result;
   }

   protected static Set<String> getLoaderPaths()
   {
      Set<String> result = new HashSet<String>();
      ClassLoader loader = ClassLoader.getSystemClassLoader();
      URL[] urls = ((URLClassLoader) loader).getURLs();

      for (URL url : urls)
      {
         try
         {
            File file = new File(url.toURI());
            if (file.isDirectory())
            {
               result.addAll(getPathsFrom(file.getAbsolutePath(), file));
            }
            else if (!file.isDirectory())
            {
               JarFile jar = new JarFile(file);
               Enumeration<JarEntry> entries = jar.entries();
               while (entries.hasMoreElements())
               {
                  JarEntry entry = entries.nextElement();
                  String name = entry.getName();
                  if (name.indexOf('/') != -1)
                     result.add(name.substring(0, name.lastIndexOf('/')));
               }
            }
         }
         catch (IOException e)
         {
            System.out.println("Failed loading paths from: [" + url.toString() + "]. Attempting folder discovery");
         }
         catch (URISyntaxException e)
         {
            throw new RuntimeException(e);
         }
      }
      return result;
   }

   static
   {

      systemPaths.add("META-INF");
      systemPaths.add("META-INF/services");
      systemPaths.add("__redirected");
      systemPaths.add("ch/qos/cal10n");
      systemPaths.add("ch/qos/cal10n/util");
      systemPaths.add("ch/qos/cal10n/verifier");
      systemPaths.add("com/google/common/annotations");
      systemPaths.add("com/google/common/base");
      systemPaths.add("com/google/common/base/internal");
      systemPaths.add("com/google/common/cache");
      systemPaths.add("com/google/common/collect");
      systemPaths.add("com/google/common/eventbus");
      systemPaths.add("com/google/common/hash");
      systemPaths.add("com/google/common/io");
      systemPaths.add("com/google/common/math");
      systemPaths.add("com/google/common/net");
      systemPaths.add("com/google/common/primitives");
      systemPaths.add("com/google/common/util/concurrent");
      systemPaths.add("java/awt");
      systemPaths.add("java/awt/color");
      systemPaths.add("java/awt/datatransfer");
      systemPaths.add("java/awt/dnd");
      systemPaths.add("java/awt/dnd/peer");
      systemPaths.add("java/awt/event");
      systemPaths.add("java/awt/font");
      systemPaths.add("java/awt/geom");
      systemPaths.add("java/awt/im");
      systemPaths.add("java/awt/im/spi");
      systemPaths.add("java/awt/image");
      systemPaths.add("java/awt/image/renderable");
      systemPaths.add("java/awt/peer");
      systemPaths.add("java/awt/print");
      systemPaths.add("java/beans");
      systemPaths.add("java/beans/beancontext");
      systemPaths.add("java/io");
      systemPaths.add("java/lang");
      systemPaths.add("java/lang/annotation");
      systemPaths.add("java/lang/instrument");
      systemPaths.add("java/lang/management");
      systemPaths.add("java/lang/ref");
      systemPaths.add("java/lang/reflect");
      systemPaths.add("java/math");
      systemPaths.add("java/net");
      systemPaths.add("java/nio");
      systemPaths.add("java/nio/channels");
      systemPaths.add("java/nio/channels/spi");
      systemPaths.add("java/nio/charset");
      systemPaths.add("java/nio/charset/spi");
      systemPaths.add("java/rmi");
      systemPaths.add("java/rmi/activation");
      systemPaths.add("java/rmi/dgc");
      systemPaths.add("java/rmi/registry");
      systemPaths.add("java/rmi/server");
      systemPaths.add("java/security");
      systemPaths.add("java/security/acl");
      systemPaths.add("java/security/cert");
      systemPaths.add("java/security/interfaces");
      systemPaths.add("java/security/spec");
      systemPaths.add("java/sql");
      systemPaths.add("java/text");
      systemPaths.add("java/text/spi");
      systemPaths.add("java/util");
      systemPaths.add("java/util/concurrent");
      systemPaths.add("java/util/concurrent/atomic");
      systemPaths.add("java/util/concurrent/locks");
      systemPaths.add("java/util/jar");
      systemPaths.add("java/util/logging");
      systemPaths.add("java/util/prefs");
      systemPaths.add("java/util/regex");
      systemPaths.add("java/util/spi");
      systemPaths.add("java/util/zip");
      systemPaths.add("javassist");
      systemPaths.add("javassist/bytecode");
      systemPaths.add("javassist/bytecode/analysis");
      systemPaths.add("javassist/bytecode/annotation");
      systemPaths.add("javassist/bytecode/stackmap");
      systemPaths.add("javassist/compiler");
      systemPaths.add("javassist/compiler/ast");
      systemPaths.add("javassist/convert");
      systemPaths.add("javassist/expr");
      systemPaths.add("javassist/runtime");
      systemPaths.add("javassist/scopedpool");
      systemPaths.add("javassist/tools");
      systemPaths.add("javassist/tools/reflect");
      systemPaths.add("javassist/tools/rmi");
      systemPaths.add("javassist/tools/web");
      systemPaths.add("javassist/util");
      systemPaths.add("javassist/util/proxy");
      systemPaths.add("javax");
      systemPaths.add("javax/accessibility");
      systemPaths.add("javax/activation");
      systemPaths.add("javax/activity");
      systemPaths.add("javax/annotation");
      systemPaths.add("javax/annotation/concurrent");
      systemPaths.add("javax/annotation/meta");
      systemPaths.add("javax/annotation/processing");
      systemPaths.add("javax/annotation/security");
      systemPaths.add("javax/crypto");
      systemPaths.add("javax/crypto/interfaces");
      systemPaths.add("javax/crypto/spec");
      systemPaths.add("javax/decorator");
      systemPaths.add("javax/el");
      systemPaths.add("javax/enterprise/context");
      systemPaths.add("javax/enterprise/context/spi");
      systemPaths.add("javax/enterprise/event");
      systemPaths.add("javax/enterprise/inject");
      systemPaths.add("javax/enterprise/inject/spi");
      systemPaths.add("javax/enterprise/util");
      systemPaths.add("javax/imageio");
      systemPaths.add("javax/imageio/event");
      systemPaths.add("javax/imageio/metadata");
      systemPaths.add("javax/imageio/plugins/bmp");
      systemPaths.add("javax/imageio/plugins/jpeg");
      systemPaths.add("javax/imageio/spi");
      systemPaths.add("javax/imageio/stream");
      systemPaths.add("javax/inject");
      systemPaths.add("javax/interceptor");
      systemPaths.add("javax/jws");
      systemPaths.add("javax/jws/soap");
      systemPaths.add("javax/lang/model");
      systemPaths.add("javax/lang/model/element");
      systemPaths.add("javax/lang/model/type");
      systemPaths.add("javax/lang/model/util");
      systemPaths.add("javax/management");
      systemPaths.add("javax/management/loading");
      systemPaths.add("javax/management/modelmbean");
      systemPaths.add("javax/management/monitor");
      systemPaths.add("javax/management/openmbean");
      systemPaths.add("javax/management/relation");
      systemPaths.add("javax/management/remote");
      systemPaths.add("javax/management/remote/rmi");
      systemPaths.add("javax/management/timer");
      systemPaths.add("javax/media/j3d");
      systemPaths.add("javax/media/jai");
      systemPaths.add("javax/media/jai/iterator");
      systemPaths.add("javax/media/jai/operator");
      systemPaths.add("javax/media/jai/registry");
      systemPaths.add("javax/media/jai/remote");
      systemPaths.add("javax/media/jai/tilecodec");
      systemPaths.add("javax/media/jai/util");
      systemPaths.add("javax/media/jai/widget");
      systemPaths.add("javax/naming");
      systemPaths.add("javax/naming/directory");
      systemPaths.add("javax/naming/event");
      systemPaths.add("javax/naming/ldap");
      systemPaths.add("javax/naming/spi");
      systemPaths.add("javax/net");
      systemPaths.add("javax/net/ssl");
      systemPaths.add("javax/print");
      systemPaths.add("javax/print/attribute");
      systemPaths.add("javax/print/attribute/standard");
      systemPaths.add("javax/print/event");
      systemPaths.add("javax/rmi");
      systemPaths.add("javax/rmi/CORBA");
      systemPaths.add("javax/rmi/ssl");
      systemPaths.add("javax/script");
      systemPaths.add("javax/security/auth");
      systemPaths.add("javax/security/auth/callback");
      systemPaths.add("javax/security/auth/kerberos");
      systemPaths.add("javax/security/auth/login");
      systemPaths.add("javax/security/auth/spi");
      systemPaths.add("javax/security/auth/x500");
      systemPaths.add("javax/security/cert");
      systemPaths.add("javax/security/sasl");
      systemPaths.add("javax/servlet");
      systemPaths.add("javax/servlet/annotation");
      systemPaths.add("javax/servlet/descriptor");
      systemPaths.add("javax/servlet/http");
      systemPaths.add("javax/smartcardio");
      systemPaths.add("javax/sound/midi");
      systemPaths.add("javax/sound/midi/spi");
      systemPaths.add("javax/sound/sampled");
      systemPaths.add("javax/sound/sampled/spi");
      systemPaths.add("javax/sql");
      systemPaths.add("javax/sql/rowset");
      systemPaths.add("javax/sql/rowset/serial");
      systemPaths.add("javax/sql/rowset/spi");
      systemPaths.add("javax/swing");
      systemPaths.add("javax/swing/border");
      systemPaths.add("javax/swing/colorchooser");
      systemPaths.add("javax/swing/event");
      systemPaths.add("javax/swing/filechooser");
      systemPaths.add("javax/swing/plaf");
      systemPaths.add("javax/swing/plaf/basic");
      systemPaths.add("javax/swing/plaf/metal");
      systemPaths.add("javax/swing/plaf/multi");
      systemPaths.add("javax/swing/plaf/synth");
      systemPaths.add("javax/swing/table");
      systemPaths.add("javax/swing/text");
      systemPaths.add("javax/swing/text/html");
      systemPaths.add("javax/swing/text/html/parser");
      systemPaths.add("javax/swing/text/rtf");
      systemPaths.add("javax/swing/tree");
      systemPaths.add("javax/swing/undo");
      systemPaths.add("javax/tools");
      systemPaths.add("javax/transaction");
      systemPaths.add("javax/transaction/xa");
      systemPaths.add("javax/vecmath");
      systemPaths.add("javax/xml");
      systemPaths.add("javax/xml/bind");
      systemPaths.add("javax/xml/bind/annotation");
      systemPaths.add("javax/xml/bind/annotation/adapters");
      systemPaths.add("javax/xml/bind/attachment");
      systemPaths.add("javax/xml/bind/helpers");
      systemPaths.add("javax/xml/bind/util");
      systemPaths.add("javax/xml/crypto");
      systemPaths.add("javax/xml/crypto/dom");
      systemPaths.add("javax/xml/crypto/dsig");
      systemPaths.add("javax/xml/crypto/dsig/dom");
      systemPaths.add("javax/xml/crypto/dsig/keyinfo");
      systemPaths.add("javax/xml/crypto/dsig/spec");
      systemPaths.add("javax/xml/datatype");
      systemPaths.add("javax/xml/namespace");
      systemPaths.add("javax/xml/parsers");
      systemPaths.add("javax/xml/soap");
      systemPaths.add("javax/xml/stream");
      systemPaths.add("javax/xml/stream/events");
      systemPaths.add("javax/xml/stream/util");
      systemPaths.add("javax/xml/transform");
      systemPaths.add("javax/xml/transform/dom");
      systemPaths.add("javax/xml/transform/sax");
      systemPaths.add("javax/xml/transform/stax");
      systemPaths.add("javax/xml/transform/stream");
      systemPaths.add("javax/xml/validation");
      systemPaths.add("javax/xml/ws");
      systemPaths.add("javax/xml/ws/handler");
      systemPaths.add("javax/xml/ws/handler/soap");
      systemPaths.add("javax/xml/ws/http");
      systemPaths.add("javax/xml/ws/soap");
      systemPaths.add("javax/xml/ws/spi");
      systemPaths.add("javax/xml/ws/wsaddressing");
      systemPaths.add("javax/xml/xpath");
      systemPaths.add("junit/extensions");
      systemPaths.add("junit/framework");
      systemPaths.add("junit/runner");
      systemPaths.add("junit/textui");
      systemPaths.add("net/sf/cglib");
      systemPaths.add("net/sf/cglib/core");
      systemPaths.add("net/sf/cglib/proxy");
      systemPaths.add("org/apache/commons/logging");
      systemPaths.add("org/apache/commons/logging/impl");
      systemPaths.add("org/apache/log4j");
      systemPaths.add("org/apache/log4j/chainsaw");
      systemPaths.add("org/apache/log4j/config");
      systemPaths.add("org/apache/log4j/helpers");
      systemPaths.add("org/apache/log4j/jdbc");
      systemPaths.add("org/apache/log4j/jmx");
      systemPaths.add("org/apache/log4j/lf5");
      systemPaths.add("org/apache/log4j/lf5/util");
      systemPaths.add("org/apache/log4j/lf5/viewer");
      systemPaths.add("org/apache/log4j/lf5/viewer/categoryexplorer");
      systemPaths.add("org/apache/log4j/lf5/viewer/configure");
      systemPaths.add("org/apache/log4j/net");
      systemPaths.add("org/apache/log4j/nt");
      systemPaths.add("org/apache/log4j/or");
      systemPaths.add("org/apache/log4j/or/jms");
      systemPaths.add("org/apache/log4j/or/sax");
      systemPaths.add("org/apache/log4j/spi");
      systemPaths.add("org/apache/log4j/varia");
      systemPaths.add("org/apache/log4j/xml");
      systemPaths.add("org/apache/maven/artifact/repository/metadata");
      systemPaths.add("org/apache/maven/artifact/repository/metadata/io/xpp3");
      systemPaths.add("org/apache/maven/model");
      systemPaths.add("org/apache/maven/model/building");
      systemPaths.add("org/apache/maven/model/composition");
      systemPaths.add("org/apache/maven/model/inheritance");
      systemPaths.add("org/apache/maven/model/interpolation");
      systemPaths.add("org/apache/maven/model/io");
      systemPaths.add("org/apache/maven/model/io/xpp3");
      systemPaths.add("org/apache/maven/model/locator");
      systemPaths.add("org/apache/maven/model/management");
      systemPaths.add("org/apache/maven/model/merge");
      systemPaths.add("org/apache/maven/model/normalization");
      systemPaths.add("org/apache/maven/model/path");
      systemPaths.add("org/apache/maven/model/plugin");
      systemPaths.add("org/apache/maven/model/profile");
      systemPaths.add("org/apache/maven/model/profile/activation");
      systemPaths.add("org/apache/maven/model/resolution");
      systemPaths.add("org/apache/maven/model/superpom");
      systemPaths.add("org/apache/maven/model/validation");
      systemPaths.add("org/apache/maven/plugin/surefire/runorder");
      systemPaths.add("org/apache/maven/repository/internal");
      systemPaths.add("org/apache/maven/settings");
      systemPaths.add("org/apache/maven/settings/building");
      systemPaths.add("org/apache/maven/settings/crypto");
      systemPaths.add("org/apache/maven/settings/io");
      systemPaths.add("org/apache/maven/settings/io/xpp3");
      systemPaths.add("org/apache/maven/settings/merge");
      systemPaths.add("org/apache/maven/settings/validation");
      systemPaths.add("org/apache/maven/surefire");
      systemPaths.add("org/apache/maven/surefire/booter");
      systemPaths.add("org/apache/maven/surefire/providerapi");
      systemPaths.add("org/apache/maven/surefire/report");
      systemPaths.add("org/apache/maven/surefire/shade/org/codehaus/plexus/util");
      systemPaths.add("org/apache/maven/surefire/suite");
      systemPaths.add("org/apache/maven/surefire/testset");
      systemPaths.add("org/apache/maven/surefire/util");
      systemPaths.add("org/apache/maven/surefire/util/internal");
      systemPaths.add("org/apache/maven/wagon");
      systemPaths.add("org/apache/maven/wagon/authentication");
      systemPaths.add("org/apache/maven/wagon/authorization");
      systemPaths.add("org/apache/maven/wagon/events");
      systemPaths.add("org/apache/maven/wagon/observers");
      systemPaths.add("org/apache/maven/wagon/providers/file");
      systemPaths.add("org/apache/maven/wagon/providers/http");
      systemPaths.add("org/apache/maven/wagon/proxy");
      systemPaths.add("org/apache/maven/wagon/repository");
      systemPaths.add("org/apache/maven/wagon/resource");
      systemPaths.add("org/apache/maven/wagon/shared/http");
      systemPaths.add("org/apache/xbean/propertyeditor");
      systemPaths.add("org/apache/xbean/recipe");
      systemPaths.add("org/codehaus/classworlds");
      systemPaths.add("org/codehaus/plexus");
      systemPaths.add("org/codehaus/plexus/classworlds");
      systemPaths.add("org/codehaus/plexus/classworlds/launcher");
      systemPaths.add("org/codehaus/plexus/classworlds/realm");
      systemPaths.add("org/codehaus/plexus/classworlds/strategy");
      systemPaths.add("org/codehaus/plexus/component");
      systemPaths.add("org/codehaus/plexus/component/annotations");
      systemPaths.add("org/codehaus/plexus/component/builder");
      systemPaths.add("org/codehaus/plexus/component/collections");
      systemPaths.add("org/codehaus/plexus/component/composition");
      systemPaths.add("org/codehaus/plexus/component/configurator");
      systemPaths.add("org/codehaus/plexus/component/configurator/converters");
      systemPaths.add("org/codehaus/plexus/component/configurator/converters/basic");
      systemPaths.add("org/codehaus/plexus/component/configurator/converters/composite");
      systemPaths.add("org/codehaus/plexus/component/configurator/converters/lookup");
      systemPaths.add("org/codehaus/plexus/component/configurator/converters/special");
      systemPaths.add("org/codehaus/plexus/component/configurator/expression");
      systemPaths.add("org/codehaus/plexus/component/discovery");
      systemPaths.add("org/codehaus/plexus/component/factory");
      systemPaths.add("org/codehaus/plexus/component/factory/java");
      systemPaths.add("org/codehaus/plexus/component/manager");
      systemPaths.add("org/codehaus/plexus/component/repository");
      systemPaths.add("org/codehaus/plexus/component/repository/exception");
      systemPaths.add("org/codehaus/plexus/component/repository/io");
      systemPaths.add("org/codehaus/plexus/configuration");
      systemPaths.add("org/codehaus/plexus/configuration/io");
      systemPaths.add("org/codehaus/plexus/configuration/source");
      systemPaths.add("org/codehaus/plexus/configuration/xml");
      systemPaths.add("org/codehaus/plexus/container/initialization");
      systemPaths.add("org/codehaus/plexus/context");
      systemPaths.add("org/codehaus/plexus/interpolation");
      systemPaths.add("org/codehaus/plexus/interpolation/multi");
      systemPaths.add("org/codehaus/plexus/interpolation/object");
      systemPaths.add("org/codehaus/plexus/interpolation/os");
      systemPaths.add("org/codehaus/plexus/interpolation/reflection");
      systemPaths.add("org/codehaus/plexus/interpolation/util");
      systemPaths.add("org/codehaus/plexus/lifecycle");
      systemPaths.add("org/codehaus/plexus/lifecycle/phase");
      systemPaths.add("org/codehaus/plexus/logging");
      systemPaths.add("org/codehaus/plexus/logging/console");
      systemPaths.add("org/codehaus/plexus/personality/plexus/lifecycle/phase");
      systemPaths.add("org/codehaus/plexus/util");
      systemPaths.add("org/codehaus/plexus/util/cli");
      systemPaths.add("org/codehaus/plexus/util/cli/shell");
      systemPaths.add("org/codehaus/plexus/util/dag");
      systemPaths.add("org/codehaus/plexus/util/introspection");
      systemPaths.add("org/codehaus/plexus/util/io");
      systemPaths.add("org/codehaus/plexus/util/reflection");
      systemPaths.add("org/codehaus/plexus/util/xml");
      systemPaths.add("org/codehaus/plexus/util/xml/pull");
      systemPaths.add("org/hamcrest");
      systemPaths.add("org/hamcrest/core");
      systemPaths.add("org/hamcrest/internal");
      systemPaths.add("org/ietf/jgss");
      systemPaths.add("org/jboss/classfilewriter");
      systemPaths.add("org/jboss/classfilewriter/annotations");
      systemPaths.add("org/jboss/classfilewriter/attributes");
      systemPaths.add("org/jboss/classfilewriter/code");
      systemPaths.add("org/jboss/classfilewriter/constpool");
      systemPaths.add("org/jboss/classfilewriter/util");
      systemPaths.add("org/jboss/forge");
      systemPaths.add("org/jboss/forge/furnace");
      systemPaths.add("org/jboss/forge/furnace/addons");
      systemPaths.add("org/jboss/forge/furnace/event");
      systemPaths.add("org/jboss/forge/furnace/exception");
      systemPaths.add("org/jboss/forge/furnace/impl");
      systemPaths.add("org/jboss/forge/furnace/lock");
      systemPaths.add("org/jboss/forge/furnace/repositories");
      systemPaths.add("org/jboss/forge/furnace/modules");
      systemPaths.add("org/jboss/forge/furnace/modules/providers");
      systemPaths.add("org/jboss/forge/furnace/services");
      systemPaths.add("org/jboss/forge/furnace/spi");
      systemPaths.add("org/jboss/forge/furnace/util");
      systemPaths.add("org/jboss/forge/furnace/util/cdi");
      systemPaths.add("org/jboss/forge/furnace/versions");
      systemPaths.add("org/jboss/forge/parser");
      systemPaths.add("org/jboss/forge/parser/xml");
      systemPaths.add("org/jboss/forge/parser/xml/query");
      systemPaths.add("org/jboss/forge/parser/xml/util");
      systemPaths.add("org/jboss/forge/proxy");
      systemPaths.add("org/jboss/forge/test");
      systemPaths.add("org/jboss/logmanager");
      systemPaths.add("org/jboss/logmanager/config");
      systemPaths.add("org/jboss/logmanager/errormanager");
      systemPaths.add("org/jboss/logmanager/filters");
      systemPaths.add("org/jboss/logmanager/formatters");
      systemPaths.add("org/jboss/logmanager/handlers");
      systemPaths.add("org/jboss/modules");
      systemPaths.add("org/jboss/modules/filter");
      systemPaths.add("org/jboss/modules/log");
      systemPaths.add("org/jboss/modules/management");
      systemPaths.add("org/jboss/modules/ref");
      systemPaths.add("org/jboss/shrinkwrap/api");
      systemPaths.add("org/jboss/shrinkwrap/api/asset");
      systemPaths.add("org/jboss/shrinkwrap/api/classloader");
      systemPaths.add("org/jboss/shrinkwrap/api/container");
      systemPaths.add("org/jboss/shrinkwrap/api/exporter");
      systemPaths.add("org/jboss/shrinkwrap/api/formatter");
      systemPaths.add("org/jboss/shrinkwrap/api/importer");
      systemPaths.add("org/jboss/shrinkwrap/api/serialization");
      systemPaths.add("org/jboss/shrinkwrap/api/spec");
      systemPaths.add("org/jboss/shrinkwrap/descriptor/api");
      systemPaths.add("org/jboss/shrinkwrap/descriptor/api/spec/se/manifest");
      systemPaths.add("org/jboss/shrinkwrap/descriptor/spi");
      systemPaths.add("org/jboss/shrinkwrap/descriptor/spi/node");
      systemPaths.add("org/jboss/shrinkwrap/descriptor/spi/node/dom");
      systemPaths.add("org/jboss/shrinkwrap/impl/base");
      systemPaths.add("org/jboss/shrinkwrap/impl/base/asset");
      systemPaths.add("org/jboss/shrinkwrap/impl/base/container");
      systemPaths.add("org/jboss/shrinkwrap/impl/base/exporter");
      systemPaths.add("org/jboss/shrinkwrap/impl/base/exporter/tar");
      systemPaths.add("org/jboss/shrinkwrap/impl/base/exporter/zip");
      systemPaths.add("org/jboss/shrinkwrap/impl/base/filter");
      systemPaths.add("org/jboss/shrinkwrap/impl/base/importer");
      systemPaths.add("org/jboss/shrinkwrap/impl/base/importer/tar");
      systemPaths.add("org/jboss/shrinkwrap/impl/base/importer/zip");
      systemPaths.add("org/jboss/shrinkwrap/impl/base/io");
      systemPaths.add("org/jboss/shrinkwrap/impl/base/io/tar");
      systemPaths.add("org/jboss/shrinkwrap/impl/base/path");
      systemPaths.add("org/jboss/shrinkwrap/impl/base/serialization");
      systemPaths.add("org/jboss/shrinkwrap/impl/base/spec");
      systemPaths.add("org/jboss/shrinkwrap/resolver/api");
      systemPaths.add("org/jboss/shrinkwrap/resolver/api/maven");
      systemPaths.add("org/jboss/shrinkwrap/resolver/api/maven/filter");
      systemPaths.add("org/jboss/shrinkwrap/resolver/impl/maven");
      systemPaths.add("org/jboss/shrinkwrap/spi");
      systemPaths.add("org/jboss/weld");
      systemPaths.add("org/jboss/weld/annotated");
      systemPaths.add("org/jboss/weld/annotated/enhanced");
      systemPaths.add("org/jboss/weld/annotated/enhanced/jlr");
      systemPaths.add("org/jboss/weld/annotated/runtime");
      systemPaths.add("org/jboss/weld/annotated/slim");
      systemPaths.add("org/jboss/weld/annotated/slim/backed");
      systemPaths.add("org/jboss/weld/annotated/slim/unbacked");
      systemPaths.add("org/jboss/weld/bean");
      systemPaths.add("org/jboss/weld/bean/attributes");
      systemPaths.add("org/jboss/weld/bean/builtin");
      systemPaths.add("org/jboss/weld/bean/builtin/ee");
      systemPaths.add("org/jboss/weld/bean/interceptor");
      systemPaths.add("org/jboss/weld/bean/proxy");
      systemPaths.add("org/jboss/weld/bean/proxy/util");
      systemPaths.add("org/jboss/weld/bootstrap");
      systemPaths.add("org/jboss/weld/bootstrap/api");
      systemPaths.add("org/jboss/weld/bootstrap/api/helpers");
      systemPaths.add("org/jboss/weld/bootstrap/events");
      systemPaths.add("org/jboss/weld/bootstrap/spi");
      systemPaths.add("org/jboss/weld/bootstrap/spi/helpers");
      systemPaths.add("org/jboss/weld/context");
      systemPaths.add("org/jboss/weld/context/api");
      systemPaths.add("org/jboss/weld/context/beanstore");
      systemPaths.add("org/jboss/weld/context/beanstore/ejb");
      systemPaths.add("org/jboss/weld/context/beanstore/http");
      systemPaths.add("org/jboss/weld/context/bound");
      systemPaths.add("org/jboss/weld/context/cache");
      systemPaths.add("org/jboss/weld/context/conversation");
      systemPaths.add("org/jboss/weld/context/ejb");
      systemPaths.add("org/jboss/weld/context/http");
      systemPaths.add("org/jboss/weld/context/unbound");
      systemPaths.add("org/jboss/weld/ejb");
      systemPaths.add("org/jboss/weld/ejb/api");
      systemPaths.add("org/jboss/weld/ejb/spi");
      systemPaths.add("org/jboss/weld/ejb/spi/helpers");
      systemPaths.add("org/jboss/weld/el");
      systemPaths.add("org/jboss/weld/enums");
      systemPaths.add("org/jboss/weld/environment/se");
      systemPaths.add("org/jboss/weld/environment/se/beans");
      systemPaths.add("org/jboss/weld/environment/se/bindings");
      systemPaths.add("org/jboss/weld/environment/se/contexts");
      systemPaths.add("org/jboss/weld/environment/se/discovery");
      systemPaths.add("org/jboss/weld/environment/se/discovery/url");
      systemPaths.add("org/jboss/weld/environment/se/events");
      systemPaths.add("org/jboss/weld/environment/se/threading");
      systemPaths.add("org/jboss/weld/event");
      systemPaths.add("org/jboss/weld/exceptions");
      systemPaths.add("org/jboss/weld/executor");
      systemPaths.add("org/jboss/weld/injection");
      systemPaths.add("org/jboss/weld/injection/attributes");
      systemPaths.add("org/jboss/weld/injection/producer");
      systemPaths.add("org/jboss/weld/injection/producer/ejb");
      systemPaths.add("org/jboss/weld/injection/spi");
      systemPaths.add("org/jboss/weld/injection/spi/helpers");
      systemPaths.add("org/jboss/weld/interceptor/builder");
      systemPaths.add("org/jboss/weld/interceptor/proxy");
      systemPaths.add("org/jboss/weld/interceptor/reader");
      systemPaths.add("org/jboss/weld/interceptor/reader/cache");
      systemPaths.add("org/jboss/weld/interceptor/spi/context");
      systemPaths.add("org/jboss/weld/interceptor/spi/instance");
      systemPaths.add("org/jboss/weld/interceptor/spi/metadata");
      systemPaths.add("org/jboss/weld/interceptor/spi/model");
      systemPaths.add("org/jboss/weld/interceptor/spi");
      systemPaths.add("org/jboss/weld/interceptor/util");
      systemPaths.add("org/jboss/weld/interceptor/util/proxy");
      systemPaths.add("org/jboss/weld/jsf");
      systemPaths.add("org/jboss/weld/literal");
      systemPaths.add("org/jboss/weld/logging");
      systemPaths.add("org/jboss/weld/logging/messages");
      systemPaths.add("org/jboss/weld/manager");
      systemPaths.add("org/jboss/weld/manager/api");
      systemPaths.add("org/jboss/weld/metadata");
      systemPaths.add("org/jboss/weld/metadata/cache");
      systemPaths.add("org/jboss/weld/persistence");
      systemPaths.add("org/jboss/weld/resolution");
      systemPaths.add("org/jboss/weld/resources");
      systemPaths.add("org/jboss/weld/resources/spi");
      systemPaths.add("org/jboss/weld/resources/spi/helpers");
      systemPaths.add("org/jboss/weld/security/spi");
      systemPaths.add("org/jboss/weld/serialization");
      systemPaths.add("org/jboss/weld/serialization/spi");
      systemPaths.add("org/jboss/weld/serialization/spi/helpers");
      systemPaths.add("org/jboss/weld/servlet");
      systemPaths.add("org/jboss/weld/servlet/api");
      systemPaths.add("org/jboss/weld/servlet/api/helpers");
      systemPaths.add("org/jboss/weld/transaction/spi");
      systemPaths.add("org/jboss/weld/util");
      systemPaths.add("org/jboss/weld/util/annotated");
      systemPaths.add("org/jboss/weld/util/bean");
      systemPaths.add("org/jboss/weld/util/bytecode");
      systemPaths.add("org/jboss/weld/util/collections");
      systemPaths.add("org/jboss/weld/util/dom");
      systemPaths.add("org/jboss/weld/util/el");
      systemPaths.add("org/jboss/weld/util/reflection");
      systemPaths.add("org/jboss/weld/util/reflection/instantiation");
      systemPaths.add("org/jboss/weld/validation/spi");
      systemPaths.add("org/jboss/weld/ws");
      systemPaths.add("org/jboss/weld/xml");
      systemPaths.add("org/jcp/xml/dsig/internal");
      systemPaths.add("org/jcp/xml/dsig/internal/dom");
      systemPaths.add("org/junit");
      systemPaths.add("org/junit/experimental");
      systemPaths.add("org/junit/experimental/categories");
      systemPaths.add("org/junit/experimental/max");
      systemPaths.add("org/junit/experimental/results");
      systemPaths.add("org/junit/experimental/runners");
      systemPaths.add("org/junit/experimental/theories");
      systemPaths.add("org/junit/experimental/theories/internal");
      systemPaths.add("org/junit/experimental/theories/suppliers");
      systemPaths.add("org/junit/internal");
      systemPaths.add("org/junit/internal/builders");
      systemPaths.add("org/junit/internal/matchers");
      systemPaths.add("org/junit/internal/requests");
      systemPaths.add("org/junit/internal/runners");
      systemPaths.add("org/junit/internal/runners/model");
      systemPaths.add("org/junit/internal/runners/rules");
      systemPaths.add("org/junit/internal/runners/statements");
      systemPaths.add("org/junit/matchers");
      systemPaths.add("org/junit/rules");
      systemPaths.add("org/junit/runner");
      systemPaths.add("org/junit/runner/manipulation");
      systemPaths.add("org/junit/runner/notification");
      systemPaths.add("org/junit/runners");
      systemPaths.add("org/junit/runners/model");
      systemPaths.add("org/omg/CORBA");
      systemPaths.add("org/omg/CORBA/DynAnyPackage");
      systemPaths.add("org/omg/CORBA/ORBPackage");
      systemPaths.add("org/omg/CORBA/TypeCodePackage");
      systemPaths.add("org/omg/CORBA/portable");
      systemPaths.add("org/omg/CORBA_2_3");
      systemPaths.add("org/omg/CORBA_2_3/portable");
      systemPaths.add("org/omg/CosNaming");
      systemPaths.add("org/omg/CosNaming/NamingContextExtPackage");
      systemPaths.add("org/omg/CosNaming/NamingContextPackage");
      systemPaths.add("org/omg/Dynamic");
      systemPaths.add("org/omg/DynamicAny");
      systemPaths.add("org/omg/DynamicAny/DynAnyFactoryPackage");
      systemPaths.add("org/omg/DynamicAny/DynAnyPackage");
      systemPaths.add("org/omg/IOP");
      systemPaths.add("org/omg/IOP/CodecFactoryPackage");
      systemPaths.add("org/omg/IOP/CodecPackage");
      systemPaths.add("org/omg/Messaging");
      systemPaths.add("org/omg/PortableInterceptor");
      systemPaths.add("org/omg/PortableInterceptor/ORBInitInfoPackage");
      systemPaths.add("org/omg/PortableServer");
      systemPaths.add("org/omg/PortableServer/CurrentPackage");
      systemPaths.add("org/omg/PortableServer/POAManagerPackage");
      systemPaths.add("org/omg/PortableServer/POAPackage");
      systemPaths.add("org/omg/PortableServer/ServantLocatorPackage");
      systemPaths.add("org/omg/PortableServer/portable");
      systemPaths.add("org/omg/SendingContext");
      systemPaths.add("org/omg/stub/java/rmi");
      systemPaths.add("org/omg/stub/javax/management/remote/rmi");
      systemPaths.add("org/relaxng/datatype");
      systemPaths.add("org/relaxng/datatype/helpers");
      systemPaths.add("org/slf4j");
      systemPaths.add("org/slf4j/agent");
      systemPaths.add("org/slf4j/cal10n");
      systemPaths.add("org/slf4j/ext");
      systemPaths.add("org/slf4j/helpers");
      systemPaths.add("org/slf4j/impl");
      systemPaths.add("org/slf4j/instrumentation");
      systemPaths.add("org/slf4j/profiler");
      systemPaths.add("org/slf4j/spi");
      systemPaths.add("org/sonatype/aether");
      systemPaths.add("org/sonatype/aether/artifact");
      systemPaths.add("org/sonatype/aether/collection");
      systemPaths.add("org/sonatype/aether/connector/wagon");
      systemPaths.add("org/sonatype/aether/deployment");
      systemPaths.add("org/sonatype/aether/graph");
      systemPaths.add("org/sonatype/aether/impl");
      systemPaths.add("org/sonatype/aether/impl/internal");
      systemPaths.add("org/sonatype/aether/installation");
      systemPaths.add("org/sonatype/aether/metadata");
      systemPaths.add("org/sonatype/aether/repository");
      systemPaths.add("org/sonatype/aether/resolution");
      systemPaths.add("org/sonatype/aether/spi/connector");
      systemPaths.add("org/sonatype/aether/spi/io");
      systemPaths.add("org/sonatype/aether/spi/locator");
      systemPaths.add("org/sonatype/aether/spi/log");
      systemPaths.add("org/sonatype/aether/transfer");
      systemPaths.add("org/sonatype/aether/util");
      systemPaths.add("org/sonatype/aether/util/artifact");
      systemPaths.add("org/sonatype/aether/util/filter");
      systemPaths.add("org/sonatype/aether/util/graph");
      systemPaths.add("org/sonatype/aether/util/graph/manager");
      systemPaths.add("org/sonatype/aether/util/graph/selector");
      systemPaths.add("org/sonatype/aether/util/graph/transformer");
      systemPaths.add("org/sonatype/aether/util/graph/traverser");
      systemPaths.add("org/sonatype/aether/util/layout");
      systemPaths.add("org/sonatype/aether/util/listener");
      systemPaths.add("org/sonatype/aether/util/metadata");
      systemPaths.add("org/sonatype/aether/util/repository");
      systemPaths.add("org/sonatype/aether/util/version");
      systemPaths.add("org/sonatype/aether/version");
      systemPaths.add("org/sonatype/plexus/components/cipher");
      systemPaths.add("org/sonatype/plexus/components/sec/dispatcher");
      systemPaths.add("org/sonatype/plexus/components/sec/dispatcher/model");
      systemPaths.add("org/sonatype/plexus/components/sec/dispatcher/model/io/xpp3");
      systemPaths.add("org/w3c/dom");
      systemPaths.add("org/w3c/dom/bootstrap");
      systemPaths.add("org/w3c/dom/css");
      systemPaths.add("org/w3c/dom/events");
      systemPaths.add("org/w3c/dom/html");
      systemPaths.add("org/w3c/dom/ls");
      systemPaths.add("org/w3c/dom/ranges");
      systemPaths.add("org/w3c/dom/stylesheets");
      systemPaths.add("org/w3c/dom/traversal");
      systemPaths.add("org/w3c/dom/views");
      systemPaths.add("org/w3c/dom/xpath");
      systemPaths.add("org/xml/sax");
      systemPaths.add("org/xml/sax/ext");
      systemPaths.add("org/xml/sax/helpers");
   }
}
TOP

Related Classes of org.jboss.forge.furnace.modules.providers.AbstractModuleSpecProvider

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.