Package org.apache.tools.ant

Examples of org.apache.tools.ant.DirectoryScanner


    }
    if (destdir == null) {
      throw new BuildException("missing required attribute \"destdir\"");
    }

    DirectoryScanner ds = getDirectoryScanner(srcdir);
    try {
      String[] srcs = ds.getIncludedFiles();
      ArrayList<String> absSrcs = new ArrayList<String>();

      for (String src : srcs) {
        if (!src.toString().endsWith(Kind.CLASS.extension)) {
          continue;
View Full Code Here


   */
  public void execute() throws BuildException {

    for (DirSet set : itsDirSets) {
      File baseDir = set.getDir(getProject());
      DirectoryScanner scanner = set.getDirectoryScanner(getProject());
      for (String fileName : scanner.getIncludedDirectories())
        setSrcDir(new File(baseDir, fileName));
    }

    //  Check arguments.

    boolean hasFileSet = itsFileSets.size() != 0 || itsDirSets.size() != 0;

    if (inputJar != null) {
      if (outputJar == null)
        throw new BuildException("'outputjar' must be set.");

      if (hasFileSet)
        throw new BuildException(
            "'inputjar' is incompatible with filesets and dirsets");
    } else if (!hasFileSet)
      throw new BuildException(
          "Either attribute 'srcdir' or 'inputjar' must be used or atleast one fileset or dirset must be embedded.",
          getLocation());

    //  Create and configure the weaver.

    RetroWeaver weaver = new RetroWeaver(itsVersion);
    weaver.setLazy(itsLazy);

    //  Set up a listener.
    weaver.setListener(new WeaveListener() {
      public void weavingStarted(String msg) {
        getProject().log(RetroWeaverTask.this, msg, Project.MSG_INFO);
      }

      public void weavingCompleted(String msg) {
        getProject().log(RetroWeaverTask.this, msg, Project.MSG_INFO);
      }

      public void weavingPath(String pPath) {
        if (itsVerbose)
          getProject().log(RetroWeaverTask.this, "Weaving " + pPath,
              Project.MSG_INFO);
      }
    });

    if (verifyClasspath != null && doVerify()) {

      List<String> refPath = new ArrayList<String>();

      for (String pathItem : verifyClasspath.list()) {
        refPath.add(pathItem);
      }
      if (itsDestDir != null) {
        refPath.add(itsDestDir.getPath());
      }

      RefVerifier rv = new RefVerifier(new EmptyVisitor(), refPath, new VerifierListener() {
        public void verifyPathStarted(String msg) {
          getProject().log(RetroWeaverTask.this, msg,
              Project.MSG_INFO);
        }

        public void verifyClassStarted(String msg) {
          if (itsVerbose)
            getProject().log(RetroWeaverTask.this, msg,
                Project.MSG_INFO);
        }

        public void acceptWarning(String msg) {
          getProject().log(RetroWeaverTask.this, msg,
              Project.MSG_WARN);
        }

        public void displaySummary(int warningCount) {
          String msg = "Verification complete, " + warningCount
              + " warning(s).";
          getProject().log(RetroWeaverTask.this, msg,
              Project.MSG_WARN);

          if (itsFailOnError)
            throw new ExitStatusException(Integer
                .toString(warningCount)
                + " warning(s)", 1);
        }
      });
      weaver.setVerifier(rv);
    }

    try {
      if (inputJar != null) {
        weaver.weaveJarFile(inputJar, outputJar);
      } else {
        //  Weave the files in the filesets.

        //  Process each fileset.
        String[][] fileSets = new String[itsFileSets.size()][];
        File[] baseDirs = new File[itsFileSets.size()];
        int i = 0;
        for (FileSet fileSet : itsFileSets) {
          //  Create a directory scanner for the fileset.
          File baseDir = fileSet.getDir(getProject());
          DirectoryScanner scanner = fileSet
              .getDirectoryScanner(getProject());
          fileSets[i] = scanner.getIncludedFiles();
          baseDirs[i++] = baseDir;
        }

        weaver.weave(baseDirs, fileSets, itsDestDir);
      }
View Full Code Here

   */
  public void execute() throws BuildException {

    for (DirSet set : itsDirSets) {
      File baseDir = set.getDir(getProject());
      DirectoryScanner scanner = set.getDirectoryScanner(getProject());

      // create a non recursive file set for each included directory
      for (String fileName : scanner.getIncludedDirectories()) {
        FileSet fileSet = new FileSet();
        fileSet.setDir(new File(baseDir, fileName));
        fileSet.setIncludes("*.class");
        addFileSet(fileSet);
      }
    }

    //  Check arguments.

    boolean hasFileSet = itsFileSets.size() != 0 || itsDirSets.size() != 0;

    if (inputJar != null) {
      if (outputJar == null)
        throw new BuildException("'outputjar' must be set.");

      if (hasFileSet)
        throw new BuildException(
            "'inputjar' is incompatible with filesets and dirsets");
    } else if (!hasFileSet)
      throw new BuildException(
          "Either attribute 'srcdir' or 'inputjar' must be used or atleast one fileset or dirset must be embedded.",
          getLocation());

    //  Create and configure the weaver.

    RetroWeaver weaver = new RetroWeaver(itsVersion);
    weaver.setLazy(itsLazy);
    weaver.setStripSignatures(stripSignatures);
    weaver.setStripAttributes(stripAttributes);

    //  Set up a listener.
    weaver.setListener(new WeaveListener() {
      public void weavingStarted(String msg) {
        getProject().log(RetroWeaverTask.this, msg, Project.MSG_INFO);
      }

      public void weavingCompleted(String msg) {
        getProject().log(RetroWeaverTask.this, msg, Project.MSG_INFO);
      }

      public void weavingError(String msg) {
        getProject().log(RetroWeaverTask.this, msg, Project.MSG_ERR);
        throw new ExitStatusException("weaving error", 1);
      }

      public void weavingPath(String pPath) {
        if (itsVerbose)
          getProject().log(RetroWeaverTask.this, "Weaving " + pPath,
              Project.MSG_INFO);
      }
    });

    if (verifyClasspath != null && doVerify()) {

      List<String> refPath = new ArrayList<String>();

      for (String pathItem : verifyClasspath.list()) {
        refPath.add(pathItem);
      }
      if (itsDestDir != null) {
        refPath.add(itsDestDir.getPath());
      }

      RefVerifier rv = new RefVerifier(itsVersion, new EmptyVisitor(), refPath, new VerifierListener() {
        public void verifyPathStarted(String msg) {
          getProject().log(RetroWeaverTask.this, msg,
              Project.MSG_INFO);
        }

        public void verifyClassStarted(String msg) {
          if (itsVerbose)
            getProject().log(RetroWeaverTask.this, msg,
                Project.MSG_INFO);
        }

        public void acceptWarning(String msg) {
          getProject().log(RetroWeaverTask.this, msg,
              Project.MSG_WARN);
        }

        public void displaySummary(int warningCount) {
          String msg = "Verification complete, " + warningCount
              + " warning(s).";
          getProject().log(RetroWeaverTask.this, msg,
              Project.MSG_WARN);

          if (itsFailOnError)
            throw new ExitStatusException(Integer
                .toString(warningCount)
                + " warning(s)", 1);
        }
      });
      weaver.setVerifier(rv);
    }

    try {
      if (inputJar != null) {
        weaver.weaveJarFile(inputJar, outputJar);
      } else {
        //  Weave the files in the filesets.

        //  Process each fileset.
        String[][] fileSets = new String[itsFileSets.size()][];
        File[] baseDirs = new File[itsFileSets.size()];
        int i = 0;
        for (FileSet fileSet : itsFileSets) {
          //  Create a directory scanner for the fileset.
          File baseDir = fileSet.getDir(getProject());
          DirectoryScanner scanner = fileSet
              .getDirectoryScanner(getProject());
          fileSets[i] = scanner.getIncludedFiles();
          baseDirs[i++] = baseDir;
        }

        weaver.weave(baseDirs, fileSets, itsDestDir);
      }
View Full Code Here

            {
                // Deal with the filesets.
                for (int i = 0; i < filesets.size(); i++)
                {
                    FileSet fs = (FileSet) filesets.get(i);
                    DirectoryScanner ds = fs.getDirectoryScanner(project);
                    File srcDir = fs.getDir(project);
                   
                    String[] dataModelFiles = ds.getIncludedFiles();
                   
                    // Make a transaction for each file
                    for (int j = 0; j < dataModelFiles.length; j++)
                    {
                        File f = new File(srcDir, dataModelFiles[j]);
View Full Code Here

               
                // Deal with the filesets.
                for (int i = 0; i < filesets.size(); i++)
                {
                    FileSet fs = (FileSet) filesets.get(i);
                    DirectoryScanner ds = fs.getDirectoryScanner(project);
                    File srcDir = fs.getDir(project);

                    String[] dataModelFiles = ds.getIncludedFiles();
                   
                    // Make a transaction for each file
                    for (int j = 0; j < dataModelFiles.length; j++)
                    {
                        File f = new File(srcDir, dataModelFiles[j]);
View Full Code Here

    }

    private String[] getFiles() {
        List<String> files = new ArrayList<String>();
        for(FileSet fs : fileSets) {
            DirectoryScanner ds = fs.getDirectoryScanner(getProject());

            String[] dsFiles = ds.getIncludedFiles();
            for (int j = 0; j < dsFiles.length; j++) {
                File f = new File(dsFiles[j]);
                if (!( AccessController.doPrivileged(J2DoPrivHelper
                    .isFileAction(f))).booleanValue())
                    f = new File(ds.getBasedir(), dsFiles[j]);
                files.add(AccessController.doPrivileged(
                    J2DoPrivHelper.getAbsolutePathAction(f)));
            }
        }
        return (String[]) files.toArray(new String[files.size()]);
View Full Code Here

            restartFromModuleNames.add(st.nextToken());
        }

        for (ListIterator iter = buildFileSets.listIterator(); iter.hasNext();) {
            FileSet fs = (FileSet) iter.next();
            DirectoryScanner ds = fs.getDirectoryScanner(getProject());
            String[] builds = ds.getIncludedFiles();
            for (int i = 0; i < builds.length; i++) {
                File buildFile = new File(ds.getBasedir(), builds[i]);
                File ivyFile = getIvyFileFor(buildFile);
                if (!ivyFile.exists()) {
                    onMissingDescriptor(buildFile, ivyFile, noDescriptor);
                } else {
                    try {
View Full Code Here

        fileset.execute();
        Object ref = project.getReference("simple-setid");
        assertNotNull(ref);
        assertTrue(ref instanceof FileSet);
        FileSet fs = (FileSet) ref;
        DirectoryScanner directoryScanner = fs.getDirectoryScanner(project);
        assertEquals(1, directoryScanner.getIncludedFiles().length);
        assertEquals(getArchiveFileInCache("org1", "mod1.2", "2.0", "mod1.2", "jar", "jar")
                .getAbsolutePath(),
            new File(directoryScanner.getBasedir(), directoryScanner.getIncludedFiles()[0])
                    .getAbsolutePath());
    }
View Full Code Here

        fileset.execute();
        Object ref = project.getReference("emptyconf-setid");
        assertNotNull(ref);
        assertTrue(ref instanceof FileSet);
        FileSet fs = (FileSet) ref;
        DirectoryScanner directoryScanner = fs.getDirectoryScanner(project);
        directoryScanner.scan();
        assertEquals(0, directoryScanner.getIncludedFiles().length);
    }
View Full Code Here

            fileset.execute();
            Object ref = project.getReference("simple-setid");
            assertNotNull(ref);
            assertTrue(ref instanceof FileSet);
            FileSet fs = (FileSet) ref;
            DirectoryScanner directoryScanner = fs.getDirectoryScanner(project);
            assertEquals(1, directoryScanner.getIncludedFiles().length);
            assertEquals(
                getArchiveFileInCache("org1", "mod1.2", "2.0", "mod1.2", "jar", "jar", cache2)
                        .getAbsolutePath(), new File(directoryScanner.getBasedir(),
                        directoryScanner.getIncludedFiles()[0]).getAbsolutePath());
        } finally {
            Delete del = new Delete();
            del.setProject(new Project());
            del.setDir(cache2);
            del.execute();
View Full Code Here

TOP

Related Classes of org.apache.tools.ant.DirectoryScanner

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.