XBRLAPI

A Java API for XBRL


org.xbrlapi.xdt.aspects
Class DimensionalAspectModelImpl

java.lang.Object
  extended by org.xbrlapi.aspects.AspectModelImpl
      extended by org.xbrlapi.xdt.aspects.DimensionalAspectModelImpl
All Implemented Interfaces:
Serializable, AspectModel, DimensionalAspectModel
Direct Known Subclasses:
DimensionalAspectModelWithMemoryCachingLabellers, DimensionalAspectModelWithStoreCachingLabellers

public class DimensionalAspectModelImpl
extends AspectModelImpl
implements DimensionalAspectModel

Author:
Geoff Shuetrim (geoff@galexy.net)
See Also:
Serialized Form

Constructor Summary
DimensionalAspectModelImpl(Store store)
           
 
Method Summary
 Map<URI,AspectValue> getAspectValues(Fact fact)
          Makes the discovery of aspect values for a fact much more efficient than the default by exploiting knowledge of the sources of information about aspect values given the fact.
 List<Aspect> getDimensionAspects()
           
 List<Aspect> getExplicitDimensionAspects()
           
 List<Aspect> getTypedDimensionAspects()
           
 void initialise()
          Initialises the aspects and the aspect value labellers in the aspect model.
 
Methods inherited from class org.xbrlapi.aspects.AspectModelImpl
addAspect, addAspect, addAspect, addAspect, axisContainsAspect, duplicate, getAspect, getAspectLabel, getAspects, getAspects, getAspectValueLabel, getAspectValueLabel, getAspectValues, getAspectValues, getAspectValues, getAspectValues, getAspectValues, getAxes, getDefaultAxis, getLabeller, getStore, hasAspect, hasAxis, hasLabeller, moveAspects, setDefaultAxis, setLabeller
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.xbrlapi.aspects.AspectModel
addAspect, addAspect, addAspect, addAspect, axisContainsAspect, duplicate, getAspect, getAspectLabel, getAspects, getAspects, getAspectValueLabel, getAspectValueLabel, getAspectValues, getAspectValues, getAspectValues, getAspectValues, getAspectValues, getAxes, getDefaultAxis, getLabeller, hasAspect, hasAxis, hasLabeller, moveAspects, setDefaultAxis, setLabeller
 

Constructor Detail

DimensionalAspectModelImpl

public DimensionalAspectModelImpl(Store store)
                           throws XBRLException
Parameters:
store - The data store.
Throws:
XBRLException - if the data store is null.
Method Detail

initialise

public void initialise()
                throws XBRLException
Description copied from interface: AspectModel
Initialises the aspects and the aspect value labellers in the aspect model. This should be called after the constructor has been run. Implementations of this class should always start by calling the initialise method of their super-class, if such a method exists. This use of initialise enables us to separate the resource intensive initialisation process from the constructor process. This can be useful if there are ways to avoid the initialisation process because of information that is already available, eg in another aspect model. In particular, this is useful for aspect model duplication.

Specified by:
initialise in interface AspectModel
Overrides:
initialise in class AspectModelImpl
Throws:
XBRLException
See Also:
AspectModel.initialise()

getAspectValues

public Map<URI,AspectValue> getAspectValues(Fact fact)
                                     throws XBRLException
Makes the discovery of aspect values for a fact much more efficient than the default by exploiting knowledge of the sources of information about aspect values given the fact.

Specified by:
getAspectValues in interface AspectModel
Overrides:
getAspectValues in class AspectModelImpl
Parameters:
fact - The fact to get the aspect values for.
Returns:
the map from Aspect IDs to values for those aspects, for the fact, with missing values for all aspects in the aspect model, that do not have a value for the given fact.
Throws:
XBRLException
See Also:
AspectModel.getAspectValues(Fact)

getExplicitDimensionAspects

public List<Aspect> getExplicitDimensionAspects()
                                         throws XBRLException
Specified by:
getExplicitDimensionAspects in interface DimensionalAspectModel
Returns:
a list of explicit dimension aspects in the aspect model
Throws:
XBRLException

getTypedDimensionAspects

public List<Aspect> getTypedDimensionAspects()
                                      throws XBRLException
Specified by:
getTypedDimensionAspects in interface DimensionalAspectModel
Returns:
a list of typed dimension aspects in the aspect model
Throws:
XBRLException

getDimensionAspects

public List<Aspect> getDimensionAspects()
                                 throws XBRLException
Specified by:
getDimensionAspects in interface DimensionalAspectModel
Returns:
a list of explicit and typed dimension aspects in the aspect model
Throws:
XBRLException

Get Java XBRL API implementation at SourceForge.net.