com.crashnote.external.config.impl.ConfigDouble Maven / Gradle / Ivy
/**
* Copyright (C) 2011-2012 Typesafe Inc.
*/
package com.crashnote.external.config.impl;
import java.io.ObjectStreamException;
import java.io.Serializable;
import com.crashnote.external.config.ConfigOrigin;
import com.crashnote.external.config.ConfigValueType;
final class ConfigDouble extends ConfigNumber implements Serializable {
private static final long serialVersionUID = 1L;
final private double value;
ConfigDouble(final ConfigOrigin origin, final double value, final String originalText) {
super(origin, originalText);
this.value = value;
}
@Override
public ConfigValueType valueType() {
return ConfigValueType.NUMBER;
}
@Override
public Double unwrapped() {
return value;
}
@Override
String transformToString() {
final String s = super.transformToString();
if (s == null)
return Double.toString(value);
else
return s;
}
@Override
protected long longValue() {
return (long) value;
}
@Override
protected double doubleValue() {
return value;
}
@Override
protected ConfigDouble newCopy(final ConfigOrigin origin) {
return new ConfigDouble(origin, value, originalText);
}
// serialization all goes through SerializedConfigValue
private Object writeReplace() throws ObjectStreamException {
return new SerializedConfigValue(this);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy