![JAR search and dependency download from the Maven repository](/logo.png)
net.admin4j.deps.commons.beanutils.converters.SqlTimestampConverter Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of admin4j Show documentation
Show all versions of admin4j Show documentation
Admin4J is a set of application administration utilities that will assist with providing alerts for
thread contention, memory issues, performance issues. In addition, it provides a console for changing log levels at runtime.
The newest version!
/*
* Copyright 2001-2004 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package net.admin4j.deps.commons.beanutils.converters;
import java.sql.Timestamp;
import net.admin4j.deps.commons.beanutils.ConversionException;
import net.admin4j.deps.commons.beanutils.Converter;
/**
* Standard {@link Converter} implementation that converts an incoming
* String into a java.sql.Timestamp
object, optionally using a
* default value or throwing a {@link ConversionException} if a conversion
* error occurs.
*
* @author Craig R. McClanahan
* @version $Revision: 1.7 $ $Date: 2004/02/28 13:18:34 $
* @since 1.3
*/
public final class SqlTimestampConverter implements Converter {
// ----------------------------------------------------------- Constructors
/**
* Create a {@link Converter} that will throw a {@link ConversionException}
* if a conversion error occurs.
*/
public SqlTimestampConverter() {
this.defaultValue = null;
this.useDefault = false;
}
/**
* Create a {@link Converter} that will return the specified default value
* if a conversion error occurs.
*
* @param defaultValue The default value to be returned
*/
public SqlTimestampConverter(Object defaultValue) {
this.defaultValue = defaultValue;
this.useDefault = true;
}
// ----------------------------------------------------- Instance Variables
/**
* The default value specified to our Constructor, if any.
*/
private Object defaultValue = null;
/**
* Should we return the default value on conversion errors?
*/
private boolean useDefault = true;
// --------------------------------------------------------- Public Methods
/**
* Convert the specified input object into an output object of the
* specified type.
*
* @param type Data type to which this value should be converted
* @param value The input value to be converted
*
* @exception ConversionException if conversion cannot be performed
* successfully
*/
public Object convert(Class type, Object value) {
if (value == null) {
if (useDefault) {
return (defaultValue);
} else {
throw new ConversionException("No value specified");
}
}
if (value instanceof Timestamp) {
return (value);
}
try {
return (Timestamp.valueOf(value.toString()));
} catch (Exception e) {
if (useDefault) {
return (defaultValue);
} else {
throw new ConversionException(e);
}
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy