Package classycle.renderer

# Class TemplateBasedClassRenderer

java.lang.Object
classycle.renderer.TemplateBasedClassRenderer

All Implemented Interfaces:
  `AtomicVertexRenderer`

public class TemplateBasedClassRenderer extends Object implements AtomicVertexRenderer
Renderer of an `AtomicVertex` with `ClassAttributes`. The renderer is based on a `java.text.MessageFormat` template. The variables in the template have the following meaning:

Variable index | Description
--- | ---
0 | fully-qualified class name
1 | class type
2 | size of the class file in bytes
3 | `true` if inner class otherwise `false`
4 | Number of incoming arcs
5 | Number of outgoing arcs to other vertices in the graph
6 | Number of outgoing arcs to external vertices
7 | Layer index
8 | Name of the cycle or empty string
9 | Source of class file if known

Author:
  Franz-Josef Elmer

## Constructor Summary

Constructors
Constructor
Description
`TemplateBasedClassRenderer(String template)`
Creates an instance for the specified template.

## Method Summary

Modifier and Type
Method
Description
`String`
`render(AtomicVertex vertex, StrongComponent cycle, int layerIndex)`
Renderes the specified vertex.

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

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

## Constructor Details

### TemplateBasedClassRenderer

public TemplateBasedClassRenderer(String template)
Creates an instance for the specified template.

## Method Details

### render

public String render(AtomicVertex vertex, StrongComponent cycle, int layerIndex)
Renderes the specified vertex. It is assumed that the vertex attributes are of the type `ClassAttributes`.

Specified by:
  `render` in interface `AtomicVertexRenderer`
Parameters:
  `vertex` - Vertex to be rendered.
  `cycle` - Cycle to which `vertex` belongs. Will be `null` if it does not belong to a cycle (i.e. a strong component with more than one element).
  `layerIndex` - Index of the layer to which `vertex` belongs.
Returns:
  the rendered vertex.