Package classycle.dependency

# Class DependencyProcessor

java.lang.Object
classycle.dependency.DependencyProcessor

public class DependencyProcessor extends Object
Processor of `Statements` as defined in a dependency definition file.

Author:
  Franz-Josef Elmer

## Constructor Summary

Constructors
Constructor
Description
`DependencyProcessor(String dependencyDefinition, classycle.dependency.DependencyProperties properties, ResultRenderer renderer)`
Creates a new instance for the specified dependency definition.

## Method Summary

Modifier and Type
Method
Description
`Result`
`executeNextStatement(AtomicVertex[] graph)`
Executes the next unprocessed statement and returns its result.
`boolean`
`hasMoreStatements()`
Returns `true` if there are still unprocessed statements.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### DependencyProcessor

public DependencyProcessor(String dependencyDefinition, classycle.dependency.DependencyProperties properties, ResultRenderer renderer)
Creates a new instance for the specified dependency definition. It also parses the definition and creates all `Statements`.

Parameters:
  `dependencyDefinition` - Dependency definition as read from a .ddf file.
  `properties` - Contains predefined properties and will also be populated by definition in `dependencyDefinition`.
  `renderer` - Renderer for processing results.
Throws:
  `IllegalArgumentException` - if `dependencyDefinition` is invalid.

## Method Details

### hasMoreStatements

public boolean hasMoreStatements()
Returns `true` if there are still unprocessed statements.

### executeNextStatement

public Result executeNextStatement(AtomicVertex[] graph)
Executes the next unprocessed statement and returns its result.

Parameters:
  `graph` - The graph to be checked by the statement.
Returns:
  `null` if there is no unprocessed statement.