org.pentaho.reporting.libraries.resourceloader

## Class CompoundResource

- java.lang.Object
- - org.pentaho.reporting.libraries.resourceloader.CompoundResource

All Implemented Interfaces:
  java.io.Serializable, Resource

    public class CompoundResource
    extends java.lang.Object
    implements Resource

Creation-Date: 08.04.2006, 14:08:13

Author:
  Thomas Morgner
See Also:
  Serialized Form

### Constructor Summary

Constructors
Constructor and Description
`CompoundResource(ResourceKey source, DependencyCollector dependencies, java.lang.Object product, java.lang.Class targetType)`

### Method Summary

Methods
`ResourceKey[]` `getDependencies()` The primary source is also included in this set.
`java.lang.Object` `getResource()`
`ResourceKey` `getSource()`
`java.lang.Class` `getTargetType()`
`long` `getVersion(ResourceKey key)`
`boolean` `isTemporaryResult()`

### Methods inherited from class java.lang.Object

`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### CompoundResource

    public CompoundResource(ResourceKey source,
                    DependencyCollector dependencies,
                    java.lang.Object product,
                    java.lang.Class targetType)

### Method Detail

#### getResource

    public java.lang.Object getResource()
                                 throws ResourceException

Specified by:
  `getResource` in interface `Resource`
Throws:
  `ResourceException`

#### getVersion

    public long getVersion(ResourceKey key)

Specified by:
  `getVersion` in interface `Resource`

#### getDependencies

    public ResourceKey[] getDependencies()

The primary source is also included in this set. The dependencies are given as ResourceKey objects. The keys itself do not hold any state information.

The dependencies do not track deep dependencies. So if Resource A depends on Resource B which depends on Resource C, then A only knows about B, not C.

Specified by:
  `getDependencies` in interface `Resource`
Returns:

#### getSource

    public ResourceKey getSource()

Specified by:
  `getSource` in interface `Resource`

#### getTargetType

    public java.lang.Class getTargetType()

Specified by:
  `getTargetType` in interface `Resource`

#### isTemporaryResult

    public boolean isTemporaryResult()

Specified by:
  `isTemporaryResult` in interface `Resource`