IN_K
- input ID typeIN_VV
- input vertex value typeIN_EV
- input edge value typeOUT_K
- output ID typeOUT_VV
- output vertex value typeOUT_EV
- output edge value typepublic abstract class GraphAlgorithmDelegatingGraph<IN_K,IN_VV,IN_EV,OUT_K,OUT_VV,OUT_EV> extends Object implements GraphAlgorithm<IN_K,IN_VV,IN_EV,Graph<OUT_K,OUT_VV,OUT_EV>>
GraphAlgorithm
transforms an input Graph
into an output of
type T
. A GraphAlgorithmDelegatingGraph
wraps the resultant
Graph
with a delegating proxy object. The delegated object can be
replaced when the same algorithm is run on the same input with a mergeable
configuration. This allows algorithms to be composed of implicitly reusable
algorithms without publicly sharing intermediate DataSet
s.Constructor and Description |
---|
GraphAlgorithmDelegatingGraph() |
Modifier and Type | Method and Description |
---|---|
boolean |
equals(Object obj) |
protected abstract String |
getAlgorithmName()
Algorithms are identified by name rather than by class to allow subclassing.
|
int |
hashCode() |
protected abstract boolean |
mergeConfiguration(GraphAlgorithmDelegatingGraph other)
An algorithm must first test whether the configurations can be merged
before merging individual fields.
|
Graph<OUT_K,OUT_VV,OUT_EV> |
run(Graph<IN_K,IN_VV,IN_EV> input) |
protected abstract Graph<OUT_K,OUT_VV,OUT_EV> |
runInternal(Graph<IN_K,IN_VV,IN_EV> input)
The implementation of the algorithm, renamed from
GraphAlgorithm.run(Graph) . |
protected abstract String getAlgorithmName()
protected abstract boolean mergeConfiguration(GraphAlgorithmDelegatingGraph other)
other
- the algorithm with which to compare and mergeprotected abstract Graph<OUT_K,OUT_VV,OUT_EV> runInternal(Graph<IN_K,IN_VV,IN_EV> input) throws Exception
GraphAlgorithm.run(Graph)
.input
- the input graphException
Copyright © 2014–2017 The Apache Software Foundation. All rights reserved.