quoggles.auxboxes.getgraphelements
Class GetGraphElements_Box

java.lang.Object
  |
  +--quoggles.boxes.Box
        |
        +--quoggles.auxboxes.getgraphelements.GetGraphElements_Box
All Implemented Interfaces:
IBox

public class GetGraphElements_Box
extends Box

Input: one or several objects

Output: all GraphElements (or whatever is specified via the parameter) found in the input. null values are filtered out. null if the input itself is null

If the input is a non-collection object, the output is null or the object itself, depending on whether the object matches the parameter type or not. The order is the order in which the lements are found in the input.

The box discards any collections within the input as not matching and does not ascend recursively into them.

From the input this box filters all graph elements, only nodes, only edges, ... according to the parameter.


Field Summary
private  java.util.Collection inputCol
           
private  java.lang.Object singleInput
          Only set if input is not a collection
 
Fields inherited from class quoggles.boxes.Box
boxExecuted, iBoxGRep, inputs, outputs, parameters
 
Constructor Summary
GetGraphElements_Box()
          Constructs the box.
 
Method Summary
 void execute()
          Searches in the input for graph elements (according to the value of the parameter).
 IBoxRepresentation getGraphicalRepresentation()
          This implementation returns a new instance of DefaultBoxRepresentation.
 int[] getInputTypes()
          This implementation returns ONE element, the most general type.
 int[] getOutputTypes()
          Returns output types according to parameter.
 void setInputs(java.lang.Object[] inputs)
          Checks if the number of inputs is correct and sets the inputs.
 
Methods inherited from class quoggles.boxes.Box
areAllInputsNull, getClassName, getId, getNode, getNumberOfInputs, getNumberOfOutputs, getOutputAt, getOutputs, getParameters, hasBeenExecuted, ignoreBox, isGraphicalRepNull, isInputSet, isInputSetAt, needsQueryRunner, removeNullValues, reset, reset, setBoxNumber, setCurrentNodesTodo, setCurrentResult, setDefaultParameters, setIgnoreBox, setInputAt, setNode, setParameters, setQueryRunner
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

inputCol

private java.util.Collection inputCol

singleInput

private java.lang.Object singleInput
Only set if input is not a collection

Constructor Detail

GetGraphElements_Box

public GetGraphElements_Box()
Constructs the box.

Method Detail

getInputTypes

public int[] getInputTypes()
Description copied from class: Box
This implementation returns ONE element, the most general type. Override this method to specify more restricted types for the input(s) of the box. The size of the returned array must be consistent with the return value of getNumberOfInputs.

Specified by:
getInputTypes in interface IBox
Overrides:
getInputTypes in class Box
See Also:
IBox.getInputTypes()

getOutputTypes

public int[] getOutputTypes()
Returns output types according to parameter.

Specified by:
getOutputTypes in interface IBox
Overrides:
getOutputTypes in class Box
See Also:
IBox.getOutputTypes()

setInputs

public void setInputs(java.lang.Object[] inputs)
               throws InvalidInputException
Description copied from class: Box
Checks if the number of inputs is correct and sets the inputs. Subclasses probably will want to override this method to avoid many casts necessary when working with the input array. They should however first call this method (via super.setInputs(inputs)) so that consistency checks are done and some flags are correctly set.

Specified by:
setInputs in interface IBox
Overrides:
setInputs in class Box
InvalidInputException
See Also:
IBox.setInputs(java.lang.Object[])

getGraphicalRepresentation

public IBoxRepresentation getGraphicalRepresentation()
Description copied from class: Box
This implementation returns a new instance of DefaultBoxRepresentation. If your subclass has any parameters, you will probably have to design your own representation and override this method for example as follows: if (iBoxGRep == null || !(iBoxGRep instanceof MYOWNBOX_Rep)) { iBoxGRep = new MYOWNBOX_Rep(this); } return iBoxGRep;

Specified by:
getGraphicalRepresentation in interface IBox
Overrides:
getGraphicalRepresentation in class Box
See Also:
quoggles.boxes.IGraphicalBox#getGraphicalRepresentation()

execute

public void execute()
             throws QueryExecutionException
Searches in the input for graph elements (according to the value of the parameter). The search is not "recursive" in that collections within collections are not searched.

Specified by:
execute in interface IBox
Overrides:
execute in class Box
QueryExecutionException
See Also:
IBox.execute()