/* * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed with * this work for additional information regarding copyright ownership. * The ASF licenses this file to You 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 org.apache.jmeter.util; import org.slf4j.Marker; import org.slf4j.spi.LocationAwareLogger; /** * Log record. */ public class LogRecord { public static final int TRACE = LocationAwareLogger.TRACE_INT; public static final int DEBUG = LocationAwareLogger.DEBUG_INT; public static final int INFO = LocationAwareLogger.INFO_INT; public static final int WARN = LocationAwareLogger.WARN_INT; public static final int ERROR = LocationAwareLogger.ERROR_INT; private int level; private Marker marker; private String format; private Object[] arguments; private Throwable throwable; public LogRecord(int level, String msg) { this(level, null, msg, (Object []) null, null); } public LogRecord(int level, String format, Object arg) { this(level, null, format, new Object [] { arg }, null); } public LogRecord(int level, String format, Object arg1, Object arg2) { this(level, null, format, new Object [] { arg1, arg2 }, null); } public LogRecord(int level, String format, Object[] argArray) { this(level, null, format, argArray, null); } public LogRecord(int level, String msg, Throwable t) { this(level, null, msg, null, t); } public LogRecord(int level, Marker marker, String msg) { this(level, marker, msg, null, null); } public LogRecord(int level, Marker marker, String format, Object arg) { this(level, marker, format, new Object [] { arg }, null); } public LogRecord(int level, Marker marker, String format, Object arg1, Object arg2) { this(level, marker, format, new Object [] { arg1, arg2 }, null); } public LogRecord(int level, Marker marker, String format, Object[] argArray) { this(level, marker, format, argArray, null); } public LogRecord(int level, Marker marker, String msg, Throwable t) { this(level, marker, msg, null, t); } public LogRecord(int level, Marker marker, String format, Object[] argArray, Throwable throwable) { this.level = level; this.marker = marker; this.format = format; if (argArray != null) { this.arguments = new Object[argArray.length]; System.arraycopy(argArray, 0, this.arguments, 0, argArray.length); } this.throwable = throwable; } public int getLevel() { return level; } public Marker getMarker() { return marker; } public String getFormat() { return format; } public Object[] getArguments() { return arguments; } public Throwable getThrowable() { return throwable; } }