org.glassfish.osgijavaeebase
Class OSGiJavaEEArchive

java.lang.Object
  extended by com.sun.enterprise.deploy.shared.AbstractReadableArchive
      extended by org.glassfish.osgijavaeebase.OSGiJavaEEArchive
All Implemented Interfaces:
org.glassfish.api.deployment.archive.Archive, org.glassfish.api.deployment.archive.ReadableArchive

public abstract class OSGiJavaEEArchive
extends com.sun.enterprise.deploy.shared.AbstractReadableArchive
implements org.glassfish.api.deployment.archive.ReadableArchive

This is a very important class in our implementation of hybrid applications. This class maps a bundle and its attached fragments to Java EE archive format.

Author:
Sanjeeb.Sahoo@Sun.COM

Nested Class Summary
protected static interface OSGiJavaEEArchive.ArchiveEntry
           
protected static interface OSGiJavaEEArchive.BCPEntry
           
protected  class OSGiJavaEEArchive.DirBCPEntry
           
protected  class OSGiJavaEEArchive.EffectiveBCP
           
protected  class OSGiJavaEEArchive.JarBCPEntry
           
 
Field Summary
protected  Map<org.osgi.framework.Bundle,OSGiBundleArchive> archives
           
protected static String DOT
           
protected  org.osgi.framework.Bundle[] fragments
           
protected  org.osgi.framework.Bundle host
           
protected static String JAR_EXT
           
 
Fields inherited from class com.sun.enterprise.deploy.shared.AbstractReadableArchive
extraData, parentArchive
 
Constructor Summary
OSGiJavaEEArchive(org.osgi.framework.Bundle[] fragments, org.osgi.framework.Bundle host)
           
 
Method Summary
 void close()
           
 boolean delete()
           
 Enumeration<String> entries()
           
 Enumeration<String> entries(String prefix)
           
 boolean exists()
           
 boolean exists(String name)
           
protected  OSGiBundleArchive getArchive(org.osgi.framework.Bundle b)
           
 long getArchiveSize()
           
 Collection<String> getDirectories()
           
protected  OSGiJavaEEArchive.EffectiveBCP getEffectiveBCP()
           
protected  Map<String,OSGiJavaEEArchive.ArchiveEntry> getEntries()
           
 InputStream getEntry(String name)
           
 long getEntrySize(String name)
           
 Manifest getManifest()
           
 String getName()
           
 org.glassfish.api.deployment.archive.ReadableArchive getParentArchive()
           
 org.glassfish.api.deployment.archive.ReadableArchive getSubArchive(String name)
           
 URI getURI()
           
protected abstract  void init()
           
 boolean isDirectory(String name)
           
 void open(URI uri)
           
 boolean renameTo(String name)
           
 void setParentArchive(org.glassfish.api.deployment.archive.ReadableArchive parentArchive)
           
 
Methods inherited from class com.sun.enterprise.deploy.shared.AbstractReadableArchive
getExtraData, removeExtraData, setExtraData
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.glassfish.api.deployment.archive.ReadableArchive
getExtraData, removeExtraData, setExtraData
 

Field Detail

host

protected org.osgi.framework.Bundle host

fragments

protected org.osgi.framework.Bundle[] fragments

JAR_EXT

protected static final String JAR_EXT
See Also:
Constant Field Values

DOT

protected static final String DOT
See Also:
Constant Field Values

archives

protected final Map<org.osgi.framework.Bundle,OSGiBundleArchive> archives
Constructor Detail

OSGiJavaEEArchive

public OSGiJavaEEArchive(org.osgi.framework.Bundle[] fragments,
                         org.osgi.framework.Bundle host)
Method Detail

getArchive

protected OSGiBundleArchive getArchive(org.osgi.framework.Bundle b)

getEntries

protected Map<String,OSGiJavaEEArchive.ArchiveEntry> getEntries()

init

protected abstract void init()

getEffectiveBCP

protected OSGiJavaEEArchive.EffectiveBCP getEffectiveBCP()

getEntry

public InputStream getEntry(String name)
                     throws IOException
Specified by:
getEntry in interface org.glassfish.api.deployment.archive.ReadableArchive
Throws:
IOException

exists

public boolean exists(String name)
               throws IOException
Specified by:
exists in interface org.glassfish.api.deployment.archive.ReadableArchive
Throws:
IOException

getEntrySize

public long getEntrySize(String name)
Specified by:
getEntrySize in interface org.glassfish.api.deployment.archive.ReadableArchive

open

public void open(URI uri)
          throws IOException
Specified by:
open in interface org.glassfish.api.deployment.archive.ReadableArchive
Throws:
IOException

getSubArchive

public org.glassfish.api.deployment.archive.ReadableArchive getSubArchive(String name)
                                                                   throws IOException
Specified by:
getSubArchive in interface org.glassfish.api.deployment.archive.ReadableArchive
Throws:
IOException

exists

public boolean exists()
Specified by:
exists in interface org.glassfish.api.deployment.archive.ReadableArchive

delete

public boolean delete()
Specified by:
delete in interface org.glassfish.api.deployment.archive.ReadableArchive

renameTo

public boolean renameTo(String name)
Specified by:
renameTo in interface org.glassfish.api.deployment.archive.ReadableArchive

setParentArchive

public void setParentArchive(org.glassfish.api.deployment.archive.ReadableArchive parentArchive)
Specified by:
setParentArchive in interface org.glassfish.api.deployment.archive.ReadableArchive
Overrides:
setParentArchive in class com.sun.enterprise.deploy.shared.AbstractReadableArchive

getParentArchive

public org.glassfish.api.deployment.archive.ReadableArchive getParentArchive()
Specified by:
getParentArchive in interface org.glassfish.api.deployment.archive.ReadableArchive
Overrides:
getParentArchive in class com.sun.enterprise.deploy.shared.AbstractReadableArchive

close

public void close()
           throws IOException
Specified by:
close in interface org.glassfish.api.deployment.archive.Archive
Throws:
IOException

entries

public Enumeration<String> entries()
Specified by:
entries in interface org.glassfish.api.deployment.archive.Archive

entries

public Enumeration<String> entries(String prefix)
Specified by:
entries in interface org.glassfish.api.deployment.archive.Archive

getDirectories

public Collection<String> getDirectories()
                                  throws IOException
Specified by:
getDirectories in interface org.glassfish.api.deployment.archive.Archive
Throws:
IOException

isDirectory

public boolean isDirectory(String name)
Specified by:
isDirectory in interface org.glassfish.api.deployment.archive.Archive

getManifest

public Manifest getManifest()
                     throws IOException
Specified by:
getManifest in interface org.glassfish.api.deployment.archive.Archive
Throws:
IOException

getURI

public URI getURI()
Specified by:
getURI in interface org.glassfish.api.deployment.archive.Archive

getArchiveSize

public long getArchiveSize()
                    throws SecurityException
Specified by:
getArchiveSize in interface org.glassfish.api.deployment.archive.Archive
Throws:
SecurityException

getName

public String getName()
Specified by:
getName in interface org.glassfish.api.deployment.archive.Archive


Copyright © 2012 GlassFish Community. All Rights Reserved.