Package org.eclipse.jdt.ui.jarpackager
Class JarWriter3
- java.lang.Object
-
- org.eclipse.jdt.ui.jarpackager.JarWriter3
-
public class JarWriter3 extends Object
Creates a JAR file for the given JAR package data.Clients may subclass.
- Since:
- 3.2
- See Also:
JarPackageData
-
-
Constructor Summary
Constructors Constructor Description JarWriter3(JarPackageData jarPackage, Shell parent)
Creates an instance which is used to create a JAR based on the given JarPackage.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
addDirectories(String destPath)
Creates the directory entries for the given path and writes it to the current archive.protected void
addDirectories(IResource resource, IPath destinationPath)
Creates the directory entries for the given path and writes it to the current archive.protected void
addDirectories(IPath destinationPath)
Creates the directory entries for the given path and writes it to the current archive.protected void
addEntry(JarEntry entry, InputStream content)
Write the given entry describing the given content to the current archiveprotected void
addFile(IFile resource, IPath path)
Creates a new JarEntry with the passed path and contents, and writes it to the current archive.protected boolean
canCreateJar(Shell parent)
Checks if the JAR file can be overwritten.void
close()
Closes the archive and does all required cleanup.void
write(IFile resource, IPath destinationPath)
Writes the passed resource to the current archive.
-
-
-
Constructor Detail
-
JarWriter3
public JarWriter3(JarPackageData jarPackage, Shell parent) throws CoreException
Creates an instance which is used to create a JAR based on the given JarPackage.- Parameters:
jarPackage
- the JAR specificationparent
- the shell used to display question dialogs, ornull
if "false/no/cancel" is the answer and no dialog should be shown- Throws:
CoreException
- to signal any other unusual termination. This can also be used to return information in the status object.
-
-
Method Detail
-
addDirectories
protected void addDirectories(IPath destinationPath) throws IOException
Creates the directory entries for the given path and writes it to the current archive.- Parameters:
destinationPath
- the path to add- Throws:
IOException
- if an I/O error has occurred
-
addDirectories
protected void addDirectories(String destPath) throws IOException
Creates the directory entries for the given path and writes it to the current archive.- Parameters:
destPath
- the path to add- Throws:
IOException
- if an I/O error has occurred- Since:
- 3.5
-
addDirectories
protected void addDirectories(IResource resource, IPath destinationPath) throws IOException, CoreException
Creates the directory entries for the given path and writes it to the current archive.- Parameters:
resource
- the resource for which the parent directories are to be addeddestinationPath
- the path to add- Throws:
IOException
- if an I/O error has occurredCoreException
- if accessing the resource failes
-
addFile
protected void addFile(IFile resource, IPath path) throws IOException, CoreException
Creates a new JarEntry with the passed path and contents, and writes it to the current archive.- Parameters:
resource
- the file to writepath
- the path inside the archive- Throws:
IOException
- if an I/O error has occurredCoreException
- if the resource can-t be accessed
-
addEntry
protected void addEntry(JarEntry entry, InputStream content) throws IOException
Write the given entry describing the given content to the current archive- Parameters:
entry
- the entry to writecontent
- the content to write- Throws:
IOException
- If an I/O error occurred- Since:
- 3.4
-
canCreateJar
protected boolean canCreateJar(Shell parent)
Checks if the JAR file can be overwritten. If the JAR package setting does not allow to overwrite the JAR then a dialog will ask the user again.- Parameters:
parent
- the parent for the dialog, ornull
if no dialog should be presented- Returns:
true
if it is OK to create the JAR
-
close
public void close() throws CoreException
Closes the archive and does all required cleanup.- Throws:
CoreException
- to signal any other unusual termination. This can also be used to return information in the status object.
-
write
public void write(IFile resource, IPath destinationPath) throws CoreException
Writes the passed resource to the current archive.- Parameters:
resource
- the file to be writtendestinationPath
- the path for the file inside the archive- Throws:
CoreException
- to signal any other unusual termination. This can also be used to return information in the status object.
-
-