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 ClassesModifier and TypeClassDescriptionstatic final classThearrowheadattribute.static final classThearrowsizeattribute.static final classThearrowtailattribute.static final classThebgcolorattribute.static final classTheclassattribute.static final classTheclusterattribute.static final classTheclusterrankattribute.static final classThecolorattribute.static final classTheconstraintattribute.static final classThedirattribute.static final classThestyleattribute for edges.static final classTheedgetooltipattribute.static final classThexlpattribute.static final classThexlabelattribute.static final classThefillcolorattribute.static final classThefontcolorattribute.static final classThefontnameattribute.static final classThefontsizeattribute.static final classTherootattribute for graphs.static final classTheheadlabelattribute.static final classTheheadtooltipattribute.static final classThewithattribute.static final classThelabelattribute.static final classThelpattribute.static final classThelabelfontcolorattribute.static final classThelabellocattribute.static final classThelabeltooltipattribute.static final classThemarginattribute.static final classTherootattribute for nodes.static final classThenodsepattribute.static final classThestyleattribute for nodes.static final classTheorderingattribute.static final classThepencolorattribute.static final classThepenwithattribute.static final classTheperipheriesattribute.static final classTherankdirattribute.static final classTheranksepattribute.static final classTheshapeattribute.static final classTheshowboxesattribute.static final classThestyleattribute for sub graphs.static final classThetaillabelattribute.static final classThetailtooltipattribute.static final classThetooltipattribute.static final classThetruecolorattribute.static final classThewithattribute.static final classA builder for anEdgeAttributeList.static final classA builder for anGraphAttributeList.static final classA builder for anNodeAttributeList.static final classA builder for anSubGraphAttributeList.static interfaceMixin for attributes that accept a single color.static interfaceMixin for attributes that accept a color list.static interfaceMixin for attributes that accept a label string.static interfaceAttributeListBuilder.IMixinLength<L extends Length, A extends AttributeListBuilder.ITypedAttribute<L>>Mixin for attributes that accept a length with some unit.static interfaceAttributeListBuilder.IMixinLengthInches<A extends AttributeListBuilder.ITypedAttribute<Length.Inches>>Mixin for attributes that accept a length with the unit inches.static interfaceAttributeListBuilder.IMixinLengthList<L extends Length, A extends AttributeListBuilder.ITypedAttribute<LengthList<L>>>Mixin for attributes that accept a length with the some unit.static interfaceAttributeListBuilder.IMixinLengthListInches<A extends AttributeListBuilder.ITypedAttribute<LengthList<Length.Inches>>>Mixin for attributes that accept a length with the unit inches.static interfaceAttributeListBuilder.IMixinLengthPoints<A extends AttributeListBuilder.ITypedAttribute<Length.Points>>Mixin for attributes that accept a length with the unit pints.static interfaceMixin for attributes that accept a point.static interfaceAttributeListBuilder.IMixinStyleList<X extends IStyle, A extends AttributeListBuilder.ITypedAttribute<StyleList<X>>>Mixin for attributes that accept a style list.static interfaceA named attribute for a dot graph.static interfaceAttributeListBuilder.ITypedAttributeDescriptor<T, A extends AttributeListBuilder.ITypedAttribute<T>>Models the type of a graphviz element attribute.static final classList of pre-definedAttributeListBuilder.TypedAttributes. -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedAttributeListBuilder(Function<List<? extends Map.Entry<? extends CharSequence, Object>>, A> ctor) -
Method Summary
Modifier and TypeMethodDescriptionfinal Selfattr(EStandardAttribute attribute, Object value) Sets a custom attribute.final SelfSets a custom attribute.final Abuild()Builds a POJO attribute list model with the current attributes.final List<? extends Map.Entry<? extends CharSequence, Object>> Builds a new attribute list with the current settings.edge()graph()node()protected abstract Selfself()subGraph()
-
Constructor Details
-
AttributeListBuilder
-
-
Method Details
-
attr
Sets a custom attribute.- Parameters:
attribute- Type of the attribute.value- Value of the attribute.- Returns:
- This builder instance for chaining method calls.
-
attr
-
build
Builds a POJO attribute list model with the current attributes.- Returns:
- A new attribute list.
-
buildList
Builds a new attribute list with the current settings.- Returns:
- A new attribute map with the current settings.
-
self
-
edge
- Returns:
- A new builder for a set of edge attributes.
-
graph
- Returns:
- A new builder for a set of graph attributes.
-
node
- Returns:
- A new builder for a set of node attributes.
-
subGraph
- Returns:
- A new builder for a set of sub graph attributes.
-