- 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 class
AttributeNode.ElementRelation
-
Field Summary
Fields Modifier and Type Field Description private @NotNull java.util.Map<java.lang.String,java.lang.String>
attributes
private static Length
BottomOrRight
private static Length
Center
private static MeasureContext
DUMMY_MEASURE_CONTEXT
private ParsedElement
element
private static Length
FALLBACK_LENGTH
private static Percentage
FALLBACK_PERCENTAGE
private @NotNull java.util.List<@NotNull StyleSheet>
styleSheets
private @NotNull java.lang.String
tagName
private static Length
TopOrLeft
-
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 AttributeNode
copy()
private @NotNull TransformValue
createTransformValueFromParts(@NotNull java.util.List<TransformPart> parts)
@NotNull ParsedDocument
document()
@NotNull ParsedElement
element()
@Nullable AnimatedColor
getAnimatedColor(@NotNull java.lang.String property, @NotNull ColorValue initial)
private @Nullable AnimatedFloatList
getAnimatedFloatList(@NotNull java.lang.String property, @NotNull FloatListValue initial)
@Nullable AnimatedLength
getAnimatedLength(@NotNull java.lang.String property, @NotNull LengthValue initial, @NotNull PercentageDimension dimension)
private @Nullable AnimatedPaint
getAnimatedPaint(@NotNull java.lang.String property, @NotNull SVGPaint initial)
private @Nullable AnimatedPercentage
getAnimatedPercentage(@NotNull java.lang.String property, @NotNull PercentageValue initial)
@Nullable AnimatedTransform
getAnimatedTransform(@NotNull java.lang.String property, @NotNull TransformValue initial)
@Nullable ClipPath
getClipPath()
@NotNull java.awt.Color
getColor(@NotNull java.lang.String key)
@Nullable java.awt.Color
getColor(@NotNull java.lang.String key, @Nullable java.awt.Color fallback)
double @NotNull []
getDoubleList(@NotNull java.lang.String key)
@NotNull Duration
getDuration(@NotNull java.lang.String key, @NotNull Duration fallback)
<T> T
getElementByHref(@NotNull java.lang.Class<T> type, @NotNull Category category, @Nullable java.lang.String value, AttributeNode.ElementRelation relation)
<T> T
getElementByHref(@NotNull java.lang.Class<T> type, @Nullable java.lang.String value, AttributeNode.ElementRelation relation)
private <T> T
getElementByUrl(@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 Filter
getFilter()
@NotNull FilterChannelKey
getFilterChannelKey(@NotNull java.lang.String key, @NotNull FilterChannelKey fallback)
float
getFloat(@NotNull java.lang.String name, float fallback)
float @NotNull []
getFloatList(@NotNull java.lang.String key)
@NotNull FloatListValue
getFloatList(@NotNull java.lang.String key, Inherited inherited, Animatable animatable)
@NotNull Length
getHorizontalReferenceLength(@NotNull java.lang.String key)
@Nullable java.lang.String
getHref()
int
getInt(@NotNull java.lang.String key, int fallback)
@Nullable Length
getLength(@NotNull java.lang.String key, @NotNull PercentageDimension dimension)
@NotNull Length
getLength(@NotNull java.lang.String key, @NotNull PercentageDimension dimension, float fallback)
@Nullable LengthValue
getLength(@NotNull java.lang.String key, @NotNull PercentageDimension dimension, @Nullable LengthValue fallback, Inherited inherited, Animatable animatable)
@Nullable Length
getLength(@NotNull java.lang.String key, @NotNull PercentageDimension dimension, @Nullable Length fallback)
@Nullable LengthValue
getLength(@NotNull java.lang.String key, @NotNull PercentageDimension dimension, Inherited inherited, Animatable animatable)
private @NotNull Length
getLengthInternal(@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 Mask
getMask()
float
getNonNegativeFloat(@NotNull java.lang.String name, float fallback)
@Nullable SVGPaint
getPaint(@NotNull java.lang.String key, @Nullable SVGPaint fallback, Inherited inherited, Animatable animatable)
@Nullable SVGPaint
getPaint(@NotNull java.lang.String key, Inherited inherited, Animatable animatable)
private @Nullable SVGPaint
getPaintInternal(@NotNull java.lang.String key, @Nullable SVGPaint fallback)
@Nullable PercentageValue
getPercentage(@NotNull java.lang.String key, @Nullable PercentageValue fallback, Inherited inherited, Animatable animatable)
@Nullable Percentage
getPercentage(@NotNull java.lang.String key, @Nullable Percentage fallback)
@Nullable PercentageValue
getPercentage(@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.String
getValue(@NotNull java.lang.String key)
@NotNull Length
getVerticalReferenceLength(@NotNull java.lang.String key)
@Nullable ViewBox
getViewBox()
boolean
hasAttribute(@NotNull java.lang.String name)
private static boolean
isBlank(@NotNull java.lang.String s)
private @NotNull LoadHelper
loadHelper()
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 SVGPaint
parsePaint(@Nullable java.lang.String value)
@NotNull AttributeParser
parser()
private @NotNull Length
parseReferenceLength(@NotNull java.lang.String key, @NotNull java.lang.String topLeft, @NotNull java.lang.String bottomRight, @NotNull PercentageDimension dimension)
@Nullable TransformValue
parseTransform(@NotNull java.lang.String key)
@Nullable TransformValue
parseTransform(@NotNull java.lang.String key, Inherited inherited, Animatable animatable)
(package private) void
prepareForNodeBuilding()
private static void
preprocessAttributes(@NotNull java.util.Map<java.lang.String,java.lang.String> attributes, @NotNull java.util.Map<java.lang.String,java.lang.String> styleAttributes)
private <T> T
recordIndirectChild(T child, java.lang.String value, AttributeNode.ElementRelation relation)
@Nullable java.net.URI
resolveResourceURI(@NotNull java.lang.String url)
@NotNull ResourceLoader
resourceLoader()
(package private) void
setElement(ParsedElement element)
(package private) @NotNull java.util.List<@NotNull StyleSheet>
styleSheets()
boolean
tagIsOneOf(@NotNull java.lang.String... tags)
@NotNull java.lang.String
tagName()
-
-
-
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)
-
-