You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
27 lines
822 B
27 lines
822 B
package de.timroes.axmlrpc.serializer; |
|
|
|
import de.timroes.axmlrpc.XMLRPCException; |
|
import de.timroes.axmlrpc.XMLUtil; |
|
import de.timroes.axmlrpc.xmlcreator.XmlElement; |
|
import java.math.BigDecimal; |
|
import org.w3c.dom.Element; |
|
|
|
/** |
|
* This serializer is responsible for floating point numbers. |
|
* |
|
* @author Tim Roes |
|
*/ |
|
public class DoubleSerializer implements Serializer { |
|
|
|
public Object deserialize(Element content) throws XMLRPCException { |
|
return Double.valueOf(XMLUtil.getOnlyTextContent(content.getChildNodes())); |
|
} |
|
|
|
public XmlElement serialize(Object object) { |
|
// Turn double value of object into a BigDecimal to get the |
|
// right decimal point format. |
|
BigDecimal bd = BigDecimal.valueOf(((Number)object).doubleValue()); |
|
return XMLUtil.makeXmlTag(SerializerHandler.TYPE_DOUBLE, bd.toPlainString()); |
|
} |
|
|
|
}
|
|
|