public class XFIImplicitFilterOptimizer extends java.lang.Object implements Filter
Modifier and Type | Class and Description |
---|---|
static class |
XFIImplicitFilterOptimizer.Mode
The Enum Mode.
|
static class |
XFIImplicitFilterOptimizer.Type
The Enum Type.
|
Constructor and Description |
---|
XFIImplicitFilterOptimizer(XBRLVariablesHolder set)
Instantiates a new XFI implicit filter optimizer.
|
Modifier and Type | Method and Description |
---|---|
void |
addOnClear(java.lang.Runnable code)
Adds code to be executed when this optimizer is no longer needed.
|
boolean |
canUseFallback(javax.xml.namespace.QName variableName)
Can use fallback.
|
boolean |
checkFilters(XBRLFact f)
Check filters.
|
boolean |
checkImplicitFiltering(XBRLFact fact)
Returns true then the fact passed in matches all uncovered aspects in fact previously set.
|
java.util.Iterator<XBRLFact> |
checkPreFilter(XBRLInstanceRootNode instanceRootNode)
Check pre filter.
|
void |
clear()
This method will clear the optimizer and will execute all code registered
to be executed via calls to
addOnClear(Runnable) . |
java.util.Set<XFIImplicitFilterOptimizer.Mode> |
getOptimizationMode()
Obtains a bitmap of values in the Mode enumeration that
indicates what optimizations are enabled.
|
java.util.List<net.sf.saxon.om.Item> |
getOptimizedListIterator(XFIImplicitFilterOptimizer.Type t)
Gets the optimized list iterator.
|
boolean |
isOptimizedSet()
Checks if is optimized set.
|
boolean |
passes(javax.xml.namespace.QName varName,
net.sf.saxon.s9api.XdmValue value,
boolean bBindToDefault)
Passes.
|
void |
removeOnClear(java.lang.Runnable code)
Removes code registered to be launched while this optimizer is
no longer needed.
|
void |
reset()
Prepares the optimizer for a new evaluation cycle.
|
void |
restartFilter()
Restart filter.
|
void |
setFactReference(XBRLFact fact,
javax.xml.namespace.QName variableName,
boolean bBindToDefault)
Sets the fact reference.
|
void |
setFilters(java.util.Collection<XBRLFilterUse> vFilters,
java.util.Collection<net.sf.saxon.s9api.QName> bindableVarNames,
XBRLVariableSetResource set)
Sets the filters.
|
void |
setOptimizationMode(java.util.Set<XFIImplicitFilterOptimizer.Mode> newMode)
Sets the optimizations to be performed by this optimizer.
|
void |
setOptimizedListIterator(java.util.List<net.sf.saxon.om.Item> al,
XFIImplicitFilterOptimizer.Type t)
Sets the optimized list iterator.
|
void |
setTree(XBRLVariableTree tree)
Sets the tree.
|
void |
setVariableName(XBRLVariableFact variable,
javax.xml.namespace.QName variableName)
Sets the variable name.
|
public XFIImplicitFilterOptimizer(XBRLVariablesHolder set)
set
- the setpublic java.util.Set<XFIImplicitFilterOptimizer.Mode> getOptimizationMode()
public void setOptimizationMode(java.util.Set<XFIImplicitFilterOptimizer.Mode> newMode)
newMode
- the new optimization modepublic void setVariableName(XBRLVariableFact variable, javax.xml.namespace.QName variableName)
variable
- the variablevariableName
- the variable namepublic void setFactReference(XBRLFact fact, javax.xml.namespace.QName variableName, boolean bBindToDefault)
fact
- the factvariableName
- the variable namebBindToDefault
- the b bind to defaultpublic boolean canUseFallback(javax.xml.namespace.QName variableName)
variableName
- the variable namepublic java.util.List<net.sf.saxon.om.Item> getOptimizedListIterator(XFIImplicitFilterOptimizer.Type t)
t
- the tpublic void setOptimizedListIterator(java.util.List<net.sf.saxon.om.Item> al, XFIImplicitFilterOptimizer.Type t)
al
- the alt
- the tpublic boolean checkImplicitFiltering(XBRLFact fact) throws XFValidationException
fact
- the factXFValidationException
- the XF validation exceptionpublic void reset()
public boolean isOptimizedSet()
public void setTree(XBRLVariableTree tree)
tree
- the new treepublic boolean passes(javax.xml.namespace.QName varName, net.sf.saxon.s9api.XdmValue value, boolean bBindToDefault)
public void restartFilter()
public boolean checkFilters(XBRLFact f)
f
- the fpublic void setFilters(java.util.Collection<XBRLFilterUse> vFilters, java.util.Collection<net.sf.saxon.s9api.QName> bindableVarNames, XBRLVariableSetResource set) throws XFValidationException
vFilters
- the v filtersbindableVarNames
- the bindable var namesset
- the setXFValidationException
- the XF validation exceptionpublic java.util.Iterator<XBRLFact> checkPreFilter(XBRLInstanceRootNode instanceRootNode)
instanceRootNode
- the instance root nodepublic void addOnClear(java.lang.Runnable code)
code
is responsible of removing itself calling
removeOnClear(Runnable)
code
- the code to be executedpublic void removeOnClear(java.lang.Runnable code)
code
- the same code to be removed form the eventpublic void clear()
addOnClear(Runnable)
.Copyright 2006-2015 Reporting Standard S.L., C/ Torrecilla del Puerto 1, 28043, Madrid, Espaņa