All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.apache.ivy.util.MessageLogger Maven / Gradle / Ivy

There is a newer version: 3.9
Show newest version
/*
 *  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.ivy.util;

import java.util.List;

/**
 * A MessageLogger is used to log messages.
 * 

* Where the messages are logged is depending on the implementation. *

*

* This interface provides both level specific methods ({@link #info(String)}, * {@link #warn(String)}, ...) and generic methods ({@link #log(String, int)}, * {@link #rawlog(String, int)}). Note that calling level specific methods is usually not * equivalent to calling the generic method with the corresponding level. Indeed, for warn and error * level, the implementation will actually log the message at a lower level (usually * {@link Message#MSG_VERBOSE}) and log the message at the actual level only when * {@link #sumupProblems()} is called. *

* * @see Message */ public interface MessageLogger { /** * Logs a message at the given level. *

* level constants are defined in the {@link Message} class. *

* * @param msg * the message to log * @param level * the level at which the message should be logged. * @see Message#MSG_DEBUG * @see Message#MSG_VERBOSE * @see Message#MSG_INFO * @see Message#MSG_WARN * @see Message#MSG_ERROR */ public abstract void log(String msg, int level); /** * Same as {@link #log(String, int)}, but without adding any contextual information to the * message. * * @param msg * the message to log * @param level * the level at which the message should be logged. */ public abstract void rawlog(String msg, int level); public abstract void debug(String msg); public abstract void verbose(String msg); public abstract void deprecated(String msg); public abstract void info(String msg); public abstract void rawinfo(String msg); public abstract void warn(String msg); public abstract void error(String msg); public abstract List/**/ getProblems(); public abstract List/**/ getWarns(); public abstract List/**/ getErrors(); /** * Clears the list of problems, warns and errors. */ public abstract void clearProblems(); /** * Sumup all problems encountered so far, and clear them. */ public abstract void sumupProblems(); public abstract void progress(); public abstract void endProgress(); public abstract void endProgress(String msg); public abstract boolean isShowProgress(); public abstract void setShowProgress(boolean progress); }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy