/* * 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); } } }