src/java/isac/bridge/BridgeLogger.java
author mlang
Tue, 28 Jun 2005 13:14:03 +0200
changeset 2544 631fe7f467b7
parent 2448 f6065237ac78
child 2706 4916b66a7022
permissions -rw-r--r--
cosmetics part2
rgradisc@859
     1
/*
mlang@2448
     2
 * Created on Aug 21, 2003
rgradisc@859
     3
 */
rgradisc@859
     4
package isac.bridge;
rgradisc@859
     5
rgradisc@859
     6
/**
rgradisc@1068
     7
 * Simple Logging utility class used by the bridge components
mlang@2448
     8
 * 
rgradisc@1068
     9
 * @version 1.0
rgradisc@859
    10
 * @author rgradisc
rgradisc@859
    11
 */
rgradisc@859
    12
import java.io.FileWriter;
rgradisc@859
    13
import java.io.IOException;
rgradisc@1096
    14
import java.util.Date;
rgradisc@859
    15
rgradisc@859
    16
public class BridgeLogger {
mlang@2448
    17
mlang@2448
    18
    //The logging text will be stored in this file
mlang@2544
    19
    FileWriter general_log_;
mlang@2448
    20
mlang@2448
    21
    //minimum severity level of a message to be logged
mlang@2448
    22
    //0 == log everything
mlang@2448
    23
    int min_log_level_ = 0;
mlang@2448
    24
mlang@2448
    25
    /**
mlang@2448
    26
     * Create a new BridgeLogger which writes data to a file
mlang@2448
    27
     * 
mlang@2448
    28
     * @param path
mlang@2448
    29
     *            The path to the file which should be logged into
mlang@2448
    30
     */
mlang@2448
    31
    public BridgeLogger(String path) {
mlang@2448
    32
        try {
mlang@2544
    33
            general_log_ = new FileWriter(path + "../sml/BridgeLog/general.txt");
mlang@2448
    34
            log(1, "--------------------------");
mlang@2448
    35
            log(1, "Server started on " + new Date());
mlang@2448
    36
            log(1, "--------------------------");
mlang@2448
    37
        } catch (IOException e) {
mlang@2448
    38
            e.printStackTrace();
mlang@2448
    39
        }
rgradisc@859
    40
    }
rgradisc@859
    41
mlang@2448
    42
    /**
mlang@2448
    43
     * Log general messages of bridge components in one file
mlang@2448
    44
     * 
mlang@2448
    45
     * @param level
mlang@2448
    46
     *            Severity level
mlang@2448
    47
     * @param msg
mlang@2448
    48
     *            The message to be logged
mlang@2448
    49
     */
mlang@2448
    50
    public void log(int level, String msg) {
mlang@2448
    51
        if (level > min_log_level_) {
mlang@2448
    52
            try {
mlang@2544
    53
                general_log_.write(msg + "\n");
mlang@2544
    54
                general_log_.flush();
mlang@2448
    55
            } catch (IOException e) {
mlang@2448
    56
                e.printStackTrace();
mlang@2448
    57
            }
mlang@2448
    58
        }
rgradisc@859
    59
    }
rgradisc@859
    60
mlang@2448
    61
    /**
mlang@2448
    62
     * Close the logging file
mlang@2448
    63
     */
mlang@2448
    64
    public void close() {
mlang@2448
    65
        try {
mlang@2544
    66
            general_log_.close();
mlang@2448
    67
        } catch (IOException e) {
mlang@2448
    68
            e.printStackTrace();
mlang@2448
    69
        }
rgradisc@859
    70
    }
rgradisc@1139
    71
mlang@2448
    72
    public int getMinLogLevel() {
mlang@2448
    73
        return min_log_level_;
mlang@2448
    74
    }
rgradisc@1139
    75
mlang@2448
    76
    public void setMinLogLevel(int i) {
mlang@2448
    77
        min_log_level_ = i;
mlang@2448
    78
    }
mlang@2448
    79
}