Package de.xima.fc.common.graphdot
Class AttributeListBuilder<A extends IGraphDotAttributeList,Self extends AttributeListBuilder<A,Self>>
- java.lang.Object
-
- de.xima.fc.common.graphdot.AttributeListBuilder<A,Self>
-
- Type Parameters:
A
- Type of the attribute list that can be built.Self
- Type of the builder sub class.
- Direct Known Subclasses:
AttributeListBuilder.BuilderEdge
,AttributeListBuilder.BuilderGraph
,AttributeListBuilder.BuilderNode
,AttributeListBuilder.BuilderSubGraph
public abstract class AttributeListBuilder<A extends IGraphDotAttributeList,Self extends AttributeListBuilder<A,Self>> extends Object
Type safe builder for a list of graphviz dot graph attributes.- Since:
- 8.2.0
- Author:
- XIMA MEDIA GmbH
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
AttributeListBuilder.AttributeArrowHead
Thearrowhead
attribute.static class
AttributeListBuilder.AttributeArrowSize
Thearrowsize
attribute.static class
AttributeListBuilder.AttributeArrowTail
Thearrowtail
attribute.static class
AttributeListBuilder.AttributeBgColor
Thebgcolor
attribute.static class
AttributeListBuilder.AttributeClass
Theclass
attribute.static class
AttributeListBuilder.AttributeCluster
Thecluster
attribute.static class
AttributeListBuilder.AttributeClusterRank
Theclusterrank
attribute.static class
AttributeListBuilder.AttributeColor
Thecolor
attribute.static class
AttributeListBuilder.AttributeConstraint
Theconstraint
attribute.static class
AttributeListBuilder.AttributeDirection
Thedir
attribute.static class
AttributeListBuilder.AttributeEdgeStyle
Thestyle
attribute for edges.static class
AttributeListBuilder.AttributeEdgeTooltip
Theedgetooltip
attribute.static class
AttributeListBuilder.AttributeExteriorLabelPosition
Thexlp
attribute.static class
AttributeListBuilder.AttributeExternalLabel
Thexlabel
attribute.static class
AttributeListBuilder.AttributeFillColor
Thefillcolor
attribute.static class
AttributeListBuilder.AttributeFontColor
Thefontcolor
attribute.static class
AttributeListBuilder.AttributeFontName
Thefontname
attribute.static class
AttributeListBuilder.AttributeFontSize
Thefontsize
attribute.static class
AttributeListBuilder.AttributeGraphRoot
Theroot
attribute for graphs.static class
AttributeListBuilder.AttributeHeadLabel
Theheadlabel
attribute.static class
AttributeListBuilder.AttributeHeadTooltip
Theheadtooltip
attribute.static class
AttributeListBuilder.AttributeHeight
Thewith
attribute.static class
AttributeListBuilder.AttributeLabel
Thelabel
attribute.static class
AttributeListBuilder.AttributeLabelCenterPosition
Thelp
attribute.static class
AttributeListBuilder.AttributeLabelFontColor
Thelabelfontcolor
attribute.static class
AttributeListBuilder.AttributeLabelLocation
Thelabelloc
attribute.static class
AttributeListBuilder.AttributeLabelTooltip
Thelabeltooltip
attribute.static class
AttributeListBuilder.AttributeMargin
Themargin
attribute.static class
AttributeListBuilder.AttributeNodeRoot
Theroot
attribute for nodes.static class
AttributeListBuilder.AttributeNodeSeparation
Thenodsep
attribute.static class
AttributeListBuilder.AttributeNodeStyle
Thestyle
attribute for nodes.static class
AttributeListBuilder.AttributeOrdering
Theordering
attribute.static class
AttributeListBuilder.AttributePenColor
Thepencolor
attribute.static class
AttributeListBuilder.AttributePenWidth
Thepenwith
attribute.static class
AttributeListBuilder.AttributePeripheries
Theperipheries
attribute.static class
AttributeListBuilder.AttributeRankDirection
Therankdir
attribute.static class
AttributeListBuilder.AttributeRankSeparation
Theranksep
attribute.static class
AttributeListBuilder.AttributeShape
Theshape
attribute.static class
AttributeListBuilder.AttributeShowBoxes
Theshowboxes
attribute.static class
AttributeListBuilder.AttributeSubGraphStyle
Thestyle
attribute for sub graphs.static class
AttributeListBuilder.AttributeTailLabel
Thetaillabel
attribute.static class
AttributeListBuilder.AttributeTailTooltip
Thetailtooltip
attribute.static class
AttributeListBuilder.AttributeTooltip
Thetooltip
attribute.static class
AttributeListBuilder.AttributeTrueColor
Thetruecolor
attribute.static class
AttributeListBuilder.AttributeWidth
Thewith
attribute.static class
AttributeListBuilder.BuilderEdge
A builder for anEdgeAttributeList
.static class
AttributeListBuilder.BuilderGraph
A builder for anGraphAttributeList
.static class
AttributeListBuilder.BuilderNode
A builder for anNodeAttributeList
.static class
AttributeListBuilder.BuilderSubGraph
A builder for anSubGraphAttributeList
.static interface
AttributeListBuilder.IMixinColor<A extends AttributeListBuilder.ITypedAttribute<Color>>
Mixin for attributes that accept a single color.static interface
AttributeListBuilder.IMixinColorList<A extends AttributeListBuilder.ITypedAttribute<ColorList>>
Mixin for attributes that accept a color list.static interface
AttributeListBuilder.IMixinLabelString<A extends AttributeListBuilder.ITypedAttribute<LabelString>>
Mixin for attributes that accept a label string.static interface
AttributeListBuilder.IMixinLength<L extends Length,A extends AttributeListBuilder.ITypedAttribute<L>>
Mixin for attributes that accept a length with some unit.static interface
AttributeListBuilder.IMixinLengthInches<A extends AttributeListBuilder.ITypedAttribute<Length.Inches>>
Mixin for attributes that accept a length with the unit inches.static interface
AttributeListBuilder.IMixinLengthList<L extends Length,A extends AttributeListBuilder.ITypedAttribute<LengthList<L>>>
Mixin for attributes that accept a length with the some unit.static interface
AttributeListBuilder.IMixinLengthListInches<A extends AttributeListBuilder.ITypedAttribute<LengthList<Length.Inches>>>
Mixin for attributes that accept a length with the unit inches.static interface
AttributeListBuilder.IMixinLengthPoints<A extends AttributeListBuilder.ITypedAttribute<Length.Points>>
Mixin for attributes that accept a length with the unit pints.static interface
AttributeListBuilder.IMixinPoint<A extends AttributeListBuilder.ITypedAttribute<Point>>
Mixin for attributes that accept a point.static interface
AttributeListBuilder.IMixinStyleList<X extends IStyle,A extends AttributeListBuilder.ITypedAttribute<StyleList<X>>>
Mixin for attributes that accept a style list.static interface
AttributeListBuilder.ITypedAttribute<T>
A named attribute for a dot graph.static interface
AttributeListBuilder.ITypedAttributeDescriptor<T,A extends AttributeListBuilder.ITypedAttribute<T>>
Models the type of a graphviz element attribute.static class
AttributeListBuilder.StandardAttribute
List of pre-definedAttributeListBuilder.TypedAttribute
s.
-
Constructor Summary
Constructors Modifier Constructor Description protected
AttributeListBuilder(Function<List<? extends Map.Entry<? extends CharSequence,Object>>,A> ctor)
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description Self
attr(EStandardAttribute attribute, Object value)
Sets a custom attribute.Self
attr(String name, Object value)
Sets a custom attribute.A
build()
Builds a POJO attribute list model with the current attributes.List<? extends Map.Entry<? extends CharSequence,Object>>
buildList()
Builds a new attribute list with the current settings.static AttributeListBuilder.BuilderEdge
edge()
static AttributeListBuilder.BuilderGraph
graph()
static AttributeListBuilder.BuilderNode
node()
protected abstract Self
self()
static AttributeListBuilder.BuilderSubGraph
subGraph()
-
-
-
Method Detail
-
attr
public final Self attr(EStandardAttribute attribute, Object value)
Sets a custom attribute.- Parameters:
attribute
- Type of the attribute.value
- Value of the attribute.- Returns:
- This builder instance for chaining method calls.
-
attr
public final Self attr(String name, Object value)
Sets a custom attribute.- Parameters:
name
- Name of the attribute.value
- Value of the attribute.- Returns:
- This builder instance for chaining method calls.
-
build
public final A build()
Builds a POJO attribute list model with the current attributes.- Returns:
- A new attribute list.
-
buildList
public final List<? extends Map.Entry<? extends CharSequence,Object>> buildList()
Builds a new attribute list with the current settings.- Returns:
- A new attribute map with the current settings.
-
self
protected abstract Self self()
-
edge
public static AttributeListBuilder.BuilderEdge edge()
- Returns:
- A new builder for a set of edge attributes.
-
graph
public static AttributeListBuilder.BuilderGraph graph()
- Returns:
- A new builder for a set of graph attributes.
-
node
public static AttributeListBuilder.BuilderNode node()
- Returns:
- A new builder for a set of node attributes.
-
subGraph
public static AttributeListBuilder.BuilderSubGraph subGraph()
- Returns:
- A new builder for a set of sub graph attributes.
-
-