Package net.sf.saxon.type
Class StringConverter
java.lang.Object
net.sf.saxon.type.Converter
net.sf.saxon.type.StringConverter
- Direct Known Subclasses:
StringConverter.StringToAnyURI
,StringConverter.StringToBase64Binary
,StringConverter.StringToBoolean
,StringConverter.StringToDate
,StringConverter.StringToDateTime
,StringConverter.StringToDateTimeStamp
,StringConverter.StringToDayTimeDuration
,StringConverter.StringToDecimal
,StringConverter.StringToDerivedStringSubtype
,StringConverter.StringToDuration
,StringConverter.StringToFloat
,StringConverter.StringToGDay
,StringConverter.StringToGMonth
,StringConverter.StringToGMonthDay
,StringConverter.StringToGYear
,StringConverter.StringToGYearMonth
,StringConverter.StringToHexBinary
,StringConverter.StringToInteger
,StringConverter.StringToIntegerSubtype
,StringConverter.StringToLanguage
,StringConverter.StringToNCName
,StringConverter.StringToNMTOKEN
,StringConverter.StringToNonStringDerivedType
,StringConverter.StringToNormalizedString
,StringConverter.StringToNotation
,StringConverter.StringToQName
,StringConverter.StringToString
,StringConverter.StringToStringSubtype
,StringConverter.StringToTime
,StringConverter.StringToToken
,StringConverter.StringToUnionConverter
,StringConverter.StringToUntypedAtomic
,StringConverter.StringToYearMonthDuration
,StringToDouble
A
Converter
that accepts a string as input. This subclass of Converter is provided
to avoid having to wrap the string into a StringValue prior to conversion. Every Converter whose
source type is xs:string must be an instance of this subclass.
The input to a StringConverter can also be an xs:untypedAtomic value, since the conversion semantics are always the same as from a string.
A StringConverter also provides a method to validate that a string is valid against the target type, without actually performing the conversion.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic class
Converts string to anyURIstatic class
Converts string to base64static class
Converts a string to a booleanstatic class
Converts a string to a datestatic class
Converts a string to a dateTimestatic class
Converts a string to a dateTimeStampstatic class
Converts a string to a dayTimeDurationstatic class
Converts a string to an xs:decimalstatic class
Converts from xs;string to a user-defined type derived from a built-in subtype of xs:stringstatic class
Converts a string to a durationstatic class
Converts a string to xs:floatstatic class
Converts a string to a gDaystatic class
Converts a string to a gMonthstatic class
Converts a string to a gMonthDaystatic class
Converts a string to a gYearstatic class
Converts a string to a gYearMonthstatic class
Converts a string to hexBinarystatic class
Converts a string to an integerstatic class
Converts a string to a built-in subtype of integerstatic class
Converts from xs:string to xs:languagestatic class
Converts from xs:string to xs:Namestatic class
Converts from xs:string to xs:NCName, xs:ID, xs:IDREF, or xs:ENTITYstatic class
Converts from xs:string to xs:NMTOKENstatic class
Converter from string to a derived type (derived from a type other than xs:string), where the derived type needs to retain the original string for validating against lexical facets such as pattern.static class
Converts from xs:string to xs:normalizedStringstatic class
Converts String to NOTATIONstatic class
Converts String to QNamestatic class
Converts from xs:string or xs:untypedAtomic to xs:Stringstatic class
Converts from xs:string to a user-defined type derived directly from xs:stringstatic class
Converts a string to a timestatic class
Converts from xs:string to xs:tokenstatic class
Converter from string to plain union typesstatic class
Converts from xs:string or xs:untypedAtomic to xs:untypedAtomicstatic class
Converts a string to a yearMonthDurationNested classes/interfaces inherited from class net.sf.saxon.type.Converter
Converter.Base64BinaryToHexBinary, Converter.BooleanToDecimal, Converter.BooleanToDouble, Converter.BooleanToFloat, Converter.BooleanToInteger, Converter.DateTimeToDate, Converter.DateTimeToGDay, Converter.DateTimeToGMonth, Converter.DateTimeToGMonthDay, Converter.DateTimeToGYear, Converter.DateTimeToGYearMonth, Converter.DateTimeToTime, Converter.DateToDateTime, Converter.DecimalToInteger, Converter.DoubleToDecimal, Converter.DoubleToInteger, Converter.DownCastingConverter, Converter.DurationToDayTimeDuration, Converter.DurationToYearMonthDuration, Converter.FloatToDecimal, Converter.FloatToInteger, Converter.HexBinaryToBase64Binary, Converter.IdentityConverter, Converter.IntegerToDecimal, Converter.NotationToQName, Converter.NumericToBoolean, Converter.NumericToDecimal, Converter.NumericToDouble, Converter.NumericToFloat, Converter.NumericToInteger, Converter.PromoterToAnyURI, Converter.PromoterToBase64Binary, Converter.PromoterToDouble, Converter.PromoterToFloat, Converter.PromoterToHexBinary, Converter.PromoterToString, Converter.QNameToNotation, Converter.ToStringConverter, Converter.ToUntypedAtomicConverter, Converter.TwoPhaseConverter, Converter.UnfailingConverter, Converter.UpCastingConverter
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
Create a StringConverterprotected
StringConverter
(ConversionRules rules) Create a StringConverter -
Method Summary
Modifier and TypeMethodDescriptionconvert
(AtomicValue input) Convert an atomic value from the source type to the target typeabstract ConversionResult
convertString
(UnicodeString input) Convert a string to the target type of this converter.validate
(UnicodeString input) Validate a string for conformance to the target type, without actually performing the conversionMethods inherited from class net.sf.saxon.type.Converter
convert, getConversionRules, getNamespaceResolver, isAlwaysSuccessful, isPromoter, setConversionRules, setNamespaceResolver
-
Constructor Details
-
StringConverter
protected StringConverter()Create a StringConverter -
StringConverter
Create a StringConverter- Parameters:
rules
- the conversion rules to be applied
-
-
Method Details
-
convertString
Convert a string to the target type of this converter.- Parameters:
input
- the string to be converted- Returns:
- either an
AtomicValue
of the appropriate type for this converter (if conversion succeeded), or aValidationFailure
if conversion failed.
-
validate
Validate a string for conformance to the target type, without actually performing the conversion- Parameters:
input
- the string to be validated- Returns:
- null if validation is successful, or a ValidationFailure indicating the reasons for failure if unsuccessful
-
convert
Description copied from class:Converter
Convert an atomic value from the source type to the target type- Specified by:
convert
in classConverter
- Parameters:
input
- the atomic value to be converted, which the caller guarantees to be of the appropriate type for the converter. The results are undefined if the value is of the wrong type; possible outcomes are (apparent) success, or a ClassCastException.- Returns:
- the result of the conversion, as an
AtomicValue
, if conversion succeeds, or aValidationFailure
object describing the reasons for failure if conversion is not possible. Note that the ValidationFailure object is not (and does not contain) an exception, because it does not necessarily result in an error being thrown, and creating exceptions on non-failure paths is expensive.
-