Snapper 1.1 API

org.enhydra.snapper.parsers.fileparsers.parsers.office2007opc
Class PackagePart

java.lang.Object
  extended by org.enhydra.snapper.parsers.fileparsers.parsers.office2007opc.PackagePart
Direct Known Subclasses:
MemoryPackagePart, ZipPackagePart

public abstract class PackagePart
extends java.lang.Object

Author:
Julien Chable

Field Summary
protected  Package container
           
protected  java.lang.String contentType
           
protected  java.net.URI uri
           
 
Constructor Summary
PackagePart(Package pack, java.net.URI partUri)
          Constructeur.
PackagePart(Package pack, java.net.URI partURI, java.lang.String contentType)
          Constructor.
 
Method Summary
 PackageRelationship addRelationship(java.net.URI targetUri, TargetMode targetMode, java.lang.String relationshipType)
          Ajout d'une relation à une partie (exclut les parties de type relation).
 PackageRelationship addRelationship(java.net.URI targetUri, TargetMode targetMode, java.lang.String relationshipType, java.lang.String id)
          Ajout d'une relation à une partie (exclut les parties de type relation).
 void clearRelationships()
          Supprime toutes les relations de cette partie.
 java.lang.String getContentType()
           
 java.io.InputStream getInputStream()
          Obtenir le flux de lecture de la partie.
protected abstract  java.io.InputStream getInputStreamImpl()
          Implémentation de la récupération du flux d'entrée du contenu de la partie.
 java.io.OutputStream getOutputStream()
          Obtenir le flux de sortie de la partie.
protected abstract  java.io.OutputStream getOutputStreamImpl()
          Implémentation de la récupération du flux de sortie du contenu de la aprtie.
 Package getParentPackage()
           
 PackageRelationshipCollection getRelationships()
          Récupérer toutes relations de cette partie.
 PackageRelationshipCollection getRelationshipsByType(java.lang.String relationshipType)
          Récupérer toutes les relations dont le type correspond au filtre spécifié.
 java.net.URI getUri()
           
 boolean hasRelationships()
          Savoir si la partie possède des relations.
 boolean isDeleted()
           
 boolean isRelationshipPart()
           
abstract  void save(java.io.OutputStream zos)
          Enregistrement de la partie et de la partie de relations si la partie possède au moins une relation.
 void setContentType(java.lang.String contentType)
           
 void setDeleted(boolean isDeleted)
           
 void setUri(java.net.URI uri)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

container

protected Package container

uri

protected java.net.URI uri

contentType

protected java.lang.String contentType
Constructor Detail

PackagePart

public PackagePart(Package pack,
                   java.net.URI partUri)
Constructeur.

Parameters:
pack - Parent package.
partURI - The part's Uniform Resource Identifier (URI), relative to the parent Package root.

PackagePart

public PackagePart(Package pack,
                   java.net.URI partURI,
                   java.lang.String contentType)
Constructor.

Parameters:
pack - Parent package.
partURI - The part's Uniform Resource Identifier (URI), relative to the parent Package root.
contentType - The Multipurpose Internet Mail Extensions (MIME) content type of the part's data stream.
Method Detail

addRelationship

public PackageRelationship addRelationship(java.net.URI targetUri,
                                           TargetMode targetMode,
                                           java.lang.String relationshipType)
Ajout d'une relation à une partie (exclut les parties de type relation).

Parameters:
targetUri - URI de la partie cible, attention celle-ci doit être relative par rapport au répertoire source de la partie.
targetMode - Le mode [Internal|External].
relationshipType - Le type de la relation.
Returns:
La relation qui a été ajoutée.

addRelationship

public PackageRelationship addRelationship(java.net.URI targetUri,
                                           TargetMode targetMode,
                                           java.lang.String relationshipType,
                                           java.lang.String id)
Ajout d'une relation à une partie (exclut les parties de type relation).

Parameters:
targetUri - URI de la partie cible.
targetMode - Le mode [Internal|External].
relationshipType - Le type de la relation.
id - L'identifiant unique de la relation, si null alors un identifiant est généré automatiquement.
Returns:
La relation qui a été ajoutée.

clearRelationships

public void clearRelationships()
Supprime toutes les relations de cette partie.


getRelationships

public PackageRelationshipCollection getRelationships()
Récupérer toutes relations de cette partie.

Returns:
Toutes les relations de cette partie.

getRelationshipsByType

public PackageRelationshipCollection getRelationshipsByType(java.lang.String relationshipType)
Récupérer toutes les relations dont le type correspond au filtre spécifié.

Parameters:
relationshipType - Le filtre de type de relation.
Returns:
Toutes les relations correspondant au filtre de type.

hasRelationships

public boolean hasRelationships()
Savoir si la partie possède des relations.

Returns:
true si la partie possède des relations sinon false.

getInputStream

public java.io.InputStream getInputStream()
                                   throws java.io.IOException
Obtenir le flux de lecture de la partie.

Throws:
java.io.IOException

getOutputStream

public java.io.OutputStream getOutputStream()
                                     throws java.io.IOException
Obtenir le flux de sortie de la partie. Si la partie est contenue dans un ZIP, celle-ci est transformée en partie de type MemoryPackagePart afin de pouvoir écrire dedans, l'API Java ne permettant pas d'écrire directement dans le fichier.

Throws:
java.io.IOException

getUri

public java.net.URI getUri()

setUri

public void setUri(java.net.URI uri)

getContentType

public java.lang.String getContentType()

setContentType

public void setContentType(java.lang.String contentType)

getParentPackage

public Package getParentPackage()

isRelationshipPart

public boolean isRelationshipPart()

isDeleted

public boolean isDeleted()

setDeleted

public void setDeleted(boolean isDeleted)

getInputStreamImpl

protected abstract java.io.InputStream getInputStreamImpl()
Implémentation de la récupération du flux d'entrée du contenu de la partie.


getOutputStreamImpl

protected abstract java.io.OutputStream getOutputStreamImpl()
Implémentation de la récupération du flux de sortie du contenu de la aprtie.


save

public abstract void save(java.io.OutputStream zos)
Enregistrement de la partie et de la partie de relations si la partie possède au moins une relation.

Parameters:
zos - Flux d'enregistrement

Snapper 1.1 API