Package java.util.jar

Examples of java.util.jar.JarFile$JarEntryIterator


     */
    public static String[] getClassNamesForJarFile(String jarFileName)
    {
        try
        {
            JarFile jar = new JarFile(jarFileName);
            return getClassNamesForJarFile(jar);
        }
        catch (IOException ioe)
        {
            NucleusLogger.GENERAL.warn("Error opening the jar file " + jarFileName + " : " + ioe.getMessage());
View Full Code Here


    public static String[] getClassNamesForJarFile(URL jarFileURL)
    {
        File jarFile = new File(jarFileURL.getFile()); // TODO Check for errors
        try
        {
            JarFile jar = new JarFile(jarFile);
            return getClassNamesForJarFile(jar);
        }
        catch (IOException ioe)
        {
            NucleusLogger.GENERAL.warn("Error opening the jar file " + jarFileURL.getFile() + " : " + ioe.getMessage());
View Full Code Here

     */
    public static String[] getPackageJdoFilesForJarFile(String jarFileName)
    {
        try
        {
            JarFile jar = new JarFile(jarFileName);
            return getFileNamesWithSuffixForJarFile(jar, "package.jdo");
        }
        catch (IOException ioe)
        {
            NucleusLogger.GENERAL.warn("Error opening the jar file " + jarFileName + " : " + ioe.getMessage());
View Full Code Here

    public static String[] getPackageJdoFilesForJarFile(URL jarFileURL)
    {
        File jarFile = new File(jarFileURL.getFile()); // TODO Check for errors
        try
        {
            JarFile jar = new JarFile(jarFile);
            return getFileNamesWithSuffixForJarFile(jar, "package.jdo");
        }
        catch (IOException ioe)
        {
            NucleusLogger.GENERAL.warn("Error opening the jar file " + jarFileURL.getFile() + " : " + ioe.getMessage());
View Full Code Here

    else
      wrapperJar = getWrapperJar();
    Manifest manifest;
    try
    {
      manifest = new JarFile(wrapperJar).getManifest();
    }
    catch (IOException e1)
    {
      // TODO Auto-generated catch block
      e1.printStackTrace();
View Full Code Here

                    {
                        // remove "file:" from path, so we can use in File constructor
                        jarPath = jarPath.substring(5);
                    }
                    File jarFile = new File(jarPath);
                    mf = new JarFile(jarFile).getManifest();
                    if (mf == null)
                    {
                        return null;
                    }
                    return registerBundle(mf, jarFile.toURI().toURL());
                }
            }           
            else if (manifest.getProtocol().equals("rar") || manifest.getProtocol().equals("war"))
            {
                // protocol formats:
                //     rar:<rar-path>!<jar-path>!<manifest-file>, war:<war-path>!<jar-path>!<manifest-file>
                String path = StringUtils.getDecodedStringFromURLString(manifest.toExternalForm());
                int index = path.indexOf(JAR_SEPARATOR);
                String rarPath = path.substring(4, index);
                File file = new File(rarPath);
                URL rarUrl = file.toURI().toURL();
               
                String jarPath = path.substring(index+1, path.indexOf(JAR_SEPARATOR,index+1));
                JarFile rarFile = new JarFile(file);
                JarInputStream jis = new JarInputStream(rarFile.getInputStream(rarFile.getEntry(jarPath)));
                try
                {
                    mf = jis.getManifest();
                    if (mf == null)
                    {
View Full Code Here

      jarIndex = path.indexOf(".jar!");
      int protocalIndex = path.indexOf(":");
      String jarPath = path.substring(protocalIndex + ":".length(),
          jarIndex + ".jar".length());
      File jarPathFile = new File(jarPath);
      JarFile jarFile;
      try {
        jarFile = new JarFile(jarPathFile);
        String entryPath = path.substring(jarIndex + ".jar!/".length());
        JarEntry entry = jarFile.getJarEntry(entryPath);
        return entry.getTime();
      } catch (IOException e) {
        System.err.println("error in handler path=" + path);
        System.err.println("error in handler jarPath=" + jarPath);
        throw e;
View Full Code Here

      return null;
    }
    Manifest manifest;
    try
    {
      manifest = new JarFile(new File(jarName)).getManifest();
    }
    catch (IOException e1)
    {
      e1.printStackTrace();
      return null;
View Full Code Here

  protected void addClasspathFromManifest(ArrayList classpath, File f)
  {
    try
    {

      Manifest manifest = new JarFile(f).getManifest();
      Attributes attr = manifest.getMainAttributes();

      String cl = attr.getValue("Class-Path");
      if (cl == null)
        return;
View Full Code Here

   */
  public List<UnwovenClassFile> addJarFile(File inFile, File outDir, boolean canBeDirectory) {
    // System.err.println("? addJarFile(" + inFile + ", " + outDir + ")");
    List<UnwovenClassFile> addedClassFiles = new ArrayList<UnwovenClassFile>();
    needToReweaveWorld = true;
    JarFile inJar = null;

    try {
      // Is this a directory we are looking at?
      if (inFile.isDirectory() && canBeDirectory) {
        addedClassFiles.addAll(addDirectoryContents(inFile, outDir));
      } else {

        inJar = new JarFile(inFile);
        try {
          addManifest(inJar.getManifest());
          Enumeration entries = inJar.entries();

          while (entries.hasMoreElements()) {
            JarEntry entry = (JarEntry) entries.nextElement();
            InputStream inStream = inJar.getInputStream(entry);

            byte[] bytes = FileUtil.readAsByteArray(inStream);
            String filename = entry.getName();
            // System.out.println("? addJarFile() filename='" + filename
            // + "'");
            UnwovenClassFile classFile = new UnwovenClassFile(new File(outDir, filename).getAbsolutePath(), bytes);

            if (filename.endsWith(".class")) {
              ReferenceType type = this.addClassFile(classFile, false);
              StringBuffer sb = new StringBuffer();
              sb.append(inFile.getAbsolutePath());
              sb.append("!");
              sb.append(entry.getName());
              type.setBinaryPath(sb.toString());
              addedClassFiles.add(classFile);
            }
            // else if (!entry.isDirectory()) {
            //
            // /* bug-44190 Copy meta-data */
            // addResource(filename,classFile);
            // }

            inStream.close();
          }
        } finally {
          inJar.close();
        }
        inJar.close();
      }
    } catch (FileNotFoundException ex) {
      IMessage message = new Message("Could not find input jar file " + inFile.getPath() + ", ignoring", new SourceLocation(
          inFile, 0), false);
      world.getMessageHandler().handleMessage(message);
    } catch (IOException ex) {
      IMessage message = new Message("Could not read input jar file " + inFile.getPath() + "(" + ex.getMessage() + ")",
          new SourceLocation(inFile, 0), true);
      world.getMessageHandler().handleMessage(message);
    } finally {
      if (inJar != null) {
        try {
          inJar.close();
        } catch (IOException ex) {
          IMessage message = new Message("Could not close input jar file " + inFile.getPath() + "(" + ex.getMessage()
              + ")", new SourceLocation(inFile, 0), true);
          world.getMessageHandler().handleMessage(message);
        }
View Full Code Here

TOP

Related Classes of java.util.jar.JarFile$JarEntryIterator

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.