jp.ac.u.tokyo.m.log.LogUtil.java Source code

Java tutorial

Introduction

Here is the source code for jp.ac.u.tokyo.m.log.LogUtil.java

Source

/*
 * Copyright 2012 Hiromasa Horiguchi ( The University of Tokyo )
 * 
 * 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 jp.ac.u.tokyo.m.log;

import java.util.Arrays;
import java.util.List;

import org.apache.commons.logging.Log;

public class LogUtil {

    // -----------------------------------------------------------------------------------------------------------------

    /**
     * Output "[aPrefix]\"[aParams[0]]\" \"[aParams[1]]\"... [aSuffix]" format log. <br>
     * "[aPrefix]\"[aParams[0]]\" \"[aParams[1]]\"... [aSuffix]" ???? <br>
     */
    public static void infoMultiParam(Log aLog, String aPrefix, String aSuffix, List<? extends Object> aParams) {
        aLog.info(createMultiParamMessage(aPrefix, aSuffix, aParams));
    }

    /**
     * Output "[aPrefix]\"[aParams[0]]\" \"[aParams[1]]\"... [aSuffix]" format log. <br>
     * "[aPrefix]\"[aParams[0]]\" \"[aParams[1]]\"... [aSuffix]" ???? <br>
     */
    public static void errorMultiParam(Log aLog, String aPrefix, String aSuffix, List<? extends Object> aParams,
            Throwable aThrowable) {
        aLog.error(createMultiParamMessage(aPrefix, aSuffix, aParams), aThrowable);
    }

    // -----------------------------------------------------------------------------------------------------------------

    public static void errorIllegalModeName(Log aLog, Object[] aEnumValues, String aModeName,
            RuntimeException aCause) throws IllegalArgumentException {
        LogUtil.errorMultiParam(aLog,
                "\n" + "?????? : " + aModeName + "\n"
                        + "??????/???? : ",
                "", Arrays.asList(aEnumValues), null);
        throw new IllegalArgumentException("an illegal argument : \"" + aModeName + "\"", aCause);
    }

    // -----------------------------------------------------------------------------------------------------------------

    /**
     * I make the message which enumerated aParams. <br>
     * aParams ?????? <br>
     * 
     * @param aPrefix
     *            
     * @param aSuffix
     *            
     * @param aParams
     *            ?
     * @return aPrefix + (aParams ) + aSuffix ??
     */
    public static String createMultiParamMessage(String aPrefix, String aSuffix, List<? extends Object> aParams) {
        StringBuilder tLogTextBuilder = new StringBuilder();
        tLogTextBuilder.append(aPrefix);
        for (Object tCurrentParam : aParams) {
            tLogTextBuilder.append("\"");
            tLogTextBuilder.append(tCurrentParam.toString());
            tLogTextBuilder.append("\" ");
        }
        tLogTextBuilder.append(aSuffix);
        String tString = tLogTextBuilder.toString();
        return tString;
    }

    // -----------------------------------------------------------------------------------------------------------------

}