aQute.lib.osgi
Class Jar

java.lang.Object
  extended by aQute.lib.osgi.Jar
All Implemented Interfaces:
Closeable

public class Jar
extends Object
implements Closeable


Field Summary
static Object[] EMPTY_ARRAY
           
 
Constructor Summary
Jar(File jar)
           
Jar(String name)
           
Jar(String name, File dirOrFile)
           
Jar(String string, InputStream resourceAsStream)
           
Jar(String name, InputStream in, long lastModified)
           
Jar(String name, String path)
           
 
Method Summary
 boolean addAll(Jar src)
           
 boolean addAll(Jar sub, Pattern filter)
          Add all the resources in the given jar that match the given filter.
 boolean addDirectory(Map<String,Resource> directory, boolean overwrite)
           
 void close()
           
 boolean exists(String path)
           
 Map<String,Map<String,Resource>> getDirectories()
           
 Manifest getManifest()
           
 String getName()
           
 List<String> getPackages()
           
 Resource getResource(String path)
           
 Map<String,Resource> getResources()
           
 File getSource()
           
 boolean hasDirectory(String path)
           
 long lastModified()
           
 boolean putResource(String path, Resource resource)
           
 boolean putResource(String path, Resource resource, boolean overwrite)
           
 Resource remove(String path)
           
 boolean rename(String oldPath, String newPath)
           
 void setDoNotTouchManifest()
          Make sure nobody touches the manifest! If the bundle is signed, we do not want anybody to touch the manifest after the digests have been calculated.
 void setManifest(Manifest manifest)
           
 void setName(String name)
           
 void setNoManifest(boolean b)
           
 void setReporter(Reporter reporter)
           
 String toString()
           
 void updateModified(long time, String reason)
           
 void write(File file)
           
 void write(OutputStream out)
           
 void write(String file)
           
static void writeManifest(Manifest manifest, OutputStream out)
           
 void writeManifest(OutputStream out)
          Cleanup the manifest for writing.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

EMPTY_ARRAY

public static final Object[] EMPTY_ARRAY
Constructor Detail

Jar

public Jar(String name)

Jar

public Jar(String name,
           File dirOrFile)
    throws ZipException,
           IOException
Throws:
ZipException
IOException

Jar

public Jar(String name,
           InputStream in,
           long lastModified)
    throws IOException
Throws:
IOException

Jar

public Jar(String name,
           String path)
    throws IOException
Throws:
IOException

Jar

public Jar(File jar)
    throws IOException
Throws:
IOException

Jar

public Jar(String string,
           InputStream resourceAsStream)
    throws IOException
Throws:
IOException
Method Detail

setName

public void setName(String name)

toString

public String toString()
Overrides:
toString in class Object

putResource

public boolean putResource(String path,
                           Resource resource)

putResource

public boolean putResource(String path,
                           Resource resource,
                           boolean overwrite)

getResource

public Resource getResource(String path)

getDirectories

public Map<String,Map<String,Resource>> getDirectories()

getResources

public Map<String,Resource> getResources()

addDirectory

public boolean addDirectory(Map<String,Resource> directory,
                            boolean overwrite)

getManifest

public Manifest getManifest()
                     throws IOException
Throws:
IOException

exists

public boolean exists(String path)

setManifest

public void setManifest(Manifest manifest)

write

public void write(File file)
           throws Exception
Throws:
Exception

write

public void write(String file)
           throws Exception
Throws:
Exception

write

public void write(OutputStream out)
           throws IOException
Throws:
IOException

writeManifest

public void writeManifest(OutputStream out)
                   throws IOException
Cleanup the manifest for writing. Cleaning up consists of adding a space after any \n to prevent the manifest to see this newline as a delimiter.

Parameters:
out - Output
Throws:
IOException

writeManifest

public static void writeManifest(Manifest manifest,
                                 OutputStream out)
                          throws IOException
Throws:
IOException

getName

public String getName()

addAll

public boolean addAll(Jar sub,
                      Pattern filter)
Add all the resources in the given jar that match the given filter.

Parameters:
sub - the jar
filter - a pattern that should match the resoures in sub to be added

close

public void close()
Specified by:
close in interface Closeable

lastModified

public long lastModified()

updateModified

public void updateModified(long time,
                           String reason)

setReporter

public void setReporter(Reporter reporter)

hasDirectory

public boolean hasDirectory(String path)

getPackages

public List<String> getPackages()

getSource

public File getSource()

addAll

public boolean addAll(Jar src)

rename

public boolean rename(String oldPath,
                      String newPath)

remove

public Resource remove(String path)

setDoNotTouchManifest

public void setDoNotTouchManifest()
Make sure nobody touches the manifest! If the bundle is signed, we do not want anybody to touch the manifest after the digests have been calculated.


setNoManifest

public void setNoManifest(boolean b)


Copyright © 2010 aQute SARL. All Rights Reserved.