|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.jgoodies.binding.value.ConverterFactory
public final class ConverterFactory
A factory that vends ValueModels that convert types, for example Dates to Strings. More formally, a converting ValueModel VM1 converts the type T2 of an object being held as a value in one ValueModel VM2 into another type T1. When reading a value from VM1, instances of T2 are read from VM2 and are converted to T1. When storing a new value to VM1, the type converter will perform the inverse conversion and will convert an instance of T1 to T2.
Type converters should be used judiciously. To bind non-Strings
to a text UI component
you should favor to use a JFormattedTextField
.
They provide a powerful means to convert Strings to objects
and handle many cases that arise around invalid input.
ValueModel
,
Format
,
JFormattedTextField
Nested Class Summary | |
---|---|
static class |
ConverterFactory.BooleanNegator
Negates Booleans leaving null unchanged. |
static class |
ConverterFactory.BooleanToStringConverter
Converts Booleans to Strings and vice-versa using given texts for true, false, and null. |
static class |
ConverterFactory.DoubleConverter
Converts Doubles using a given multiplier. |
static class |
ConverterFactory.DoubleToIntegerConverter
Converts Doubles to Integers and vice-versa. |
static class |
ConverterFactory.FloatConverter
Converts Floats using a given multiplier. |
static class |
ConverterFactory.FloatToIntegerConverter
Converts Floats to Integers and vice-versa. |
static class |
ConverterFactory.IntegerConverter
Converts Integers using a given multiplier. |
static class |
ConverterFactory.LongConverter
Converts Longs using a given multiplier. |
static class |
ConverterFactory.LongToIntegerConverter
Converts Longs to Integers and vice-versa. |
static class |
ConverterFactory.StringConverter
Converts Values to Strings and vice-versa using a given Format. |
Method Summary | |
---|---|
static ValueModel |
createBooleanNegator(ValueModel booleanSource)
Creates and returns a ValueModel that negates Booleans and leaves null unchanged. |
static ValueModel |
createBooleanToStringConverter(ValueModel booleanSubject,
String trueText,
String falseText)
Creates and returns a ValueModel that converts Booleans to the associated of the two specified strings, and vice versa. |
static ValueModel |
createBooleanToStringConverter(ValueModel booleanSource,
String trueText,
String falseText,
String nullText)
Creates and returns a ValueModel that converts Booleans to the associated of the two specified strings, and vice versa. |
static ValueModel |
createDoubleConverter(ValueModel doubleSource,
double multiplier)
Creates and returns a ValueModel that converts Doubles using the specified multiplier. |
static ValueModel |
createDoubleToIntegerConverter(ValueModel doubleSource)
Creates and returns a ValueModel that converts Doubles to Integer, and vice versa. |
static ValueModel |
createDoubleToIntegerConverter(ValueModel doubleSource,
int multiplier)
Creates and returns a ValueModel that converts Doubles to Integer, and vice versa. |
static ValueModel |
createFloatConverter(ValueModel floatSource,
float multiplier)
Creates and returns a ValueModel that converts Floats using the specified multiplier. |
static ValueModel |
createFloatToIntegerConverter(ValueModel floatSource)
Creates and returns a ValueModel that converts Floats to Integer, and vice versa. |
static ValueModel |
createFloatToIntegerConverter(ValueModel floatSource,
int multiplier)
Creates and returns a ValueModel that converts Floats to Integer, and vice versa. |
static ValueModel |
createIntegerConverter(ValueModel integerSource,
double multiplier)
Creates and returns a ValueModel that converts Integers using the specified multiplier. |
static ValueModel |
createLongConverter(ValueModel longSource,
double multiplier)
Creates and returns a ValueModel that converts Long using the specified multiplier. |
static ValueModel |
createLongToIntegerConverter(ValueModel longSubject)
Creates and returns a ValueModel that converts Longs to Integer and vice versa. |
static ValueModel |
createLongToIntegerConverter(ValueModel longSource,
int multiplier)
Creates and returns a ValueModel that converts Longs to Integer and vice versa. |
static ValueModel |
createStringConverter(ValueModel source,
Format format)
Creates and returns a ValueModel that converts objects to Strings and vice versa. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Method Detail |
---|
public static ValueModel createBooleanNegator(ValueModel booleanSource)
null
unchanged.
booleanSource
- a Boolean ValueModel
NullPointerException
- if the booleanSource
is null
public static ValueModel createBooleanToStringConverter(ValueModel booleanSubject, String trueText, String falseText)
null
is mapped to an empty string.
Ignores cases when setting a text.
booleanSubject
- a Boolean ValueModeltrueText
- the text associated with Boolean.TRUE
falseText
- the text associated with Boolean.FALSE
NullPointerException
- if booleanSource
,
trueText
, falseText
or nullText
is null
IllegalArgumentException
- if trueText
equals falseText
public static ValueModel createBooleanToStringConverter(ValueModel booleanSource, String trueText, String falseText, String nullText)
null
is mapped to the specified text.
Ignores cases when setting a text.
booleanSource
- a Boolean ValueModeltrueText
- the text associated with Boolean.TRUE
falseText
- the text associated with Boolean.FALSE
nullText
- the text associated with null
NullPointerException
- if booleanSource
,
trueText
, falseText
or nullText
is null
IllegalArgumentException
- if trueText
equals falseText
public static ValueModel createDoubleConverter(ValueModel doubleSource, double multiplier)
Examples: multiplier=100, Double(1.23) -> Double(123), multiplier=1000, Double(1.23) -> Double(1230)
doubleSource
- a Double ValueModelmultiplier
- the multiplier used for the conversion
NullPointerException
- if doubleSource
is null
public static ValueModel createDoubleToIntegerConverter(ValueModel doubleSource)
doubleSource
- a Double ValueModel
NullPointerException
- if doubleSource
is null
public static ValueModel createDoubleToIntegerConverter(ValueModel doubleSource, int multiplier)
Examples: multiplier=100, Double(1.23) -> Integer(123), multiplier=1000, Double(1.23) -> Integer(1230)
doubleSource
- a Double ValueModelmultiplier
- the multiplier used to convert the Double to Integer
NullPointerException
- if doubleSource
is null
public static ValueModel createFloatConverter(ValueModel floatSource, float multiplier)
Examples: multiplier=100, Float(1.23) -> Float(123), multiplier=1000, Float(1.23) -> Float(1230)
floatSource
- a Float ValueModelmultiplier
- the multiplier used for the conversion
NullPointerException
- if floatSource
is null
public static ValueModel createFloatToIntegerConverter(ValueModel floatSource)
floatSource
- a Float ValueModel
NullPointerException
- if floatSource
is null
public static ValueModel createFloatToIntegerConverter(ValueModel floatSource, int multiplier)
floatSource
- a Float ValueModelmultiplier
- the multiplier used to convert the Float to Integer
NullPointerException
- if floatSource
is null
public static ValueModel createIntegerConverter(ValueModel integerSource, double multiplier)
Examples: multiplier=100, Integer(3) -> Integer(300), multiplier=1000, Integer(3) -> Integer(3000)
integerSource
- a Integer ValueModelmultiplier
- the multiplier used for the conversion
NullPointerException
- if integerSource
is null
public static ValueModel createLongConverter(ValueModel longSource, double multiplier)
Examples: multiplier=100, Long(3) -> Long(300), multiplier=1000, Long(3) -> Long(3000)
longSource
- a Long ValueModelmultiplier
- the multiplier used for the conversion
NullPointerException
- if longSource
is null
public static ValueModel createLongToIntegerConverter(ValueModel longSubject)
Constraints: The subject is of type Long
,
values written to the converter are of type Integer
.
longSubject
- a Long ValueModel
NullPointerException
- if the subject is null
public static ValueModel createLongToIntegerConverter(ValueModel longSource, int multiplier)
Constraints: The subject is of type Long
,
values written to the converter are of type Integer
.
longSource
- a Long ValueModelmultiplier
- used to multiply the Long when converting to Integer
NullPointerException
- if longSource
is null
public static ValueModel createStringConverter(ValueModel source, Format format)
Format
.
Constraints: The source is of type Object
;
it must be formattable and parsable via the given Format
.
source
- the underlying ValueModel.format
- the Format
used to format and parse
NullPointerException
- if source
or format
is null
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |