Package net.sf.saxon.type
Class Converter.TwoPhaseConverter
- java.lang.Object
-
- net.sf.saxon.type.Converter
-
- net.sf.saxon.type.StringConverter
-
- net.sf.saxon.type.Converter.TwoPhaseConverter
-
- Enclosing class:
- Converter
public static class Converter.TwoPhaseConverter extends StringConverter
Converter that operates in two phases, via an intermediate type
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class net.sf.saxon.type.StringConverter
StringConverter.IdentityConverter, StringConverter.StringToAnyURI, StringConverter.StringToBoolean, StringConverter.StringToDate, StringConverter.StringToDateTime, StringConverter.StringToDayTimeDuration, StringConverter.StringToDecimal, StringConverter.StringToDerivedStringSubtype, StringConverter.StringToDouble, StringConverter.StringToDuration, StringConverter.StringToExternalObjectType, StringConverter.StringToFloat, StringConverter.StringToGDayConverter, StringConverter.StringToGMonth, StringConverter.StringToGMonthDay, StringConverter.StringToGYear, StringConverter.StringToGYearMonth, StringConverter.StringToHexBinary, StringConverter.StringToInteger, StringConverter.StringToIntegerSubtype, StringConverter.StringToLanguage, StringConverter.StringToName, 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
-
Nested 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.IntegerToDecimal, Converter.NotationToQName, Converter.NumericToBoolean, Converter.NumericToDecimal, Converter.NumericToDouble, Converter.NumericToFloat, Converter.NumericToInteger, Converter.PromoterToDouble, Converter.PromoterToFloat, Converter.QNameToNotation, Converter.StringToBase64BinaryConverter, Converter.ToStringConverter, Converter.ToUntypedAtomicConverter, Converter.TwoPhaseConverter, Converter.UpCastingConverter
-
-
Field Summary
-
Fields inherited from class net.sf.saxon.type.StringConverter
STRING_TO_BASE64_BINARY, STRING_TO_BOOLEAN, STRING_TO_DAY_TIME_DURATION, STRING_TO_DECIMAL, STRING_TO_DURATION, STRING_TO_HEX_BINARY, STRING_TO_INTEGER, STRING_TO_LANGUAGE, STRING_TO_NORMALIZED_STRING, STRING_TO_STRING, STRING_TO_TIME, STRING_TO_TOKEN, STRING_TO_UNTYPED_ATOMIC, STRING_TO_YEAR_MONTH_DURATION
-
Fields inherited from class net.sf.saxon.type.Converter
BASE64_BINARY_TO_HEX_BINARY, BOOLEAN_TO_DECIMAL, BOOLEAN_TO_DOUBLE, BOOLEAN_TO_FLOAT, BOOLEAN_TO_INTEGER, DATE_TIME_TO_DATE, DATE_TIME_TO_G_DAY, DATE_TIME_TO_G_MONTH, DATE_TIME_TO_G_MONTH_DAY, DATE_TIME_TO_G_YEAR, DATE_TIME_TO_G_YEAR_MONTH, DATE_TIME_TO_TIME, DATE_TO_DATE_TIME, DECIMAL_TO_INTEGER, DOUBLE_TO_DECIMAL, DOUBLE_TO_INTEGER, DURATION_TO_DAY_TIME_DURATION, DURATION_TO_YEAR_MONTH_DURATION, FLOAT_TO_DECIMAL, FLOAT_TO_INTEGER, HEX_BINARY_TO_BASE64_BINARY, IDENTITY_CONVERTER, INTEGER_TO_DECIMAL, NOTATION_TO_QNAME, NUMERIC_TO_BOOLEAN, NUMERIC_TO_DECIMAL, NUMERIC_TO_DOUBLE, NUMERIC_TO_FLOAT, NUMERIC_TO_INTEGER, QNAME_TO_NOTATION, TO_STRING, TO_UNTYPED_ATOMIC
-
-
Constructor Summary
Constructors Constructor Description TwoPhaseConverter(Converter phaseOne, Converter phaseTwo)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description ConversionResult
convert(AtomicValue input)
Convert an atomic value from the source type to the target typeConversionResult
convertString(java.lang.CharSequence input)
Convert a string to the target type of this converter.static Converter.TwoPhaseConverter
makeTwoPhaseConverter(AtomicType inputType, AtomicType viaType, AtomicType outputType, ConversionRules rules)
void
setNamespaceResolver(NamespaceResolver resolver)
Provide a namespace resolver, needed for conversion to namespace-sensitive types such as QName and NOTATION.-
Methods inherited from class net.sf.saxon.type.StringConverter
getStringConverter, validate
-
Methods inherited from class net.sf.saxon.type.Converter
convert, getConversionRules, getConverter, getNamespaceResolver, isAlwaysSuccessful, isXPath30Conversion, setConversionRules
-
-
-
-
Method Detail
-
makeTwoPhaseConverter
public static Converter.TwoPhaseConverter makeTwoPhaseConverter(AtomicType inputType, AtomicType viaType, AtomicType outputType, ConversionRules rules)
-
setNamespaceResolver
public void setNamespaceResolver(NamespaceResolver resolver)
Description copied from class:Converter
Provide a namespace resolver, needed for conversion to namespace-sensitive types such as QName and NOTATION. The resolver is ignored if the target type is not namespace-sensitive- Overrides:
setNamespaceResolver
in classConverter
- Parameters:
resolver
- the namespace resolver to be used
-
convert
public ConversionResult convert(AtomicValue input)
Description copied from class:Converter
Convert an atomic value from the source type to the target type- Overrides:
convert
in classStringConverter
- Parameters:
input
- the atomic value to be converted, which the caller guarantees to be of the appropriate type for the converter- 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.
-
convertString
public ConversionResult convertString(java.lang.CharSequence input)
Description copied from class:StringConverter
Convert a string to the target type of this converter.- Specified by:
convertString
in classStringConverter
- 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.
-
-