/*
* Copyright (c) MuleSoft, Inc. All rights reserved. http://www.mulesoft.com
* The software in this package is published under the terms of the CPAL v1.0
* license, a copy of which has been included with this distribution in the
* LICENSE.txt file.
*/
package org.mule.runtime.core.util;
import java.io.ByteArrayOutputStream;
import java.io.OutputStreamWriter;
import java.lang.reflect.Method;
import java.nio.charset.Charset;
public class CharSetUtils extends org.apache.commons.lang.CharSetUtils {
public static String defaultCharsetName() {
try {
if (SystemUtils.IS_JAVA_1_4) {
return new OutputStreamWriter(new ByteArrayOutputStream()).getEncoding();
} else {
Class target = Charset.class;
Method defaultCharset = target.getMethod("defaultCharset", ArrayUtils.EMPTY_CLASS_ARRAY);
Charset cs = (Charset) defaultCharset.invoke(target, (Object[]) null);
return cs.name();
}
} catch (Exception ex) {
throw new Error(ex);
}
}
}