- java.lang.Object
-
- com.github.weisj.jsvg.parser.impl.AttributeNode
-
public final class AttributeNode extends java.lang.Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classAttributeNode.ElementRelation
-
Field Summary
Fields Modifier and Type Field Description private @NotNull java.util.Map<java.lang.String,java.lang.String>attributesprivate static LengthBottomOrRightprivate static LengthCenterprivate static MeasureContextDUMMY_MEASURE_CONTEXTprivate ParsedElementelementprivate static LengthFALLBACK_LENGTHprivate static PercentageFALLBACK_PERCENTAGEprivate @NotNull java.util.List<@NotNull StyleSheet>styleSheetsprivate @NotNull java.lang.StringtagNameprivate static LengthTopOrLeft
-
Constructor Summary
Constructors Constructor Description AttributeNode(@NotNull java.lang.String tagName, @NotNull java.util.Map<java.lang.String,java.lang.String> attributes, @NotNull java.util.List<@NotNull StyleSheet> styleSheets)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private <T extends BaseAnimationNode>
java.util.List<@NotNull T>animateNodes(@NotNull java.lang.String property, java.lang.Class<T> type)@NotNull java.util.Map<java.lang.String,java.lang.String>attributes()@NotNull java.util.List<@NotNull java.lang.String>classNames()@NotNull AttributeNodecopy()private @NotNull TransformValuecreateTransformValueFromParts(@NotNull java.util.List<TransformPart> parts)@NotNull ParsedDocumentdocument()@NotNull ParsedElementelement()@Nullable AnimatedColorgetAnimatedColor(@NotNull java.lang.String property, @NotNull ColorValue initial)private @Nullable AnimatedFloatListgetAnimatedFloatList(@NotNull java.lang.String property, @NotNull FloatListValue initial)@Nullable AnimatedLengthgetAnimatedLength(@NotNull java.lang.String property, @NotNull LengthValue initial, @NotNull PercentageDimension dimension)private @Nullable AnimatedPaintgetAnimatedPaint(@NotNull java.lang.String property, @NotNull SVGPaint initial)private @Nullable AnimatedPercentagegetAnimatedPercentage(@NotNull java.lang.String property, @NotNull PercentageValue initial)@Nullable AnimatedTransformgetAnimatedTransform(@NotNull java.lang.String property, @NotNull TransformValue initial)@Nullable ClipPathgetClipPath()@NotNull java.awt.ColorgetColor(@NotNull java.lang.String key)@Nullable java.awt.ColorgetColor(@NotNull java.lang.String key, @Nullable java.awt.Color fallback)double @NotNull []getDoubleList(@NotNull java.lang.String key)@NotNull DurationgetDuration(@NotNull java.lang.String key, @NotNull Duration fallback)<T> TgetElementByHref(@NotNull java.lang.Class<T> type, @NotNull Category category, @Nullable java.lang.String value, AttributeNode.ElementRelation relation)<T> TgetElementByHref(@NotNull java.lang.Class<T> type, @Nullable java.lang.String value, AttributeNode.ElementRelation relation)private <T> TgetElementByUrl(@NotNull java.lang.Class<T> type, @Nullable java.lang.String value)<E extends java.lang.Enum<E>>
EgetEnum(@NotNull java.lang.String key, E fallback)<E extends java.lang.Enum<E>>
EgetEnumNullable(@NotNull java.lang.String key, @NotNull java.lang.Class<E> enumType)@Nullable FiltergetFilter()@NotNull FilterChannelKeygetFilterChannelKey(@NotNull java.lang.String key, @NotNull FilterChannelKey fallback)floatgetFloat(@NotNull java.lang.String name, float fallback)float @NotNull []getFloatList(@NotNull java.lang.String key)@NotNull FloatListValuegetFloatList(@NotNull java.lang.String key, Inherited inherited, Animatable animatable)@NotNull LengthgetHorizontalReferenceLength(@NotNull java.lang.String key)@Nullable java.lang.StringgetHref()intgetInt(@NotNull java.lang.String key, int fallback)@Nullable LengthgetLength(@NotNull java.lang.String key, @NotNull PercentageDimension dimension)@NotNull LengthgetLength(@NotNull java.lang.String key, @NotNull PercentageDimension dimension, float fallback)@Nullable LengthValuegetLength(@NotNull java.lang.String key, @NotNull PercentageDimension dimension, @Nullable LengthValue fallback, Inherited inherited, Animatable animatable)@Nullable LengthgetLength(@NotNull java.lang.String key, @NotNull PercentageDimension dimension, @Nullable Length fallback)@Nullable LengthValuegetLength(@NotNull java.lang.String key, @NotNull PercentageDimension dimension, Inherited inherited, Animatable animatable)private @NotNull LengthgetLengthInternal(@NotNull java.lang.String key, @NotNull PercentageDimension dimension)@NotNull Length @NotNull []getLengthList(@NotNull java.lang.String key, @NotNull PercentageDimension dimension)@NotNull Length @Nullable []getLengthList(@NotNull java.lang.String key, @NotNull Length @Nullable [] fallback, @NotNull PercentageDimension dimension)@Nullable MaskgetMask()floatgetNonNegativeFloat(@NotNull java.lang.String name, float fallback)@Nullable SVGPaintgetPaint(@NotNull java.lang.String key, @Nullable SVGPaint fallback, Inherited inherited, Animatable animatable)@Nullable SVGPaintgetPaint(@NotNull java.lang.String key, Inherited inherited, Animatable animatable)private @Nullable SVGPaintgetPaintInternal(@NotNull java.lang.String key, @Nullable SVGPaint fallback)@Nullable PercentageValuegetPercentage(@NotNull java.lang.String key, @Nullable PercentageValue fallback, Inherited inherited, Animatable animatable)@Nullable PercentagegetPercentage(@NotNull java.lang.String key, @Nullable Percentage fallback)@Nullable PercentageValuegetPercentage(@NotNull java.lang.String key, Inherited inherited, Animatable animatable)@NotNull java.lang.String @NotNull []getStringList(@NotNull java.lang.String name)@NotNull java.lang.String @NotNull []getStringList(@NotNull java.lang.String name, SeparatorMode separatorMode)@Nullable java.lang.StringgetValue(@NotNull java.lang.String key)@NotNull LengthgetVerticalReferenceLength(@NotNull java.lang.String key)@Nullable ViewBoxgetViewBox()booleanhasAttribute(@NotNull java.lang.String name)private static booleanisBlank(@NotNull java.lang.String s)private @NotNull LoadHelperloadHelper()private static <T,A extends T,N extends BaseAnimationNode>
AmakeAnimated(@NotNull java.util.List<N> animationNodes, T initial, @NotNull java.util.function.BiFunction<N,T,A> factory)@Nullable SVGPaintparsePaint(@Nullable java.lang.String value)@NotNull AttributeParserparser()private @NotNull LengthparseReferenceLength(@NotNull java.lang.String key, @NotNull java.lang.String topLeft, @NotNull java.lang.String bottomRight, @NotNull PercentageDimension dimension)@Nullable TransformValueparseTransform(@NotNull java.lang.String key)@Nullable TransformValueparseTransform(@NotNull java.lang.String key, Inherited inherited, Animatable animatable)(package private) voidprepareForNodeBuilding()private static voidpreprocessAttributes(@NotNull java.util.Map<java.lang.String,java.lang.String> attributes, @NotNull java.util.Map<java.lang.String,java.lang.String> styleAttributes)private <T> TrecordIndirectChild(T child, java.lang.String value, AttributeNode.ElementRelation relation)@Nullable java.net.URIresolveResourceURI(@NotNull java.lang.String url)@NotNull ResourceLoaderresourceLoader()(package private) voidsetElement(ParsedElement element)(package private) @NotNull java.util.List<@NotNull StyleSheet>styleSheets()booleantagIsOneOf(@NotNull java.lang.String... tags)@NotNull java.lang.StringtagName()
-
-
-
Field Detail
-
TopOrLeft
private static final Length TopOrLeft
-
Center
private static final Length Center
-
BottomOrRight
private static final Length BottomOrRight
-
FALLBACK_LENGTH
private static final Length FALLBACK_LENGTH
-
FALLBACK_PERCENTAGE
private static final Percentage FALLBACK_PERCENTAGE
-
DUMMY_MEASURE_CONTEXT
private static final MeasureContext DUMMY_MEASURE_CONTEXT
-
tagName
@NotNull private final @NotNull java.lang.String tagName
-
attributes
@NotNull private final @NotNull java.util.Map<java.lang.String,java.lang.String> attributes
-
styleSheets
@NotNull private final @NotNull java.util.List<@NotNull StyleSheet> styleSheets
-
element
private ParsedElement element
-
-
Constructor Detail
-
AttributeNode
public AttributeNode(@NotNull @NotNull java.lang.String tagName, @NotNull @NotNull java.util.Map<java.lang.String,java.lang.String> attributes, @NotNull @NotNull java.util.List<@NotNull StyleSheet> styleSheets)
-
-
Method Detail
-
setElement
void setElement(ParsedElement element)
-
loadHelper
@NotNull private @NotNull LoadHelper loadHelper()
-
copy
@NotNull public @NotNull AttributeNode copy()
-
prepareForNodeBuilding
void prepareForNodeBuilding()
-
isBlank
private static boolean isBlank(@NotNull @NotNull java.lang.String s)
-
preprocessAttributes
private static void preprocessAttributes(@NotNull @NotNull java.util.Map<java.lang.String,java.lang.String> attributes, @NotNull @NotNull java.util.Map<java.lang.String,java.lang.String> styleAttributes)
-
document
@NotNull public @NotNull ParsedDocument document()
-
element
@NotNull public @NotNull ParsedElement element()
-
styleSheets
@NotNull @NotNull java.util.List<@NotNull StyleSheet> styleSheets()
-
getElementByUrl
@Nullable private <T> T getElementByUrl(@NotNull @NotNull java.lang.Class<T> type, @Nullable @Nullable java.lang.String value)
-
recordIndirectChild
private <T> T recordIndirectChild(T child, java.lang.String value, AttributeNode.ElementRelation relation)
-
getElementByHref
@Nullable public <T> T getElementByHref(@NotNull @NotNull java.lang.Class<T> type, @Nullable @Nullable java.lang.String value, AttributeNode.ElementRelation relation)
-
getElementByHref
@Nullable public <T> T getElementByHref(@NotNull @NotNull java.lang.Class<T> type, @NotNull @NotNull Category category, @Nullable @Nullable java.lang.String value, AttributeNode.ElementRelation relation)
-
attributes
@NotNull public @NotNull java.util.Map<java.lang.String,java.lang.String> attributes()
-
tagName
@NotNull public @NotNull java.lang.String tagName()
-
tagIsOneOf
public boolean tagIsOneOf(@NotNull @NotNull java.lang.String... tags)
-
classNames
@NotNull public @NotNull java.util.List<@NotNull java.lang.String> classNames()
-
getValue
@Nullable public @Nullable java.lang.String getValue(@NotNull @NotNull java.lang.String key)
-
getColor
@NotNull public @NotNull java.awt.Color getColor(@NotNull @NotNull java.lang.String key)
-
getColor
@Contract("_,!null -> !null") @Nullable public @Nullable java.awt.Color getColor(@NotNull @NotNull java.lang.String key, @Nullable @Nullable java.awt.Color fallback)
-
getPaint
@Nullable public @Nullable SVGPaint getPaint(@NotNull @NotNull java.lang.String key, Inherited inherited, Animatable animatable)
-
getPaint
@Contract("_,!null,_,_ -> !null") @Nullable public @Nullable SVGPaint getPaint(@NotNull @NotNull java.lang.String key, @Nullable @Nullable SVGPaint fallback, Inherited inherited, Animatable animatable)
-
getPaintInternal
@Contract("_,!null -> !null") @Nullable private @Nullable SVGPaint getPaintInternal(@NotNull @NotNull java.lang.String key, @Nullable @Nullable SVGPaint fallback)
-
parsePaint
@Nullable public @Nullable SVGPaint parsePaint(@Nullable @Nullable java.lang.String value)
-
getLength
@Nullable public @Nullable Length getLength(@NotNull @NotNull java.lang.String key, @NotNull @NotNull PercentageDimension dimension)
-
getLength
@NotNull public @NotNull Length getLength(@NotNull @NotNull java.lang.String key, @NotNull @NotNull PercentageDimension dimension, float fallback)
-
getLength
@Contract("_,_,!null -> !null") @Nullable public @Nullable Length getLength(@NotNull @NotNull java.lang.String key, @NotNull @NotNull PercentageDimension dimension, @Nullable @Nullable Length fallback)
-
getLength
@Nullable public @Nullable LengthValue getLength(@NotNull @NotNull java.lang.String key, @NotNull @NotNull PercentageDimension dimension, Inherited inherited, Animatable animatable)
-
getLength
@Contract("_,_,!null,_,_ -> !null") @Nullable public @Nullable LengthValue getLength(@NotNull @NotNull java.lang.String key, @NotNull @NotNull PercentageDimension dimension, @Nullable @Nullable LengthValue fallback, Inherited inherited, Animatable animatable)
-
getDuration
@NotNull public @NotNull Duration getDuration(@NotNull @NotNull java.lang.String key, @NotNull @NotNull Duration fallback)
-
getLengthInternal
@NotNull private @NotNull Length getLengthInternal(@NotNull @NotNull java.lang.String key, @NotNull @NotNull PercentageDimension dimension)
-
getHorizontalReferenceLength
@NotNull public @NotNull Length getHorizontalReferenceLength(@NotNull @NotNull java.lang.String key)
-
getVerticalReferenceLength
@NotNull public @NotNull Length getVerticalReferenceLength(@NotNull @NotNull java.lang.String key)
-
parseReferenceLength
@NotNull private @NotNull Length parseReferenceLength(@NotNull @NotNull java.lang.String key, @NotNull @NotNull java.lang.String topLeft, @NotNull @NotNull java.lang.String bottomRight, @NotNull @NotNull PercentageDimension dimension)
-
getPercentage
@Contract("_,!null -> !null") @Nullable public @Nullable Percentage getPercentage(@NotNull @NotNull java.lang.String key, @Nullable @Nullable Percentage fallback)
-
getPercentage
@Nullable public @Nullable PercentageValue getPercentage(@NotNull @NotNull java.lang.String key, Inherited inherited, Animatable animatable)
-
getPercentage
@Contract("_,!null,_,_ -> !null") @Nullable public @Nullable PercentageValue getPercentage(@NotNull @NotNull java.lang.String key, @Nullable @Nullable PercentageValue fallback, Inherited inherited, Animatable animatable)
-
getLengthList
@NotNull public @NotNull Length @NotNull [] getLengthList(@NotNull @NotNull java.lang.String key, @NotNull @NotNull PercentageDimension dimension)
-
getLengthList
@Contract("_,!null,_ -> !null") @NotNull public @NotNull Length @Nullable [] getLengthList(@NotNull @NotNull java.lang.String key, @NotNull @NotNull Length @Nullable [] fallback, @NotNull @NotNull PercentageDimension dimension)
-
getFloatList
public float @NotNull [] getFloatList(@NotNull @NotNull java.lang.String key)
-
getFloatList
@NotNull public @NotNull FloatListValue getFloatList(@NotNull @NotNull java.lang.String key, Inherited inherited, Animatable animatable)
-
getDoubleList
public double @NotNull [] getDoubleList(@NotNull @NotNull java.lang.String key)
-
getEnum
@NotNull public <E extends java.lang.Enum<E>> E getEnum(@NotNull @NotNull java.lang.String key, @NotNull E fallback)
-
getEnumNullable
@Nullable public <E extends java.lang.Enum<E>> E getEnumNullable(@NotNull @NotNull java.lang.String key, @NotNull @NotNull java.lang.Class<E> enumType)
-
getClipPath
@Nullable public @Nullable ClipPath getClipPath()
-
getMask
@Nullable public @Nullable Mask getMask()
-
getFilter
@Nullable public @Nullable Filter getFilter()
-
getFilterChannelKey
@NotNull public @NotNull FilterChannelKey getFilterChannelKey(@NotNull @NotNull java.lang.String key, @NotNull @NotNull FilterChannelKey fallback)
-
parseTransform
@Nullable public @Nullable TransformValue parseTransform(@NotNull @NotNull java.lang.String key)
-
createTransformValueFromParts
@NotNull private @NotNull TransformValue createTransformValueFromParts(@NotNull @NotNull java.util.List<TransformPart> parts)
-
parseTransform
@Nullable public @Nullable TransformValue parseTransform(@NotNull @NotNull java.lang.String key, Inherited inherited, Animatable animatable)
-
hasAttribute
public boolean hasAttribute(@NotNull @NotNull java.lang.String name)
-
getStringList
@NotNull public @NotNull java.lang.String @NotNull [] getStringList(@NotNull @NotNull java.lang.String name)
-
getStringList
@NotNull public @NotNull java.lang.String @NotNull [] getStringList(@NotNull @NotNull java.lang.String name, SeparatorMode separatorMode)
-
getFloat
public float getFloat(@NotNull @NotNull java.lang.String name, float fallback)
-
getNonNegativeFloat
public float getNonNegativeFloat(@NotNull @NotNull java.lang.String name, float fallback)
-
getInt
public int getInt(@NotNull @NotNull java.lang.String key, int fallback)
-
getHref
@Nullable public @Nullable java.lang.String getHref()
-
getViewBox
@Nullable public @Nullable ViewBox getViewBox()
-
parser
@NotNull public @NotNull AttributeParser parser()
-
resourceLoader
@NotNull public @NotNull ResourceLoader resourceLoader()
-
resolveResourceURI
@Nullable public @Nullable java.net.URI resolveResourceURI(@NotNull @NotNull java.lang.String url)
-
animateNodes
private <T extends BaseAnimationNode> java.util.List<@NotNull T> animateNodes(@NotNull @NotNull java.lang.String property, java.lang.Class<T> type)
-
makeAnimated
@Nullable private static <T,A extends T,N extends BaseAnimationNode> A makeAnimated(@NotNull @NotNull java.util.List<N> animationNodes, @NotNull T initial, @NotNull @NotNull java.util.function.BiFunction<N,T,A> factory)
-
getAnimatedLength
@Nullable public @Nullable AnimatedLength getAnimatedLength(@NotNull @NotNull java.lang.String property, @NotNull @NotNull LengthValue initial, @NotNull @NotNull PercentageDimension dimension)
-
getAnimatedFloatList
@Nullable private @Nullable AnimatedFloatList getAnimatedFloatList(@NotNull @NotNull java.lang.String property, @NotNull @NotNull FloatListValue initial)
-
getAnimatedPercentage
@Nullable private @Nullable AnimatedPercentage getAnimatedPercentage(@NotNull @NotNull java.lang.String property, @NotNull @NotNull PercentageValue initial)
-
getAnimatedPaint
@Nullable private @Nullable AnimatedPaint getAnimatedPaint(@NotNull @NotNull java.lang.String property, @NotNull @NotNull SVGPaint initial)
-
getAnimatedColor
@Nullable public @Nullable AnimatedColor getAnimatedColor(@NotNull @NotNull java.lang.String property, @NotNull @NotNull ColorValue initial)
-
getAnimatedTransform
@Nullable public @Nullable AnimatedTransform getAnimatedTransform(@NotNull @NotNull java.lang.String property, @NotNull @NotNull TransformValue initial)
-
-