class OptionBinding extends Binding
An option binding.
When pipelines are constructed, option bindings associate expressions with variable names. At runtime, the association is between the name and its computed value.
An OptionBinding is just like a Binding except that a specific, computed value may be provided before the graph begins executing. In that case, the provided value is used and the expression is not evaluated.
- Alphabetic
- By Inheritance
- OptionBinding
- Binding
- AtomicNode
- Node
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
-
new
OptionBinding(graph: Graph, name: String, expression: Any, params: Option[BindingParams])
Use the
addBinding()
method on com.jafpl.graph.ContainerStart to construct a binding.Use the
addBinding()
method on com.jafpl.graph.ContainerStart to construct a binding.- graph
The graph into which this node is to be inserted.
- name
The variable's name
- expression
Its initializer expression
- Attributes
- protected[com.jafpl]
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
val
_label: String
- Attributes
- protected
- Definition Classes
- Binding
-
var
_start: Option[ContainerStart]
- Attributes
- protected
- Definition Classes
- Binding
- val _staticBindings: HashMap[Binding, Message]
- var _value: Option[Any]
-
def
addInputInjectable(injectable: PortInjectable): Unit
- Definition Classes
- Node
-
def
addOutputInjectable(injectable: PortInjectable): Unit
- Definition Classes
- Node
-
def
addStepInjectable(injectable: StepInjectable): Unit
- Definition Classes
- Node
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
bindingFor: Node
- Definition Classes
- Binding
-
def
bindings: Set[String]
The names of this step's variable bindings.
The names of this step's variable bindings.
This method returns the names of the variables for which this step will receive bindings at runtime.
- returns
The variable names.
- Definition Classes
- Node
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
-
def
dependsOn(node: Node): Unit
Add a dependency edge.
Add a dependency edge.
This method asserts that the current node depends on another node. Ordinarily, data flow establishes dependencies automatically. If step A consumes the output of step B, the pipeline will assure that step B runs before step A.
In cases where there is no data flow dependency, but it's still necessary to force an order, you can impose one by saying that
A.dependsOn(B)
.- node
The node in the graph which must be run before this one
- Definition Classes
- Node
-
def
dumpClosed(depth: Int): Elem
- Attributes
- protected[com.jafpl.graph]
- Definition Classes
- Node
-
def
dumpClosedChildren(depth: Int): scala.xml.Node
- Attributes
- protected[com.jafpl.graph]
- Definition Classes
- Node
-
def
dumpOpen(depth: Int): Elem
- Attributes
- protected[com.jafpl.graph]
- Definition Classes
- Node
-
def
dumpOpenChildren(depth: Int): scala.xml.Node
- Attributes
- protected[com.jafpl.graph]
- Definition Classes
- Node
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
val
expression: Any
- Definition Classes
- OptionBinding → Binding
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
val
graph: Graph
- Definition Classes
- OptionBinding → Binding → AtomicNode → Node
- def hasOutputEdge(port: String): Boolean
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
val
id: String
A unique identifier for this node.
A unique identifier for this node.
Every node has a unique identifier.
- Definition Classes
- Node
- val inputCardinalities: HashMap[String, Long]
- def inputEdge(port: String): Edge
- val inputInjectables: ListBuffer[PortInjectable]
-
def
inputs: Set[String]
The names of this step's input ports.
-
def
internal_name: String
- Attributes
- protected[com.jafpl.graph]
- Definition Classes
- Node
-
def
internal_name_=(newname: String): Unit
- Attributes
- protected[com.jafpl.graph]
- Definition Classes
- Node
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
label: String
The node label.
-
def
location: Option[Location]
The node's location.
The node's location.
The node location will be used for reporting (for example in errors).
- Definition Classes
- Node
- def location_=(loc: Location): Unit
-
val
logger: Logger
- Attributes
- protected
- Definition Classes
- Node
-
def
manifold: Option[ManifoldSpecification]
- Definition Classes
- Node
- def manifold_=(man: ManifoldSpecification): Unit
-
val
name: String
- Definition Classes
- OptionBinding → Binding
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- val outputCardinalities: HashMap[String, Long]
- def outputEdge(port: String): Edge
- val outputInjectables: ListBuffer[PortInjectable]
-
def
outputs: Set[String]
The names of this step's output ports.
-
val
params: Option[BindingParams]
- Definition Classes
- OptionBinding → Binding
-
def
parent: Option[ContainerStart]
This node's parent.
-
def
state: NodeState
- Definition Classes
- Node
-
def
stateTransition(newState: NodeState): Unit
- Definition Classes
- Node
-
def
staticBindings: Map[Binding, Message]
- Definition Classes
- Node
-
def
staticBindings_=(bindings: Map[Binding, Message]): Unit
Specify the static bindings that are in scope for this node.
Specify the static bindings that are in scope for this node.
Static bindings are known at "compile time" and don't appear in the graph. (You aren't required to have statics in your graph.)
This method provides the node with the set of static bindings that are in-scope.
- bindings
The static bindings that are in-scope for this node.
- Definition Classes
- Node
-
val
step: Option[Step]
- Definition Classes
- AtomicNode → Node
- val stepInjectables: ListBuffer[StepInjectable]
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
A string representation of this node.
-
val
userLabel: Option[String]
- Definition Classes
- AtomicNode → Node
- def value: Option[Any]
- def value_=(value: Any): Unit
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
Just Another Fine Pipeline Language
This is a pipeline framework. It’s built on top of Akka actors to support arbitrary data flow pipelines. It is wholly agnostic to the kinds of data that flow through the pipelines and the implementations of the steps that process them.
See http://jafpl.com/ for more general information.