org.apache.poi.openxml4j.opc
Class PackageRelationshipCollection

java.lang.Object
  extended by org.apache.poi.openxml4j.opc.PackageRelationshipCollection
All Implemented Interfaces:
java.lang.Iterable<PackageRelationship>

public final class PackageRelationshipCollection
extends java.lang.Object
implements java.lang.Iterable<PackageRelationship>

Represents a collection of PackageRelationship elements that are owned by a given PackagePart or the Package.

Version:
0.1
Author:
Julien Chable, CDubettier

Constructor Summary
PackageRelationshipCollection(OPCPackage container)
          Constructor.
PackageRelationshipCollection(OPCPackage container, PackagePart part)
          Constructor.
PackageRelationshipCollection(PackagePart part)
          Constructor.
PackageRelationshipCollection(PackageRelationshipCollection coll, java.lang.String filter)
          Copy constructor.
 
Method Summary
 void addRelationship(PackageRelationship relPart)
          Add the specified relationship to the collection.
 PackageRelationship addRelationship(java.net.URI targetUri, TargetMode targetMode, java.lang.String relationshipType, java.lang.String id)
          Add a relationship to the collection.
 void clear()
          Clear all relationships.
 PackageRelationship getRelationship(int index)
          Retrieves a relationship by its index in the collection.
 PackageRelationship getRelationshipByID(java.lang.String id)
          Retrieves a package relationship based on its id.
 PackageRelationshipCollection getRelationships(java.lang.String typeFilter)
          Retrieves all relations with the specified type.
 java.util.Iterator<PackageRelationship> iterator()
          Get this collection's iterator.
 java.util.Iterator<PackageRelationship> iterator(java.lang.String typeFilter)
          Get an iterator of a collection with all relationship with the specified type.
 void removeRelationship(PackageRelationship rel)
          Remove a relationship by its reference.
 void removeRelationship(java.lang.String id)
          Remove a relationship by its ID.
 int size()
          Get the numbe rof relationships in the collection.
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

PackageRelationshipCollection

public PackageRelationshipCollection(PackageRelationshipCollection coll,
                                     java.lang.String filter)
Copy constructor. This collection will contain only elements from the specified collection for which the type is compatible with the specified relationship type filter.

Parameters:
coll - Collection to import.
filter - Relationship type filter.

PackageRelationshipCollection

public PackageRelationshipCollection(OPCPackage container)
                              throws InvalidFormatException
Constructor.

Throws:
InvalidFormatException

PackageRelationshipCollection

public PackageRelationshipCollection(PackagePart part)
                              throws InvalidFormatException
Constructor.

Throws:
InvalidFormatException - Throws if the format of the content part is invalid.
InvalidOperationException - Throws if the specified part is a relationship part.

PackageRelationshipCollection

public PackageRelationshipCollection(OPCPackage container,
                                     PackagePart part)
                              throws InvalidFormatException
Constructor. Parse the existing package relationship part if one exists.

Parameters:
container - The parent package.
part - The part that own this relationships collection. If null then this part is considered as the package root.
Throws:
InvalidFormatException - If an error occurs during the parsing of the relatinships part fo the specified part.
Method Detail

addRelationship

public void addRelationship(PackageRelationship relPart)
Add the specified relationship to the collection.

Parameters:
relPart - The relationship to add.

addRelationship

public PackageRelationship addRelationship(java.net.URI targetUri,
                                           TargetMode targetMode,
                                           java.lang.String relationshipType,
                                           java.lang.String id)
Add a relationship to the collection.

Parameters:
targetUri - Target URI.
targetMode - The target mode : INTERNAL or EXTERNAL
relationshipType - Relationship type.
id - Relationship ID.
Returns:
The newly created relationship.
See Also:
PackageAccess

removeRelationship

public void removeRelationship(java.lang.String id)
Remove a relationship by its ID.

Parameters:
id - The relationship ID to remove.

removeRelationship

public void removeRelationship(PackageRelationship rel)
Remove a relationship by its reference.

Parameters:
rel - The relationship to delete.

getRelationship

public PackageRelationship getRelationship(int index)
Retrieves a relationship by its index in the collection.

Parameters:
index - Must be a value between [0-relationships_count-1]

getRelationshipByID

public PackageRelationship getRelationshipByID(java.lang.String id)
Retrieves a package relationship based on its id.

Parameters:
id - ID of the package relationship to retrieve.
Returns:
The package relationship identified by the specified id.

size

public int size()
Get the numbe rof relationships in the collection.


getRelationships

public PackageRelationshipCollection getRelationships(java.lang.String typeFilter)
Retrieves all relations with the specified type.

Parameters:
typeFilter - Relationship type filter. If null then all relationships are returned.
Returns:
All relationships of the type specified by the filter.

iterator

public java.util.Iterator<PackageRelationship> iterator()
Get this collection's iterator.

Specified by:
iterator in interface java.lang.Iterable<PackageRelationship>

iterator

public java.util.Iterator<PackageRelationship> iterator(java.lang.String typeFilter)
Get an iterator of a collection with all relationship with the specified type.

Parameters:
typeFilter - Type filter.
Returns:
An iterator to a collection containing all relationships with the specified type contain in this collection.

clear

public void clear()
Clear all relationships.


toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object


Copyright 2012 The Apache Software Foundation or its licensors, as applicable.