Package org.apache.felix.service.command
Interface Converter
-
- All Known Implementing Classes:
CommandSessionImpl
public interface ConverterA converter is a service that can help create specific object types from a string, and vice versa.The shell is capable of coercing arguments to the their proper type. However, sometimes commands require extra help to do this conversion. This service can implement a converter for a number of types.
The command shell will rank these services in order of service.ranking and will then call them until one of the converters succeeds.
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringCONVERTER_CLASSESThis property is a string, or array of strings, and defines the classes or interfaces that this converter recognizes.static intINSPECTPrint the object in detail.static intLINEPrint the object as a row in a table.static intPARTPrint the value in a small format so that it is identifiable.
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description java.lang.Objectconvert(java.lang.Class<?> desiredType, java.lang.Object in)Convert an object to the desired type.java.lang.CharSequenceformat(java.lang.Object target, int level, Converter escape)Convert an objet to a CharSequence object in the requested format.
-
-
-
Field Detail
-
CONVERTER_CLASSES
static final java.lang.String CONVERTER_CLASSES
This property is a string, or array of strings, and defines the classes or interfaces that this converter recognizes. Recognized classes can be converted from a string to a class and they can be printed in 3 different modes.- See Also:
- Constant Field Values
-
INSPECT
static final int INSPECT
Print the object in detail. This can contain multiple lines.- See Also:
- Constant Field Values
-
LINE
static final int LINE
Print the object as a row in a table. The columns should align for multiple objects printed beneath each other. The print may run over multiple lines but must not end in a CR.- See Also:
- Constant Field Values
-
PART
static final int PART
Print the value in a small format so that it is identifiable. This printed format must be recognizable by the conversion method.- See Also:
- Constant Field Values
-
-
Method Detail
-
convert
java.lang.Object convert(java.lang.Class<?> desiredType, java.lang.Object in) throws java.lang.ExceptionConvert an object to the desired type.Return null if the conversion can not be done. Otherwise return and object that extends the desired type or implements it.
- Parameters:
desiredType- The type that the returned object can be assigned toin- The object that must be converted- Returns:
- An object that can be assigned to the desired type or null.
- Throws:
java.lang.Exception- on exception
-
format
java.lang.CharSequence format(java.lang.Object target, int level, Converter escape) throws java.lang.ExceptionConvert an objet to a CharSequence object in the requested format. The format can be INSPECT, LINE, or PART. Other values must throw IllegalArgumentException.- Parameters:
target- The object to be converted to a Stringlevel- One of INSPECT, LINE, or PART.escape- Use this object to format sub ordinate objects.- Returns:
- A printed object of potentially multiple lines
- Throws:
java.lang.Exception- on exception
-
-