Please wait. This can take some minutes ...
Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance.
Project price only 1 $
You can buy this project and download/modify it how often you want.
com.github.paganini2008.devtools.converter.StringConverter Maven / Gradle / Ivy
package com.github.paganini2008.devtools.converter;
import java.io.IOException;
import java.io.InputStream;
import java.io.Reader;
import java.net.URL;
import java.nio.charset.Charset;
import java.sql.Clob;
import java.text.DateFormat;
import java.text.DecimalFormat;
import java.util.Calendar;
import java.util.Collection;
import java.util.Date;
import java.util.Enumeration;
import java.util.Iterator;
import java.util.Locale;
import java.util.Map;
import java.util.UUID;
import com.github.paganini2008.devtools.ArrayUtils;
import com.github.paganini2008.devtools.CharsetUtils;
import com.github.paganini2008.devtools.NumberUtils;
import com.github.paganini2008.devtools.collection.CollectionUtils;
import com.github.paganini2008.devtools.collection.MapUtils;
import com.github.paganini2008.devtools.date.CalendarUtils;
import com.github.paganini2008.devtools.date.DateUtils;
import com.github.paganini2008.devtools.io.IOUtils;
import com.github.paganini2008.devtools.net.UrlUtils;
import com.github.paganini2008.devtools.primitives.Booleans;
import com.github.paganini2008.devtools.primitives.Doubles;
import com.github.paganini2008.devtools.primitives.Floats;
import com.github.paganini2008.devtools.primitives.Ints;
import com.github.paganini2008.devtools.primitives.Longs;
import com.github.paganini2008.devtools.primitives.Shorts;
/**
* StringConverter
*
* @author Fred Feng
* @version 1.0
*/
@SuppressWarnings("all")
public class StringConverter extends BaseConverter {
private final Converter uuidConverter = new Converter() {
public String getValue(UUID source, String defaultValue) {
return source != null ? source.toString() : defaultValue;
}
};
private final Converter booleanConverter = new Converter() {
public String getValue(Boolean source, String defaultValue) {
if (source == null) {
return defaultValue;
}
return Booleans.toString(source);
}
};
private final Converter characterConverter = new Converter() {
public String getValue(Character source, String defaultValue) {
if (source == null) {
return defaultValue;
}
return source.toString();
}
};
private final Converter numberConverter = new Converter() {
public String getValue(Number source, String defaultValue) {
return NumberUtils.format(source, config.getDecimalFormat(), defaultValue);
}
};
private final Converter dateConverter = new Converter() {
public String getValue(Date source, String defaultValue) {
return DateUtils.format(source, config.getDateFormat(), defaultValue);
}
};
private final Converter calendarConverter = new Converter() {
public String getValue(Calendar source, String defaultValue) {
return CalendarUtils.format(source, config.getDateFormat(), defaultValue);
}
};
private final Converter urlConverter = new Converter() {
public String getValue(URL source, String defaultValue) {
if (source == null) {
return defaultValue;
}
try {
return UrlUtils.toString(source, config.getCharset());
} catch (IOException e) {
return defaultValue;
}
}
};
private final Converter clobConverter = new Converter() {
public String getValue(Clob source, String defaultValue) {
if (source == null) {
return defaultValue;
}
try {
return IOUtils.toString(source.getCharacterStream());
} catch (Exception e) {
return defaultValue;
}
}
};
private final Converter inputStreamConverter = new Converter() {
public String getValue(InputStream source, String defaultValue) {
if (source == null) {
return defaultValue;
}
try {
return IOUtils.toString(source, config.getCharset());
} catch (IOException e) {
return defaultValue;
}
}
};
private final Converter readerConverter = new Converter() {
public String getValue(Reader source, String defaultValue) {
if (source == null) {
return defaultValue;
}
try {
return IOUtils.toString(source);
} catch (IOException e) {
return defaultValue;
}
}
};
private final Converter charSequenceConverter = new Converter() {
public String getValue(CharSequence source, String defaultValue) {
if (source == null) {
return defaultValue;
}
return source.toString();
}
};
private final Converter byteArrayConverter = new Converter() {
public String getValue(byte[] source, String defaultValue) {
if (source == null) {
return defaultValue;
}
return new String(source, config.getCharset());
}
};
private final Converter charArrayConverter = new Converter() {
public String getValue(char[] source, String defaultValue) {
if (source == null) {
return defaultValue;
}
return new String(source);
}
};
private final Converter shortArrayConverter = new Converter() {
public String getValue(short[] source, String defaultValue) {
if (source == null) {
return defaultValue;
}
return Shorts.join(source, config.getDelimiter());
}
};
private final Converter intArrayConverter = new Converter() {
public String getValue(int[] source, String defaultValue) {
if (source == null) {
return defaultValue;
}
return Ints.join(source, config.getDelimiter());
}
};
private final Converter longArrayConverter = new Converter() {
public String getValue(long[] source, String defaultValue) {
if (source == null) {
return defaultValue;
}
return Longs.join(source, config.getDelimiter());
}
};
private final Converter floatArrayConverter = new Converter() {
public String getValue(float[] source, String defaultValue) {
if (source == null) {
return defaultValue;
}
return Floats.join(source, config.getDelimiter());
}
};
private final Converter doubleArrayConverter = new Converter() {
public String getValue(double[] source, String defaultValue) {
if (source == null) {
return defaultValue;
}
return Doubles.join(source);
}
};
private final Converter booleanArrayConverter = new Converter() {
public String getValue(boolean[] source, String defaultValue) {
if (source == null) {
return defaultValue;
}
return Booleans.join(source, config.getDelimiter());
}
};
private final Converter objectArrayConverter = new Converter() {
public String getValue(Object[] source, String defaultValue) {
if (source == null) {
return defaultValue;
}
return ArrayUtils.join(source, config.getDelimiter());
}
};
private final Converter, String> collectionConverter = new Converter, String>() {
public String getValue(Collection source, String defaultValue) {
if (source == null) {
return defaultValue;
}
return CollectionUtils.join(source, config.getDelimiter());
}
};
private final Converter, String> iteratorConverter = new Converter, String>() {
public String getValue(Iterator source, String defaultValue) {
if (source == null) {
return defaultValue;
}
return CollectionUtils.join(source, config.getDelimiter());
}
};
private final Converter, String> enumerationConverter = new Converter, String>() {
public String getValue(Enumeration source, String defaultValue) {
if (source == null) {
return defaultValue;
}
return CollectionUtils.join(source, config.getDelimiter());
}
};
private final Converter mapConverter = new Converter() {
public String getValue(Map source, String defaultValue) {
if (source == null) {
return defaultValue;
}
return MapUtils.join(source, config.getDelimiter());
}
};
private final Converter charsetConverter = new Converter() {
public String getValue(Charset source, String defaultValue) {
if (source == null) {
return defaultValue;
}
return source.name();
}
};
private final Converter localeConverter = new Converter() {
public String getValue(Locale source, String defaultValue) {
if (source == null) {
return defaultValue;
}
return source.toString();
}
};
public StringConverter() {
put(Boolean.class, booleanConverter);
put(Character.class, characterConverter);
put(Number.class, numberConverter);
put(CharSequence.class, charSequenceConverter);
put(Date.class, dateConverter);
put(Calendar.class, calendarConverter);
put(boolean[].class, booleanArrayConverter);
put(char[].class, charArrayConverter);
put(byte[].class, byteArrayConverter);
put(short[].class, shortArrayConverter);
put(int[].class, intArrayConverter);
put(float[].class, floatArrayConverter);
put(double[].class, doubleArrayConverter);
put(long[].class, longArrayConverter);
put(Object[].class, objectArrayConverter);
put(Collection.class, collectionConverter);
put(Iterator.class, iteratorConverter);
put(Enumeration.class, enumerationConverter);
put(Map.class, mapConverter);
put(URL.class, urlConverter);
put(Clob.class, clobConverter);
put(Reader.class, readerConverter);
put(InputStream.class, inputStreamConverter);
put(Charset.class, charsetConverter);
put(Locale.class, localeConverter);
}
}