Changeset 4308ce6


Ignore:
Timestamp:
Jan 11, 2014 1:56:47 AM (7 years ago)
Author:
str4d <str4d@…>
Branches:
master
Children:
1fb2672
Parents:
32b095e
Message:

Fixed logging for BOB-one.jar

Location:
apps/BOB/src/net/i2p/BOB
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • apps/BOB/src/net/i2p/BOB/BOB.java

    r32b095e r4308ce6  
    2828import java.net.Socket;
    2929import java.net.SocketTimeoutException;
     30import java.net.URL;
    3031import java.util.Arrays;
    3132import java.util.Properties;
    3233import java.util.concurrent.atomic.AtomicBoolean;
     34import java.util.jar.Attributes;
     35import java.util.jar.Manifest;
    3336
    3437import net.i2p.I2PAppContext;
     
    3639import net.i2p.client.I2PClient;
    3740import net.i2p.util.I2PAppThread;
    38 import net.i2p.util.Log;
    3941import net.i2p.util.SimpleScheduler;
    4042import net.i2p.util.SimpleTimer2;
     
    130132        // private static int maxConnections = 0;
    131133
    132         private final Log _log;
     134        private final Logger _log;
    133135        private final ClientAppManager _mgr;
    134136        private final String[] _args;
     
    137139        private volatile ServerSocket listener;
    138140        private volatile Thread _runner;
    139 
    140         /**
    141          * Log a warning
    142          *
    143          * @param arg
    144          * @deprecated
    145          */
    146         public static void info(String arg) {
    147                 System.out.println("INFO:" + arg);
    148                 (new Log(BOB.class)).info(arg);
    149         }
    150 
    151         /**
    152          * Log a warning
    153          *
    154          * @param arg
    155          * @deprecated
    156          */
    157         public static void warn(String arg) {
    158                 System.out.println("WARNING:" + arg);
    159                 (new Log(BOB.class)).warn(arg);
    160         }
    161 
    162         /**
    163          * Log an error
    164          *
    165          * @param arg
    166          * @deprecated
    167          */
    168         public static void error(String arg) {
    169                 System.out.println("ERROR: " + arg);
    170                 (new Log(BOB.class)).error(arg);
    171         }
    172141
    173142        /**
     
    189158         */
    190159        public BOB(I2PAppContext context, ClientAppManager mgr, String[] args) {
    191                 _log = context.logManager().getLog(BOB.class);
     160                // If we were run from command line, log to stdout
     161                boolean logToStdout = false;
     162                String classPath = BOB.class.getResource("BOB.class").toString();
     163                if (classPath.startsWith("jar")) {
     164                        String manifestPath = classPath.substring(0, classPath.lastIndexOf("!") + 1) +
     165                                        "/META-INF/MANIFEST.MF";
     166                        try {
     167                                Manifest manifest = new Manifest(new URL(manifestPath).openStream());
     168                                Attributes attrs = manifest.getMainAttributes();
     169                                String mainClass = attrs.getValue("Main-Class");
     170                                if ("net.i2p.BOB.Main".equals(mainClass))
     171                                        logToStdout = true;
     172                        } catch (IOException ioe) {}
     173                }
     174
     175                _log = new Logger(context.logManager().getLog(BOB.class), logToStdout);
     176
    192177                _mgr = mgr;
    193178                _args = args;
     
    239224                                fi.close();
    240225                        } catch (FileNotFoundException fnfe) {
    241                                 if (_log.shouldLog(Log.WARN))
    242                                         _log.warn("Unable to load up the BOB config file " + cfg.getAbsolutePath() + ", Using defaults.", fnfe);
     226                                _log.warn("Unable to load up the BOB config file " + cfg.getAbsolutePath() + ", Using defaults.", fnfe);
    243227                                save = true;
    244228                        } catch (IOException ioe) {
    245                                 if (_log.shouldLog(Log.WARN))
    246                                         _log.warn("IOException on BOB config file " + cfg.getAbsolutePath() + ", using defaults.", ioe);
     229                                _log.warn("IOException on BOB config file " + cfg.getAbsolutePath() + ", using defaults.", ioe);
    247230                        }
    248231                }
     
    292275                        }
    293276                        try {
    294                                 if (_log.shouldLog(Log.WARN))
    295                                         _log.warn("Writing new defaults file " + cfg.getAbsolutePath());
     277                                _log.warn("Writing new defaults file " + cfg.getAbsolutePath());
    296278                                FileOutputStream fo = new FileOutputStream(cfg);
    297279                                props.store(fo, cfg.getAbsolutePath());
    298280                                fo.close();
    299281                        } catch (IOException ioe) {
    300                                 if (_log.shouldLog(Log.ERROR))
    301                                         _log.error("IOException on BOB config file " + cfg.getAbsolutePath(), ioe);
     282                                _log.error("IOException on BOB config file " + cfg.getAbsolutePath(), ioe);
    302283                        }
    303284                }
     
    327308                if (listener == null) return;
    328309                changeState(RUNNING);
    329                 if (_log.shouldLog(Log.INFO))
    330                         _log.info("BOB is now running.");
     310                _log.info("BOB is now running.");
    331311                if (_mgr != null)
    332312                        _mgr.register(this);
     
    361341                        changeState(STOPPING);
    362342                } catch (Exception e) {
    363                         if (spin.get() && _log.shouldLog(Log.ERROR))
     343                        if (spin.get())
    364344                                _log.error("Unexpected error while listening for connections", e);
    365345                        else
     
    367347                        changeState(STOPPING, e);
    368348                } finally {
    369                         if (_log.shouldLog(Log.INFO))
    370                                 _log.info("BOB is now shutting down...");
     349                        _log.info("BOB is now shutting down...");
    371350                        // Clean up everything.
    372351                        try {
     
    400379                        }
    401380                        changeState(STOPPED);
    402                         if (_log.shouldLog(Log.INFO))
    403                                 _log.info("BOB is now stopped.");
     381                        _log.info("BOB is now stopped.");
    404382                }
    405383        }
     
    467445                        startListener();
    468446                } catch (IOException e) {
    469                         if (_log.shouldLog(Log.ERROR))
    470                                 _log.error("Error starting BOB on"
    471                                                 + props.getProperty(PROP_BOB_HOST)
    472                                                 + ":" + props.getProperty(PROP_BOB_PORT), e);
     447                        _log.error("Error starting BOB on"
     448                                        + props.getProperty(PROP_BOB_HOST)
     449                                        + ":" + props.getProperty(PROP_BOB_PORT), e);
    473450                        changeState(START_FAILED, e);
    474451                        throw e;
  • apps/BOB/src/net/i2p/BOB/DoCMDS.java

    r32b095e r4308ce6  
    3232import net.i2p.data.Destination;
    3333//import net.i2p.i2ptunnel.I2PTunnel;
    34 import net.i2p.util.Log;
    3534// needed only for debugging.
    3635// import java.util.logging.Level;
     
    5756        private boolean dk,  ns,  ip,  op;
    5857        private NamedDB nickinfo;
    59         private Log _log;
     58        private Logger _log;
    6059        private AtomicBoolean LIVE;
    6160        private AtomicBoolean lock;
     
    165164         * @param _log
    166165         */
    167         DoCMDS(AtomicBoolean LIVE, AtomicBoolean lock, Socket server, Properties props, NamedDB database, Log _log) {
     166        DoCMDS(AtomicBoolean LIVE, AtomicBoolean lock, Socket server, Properties props, NamedDB database, Logger _log) {
    168167                this.lock = lock;
    169168                this.LIVE = LIVE;
     
    607606                                                                                                        }
    608607                                                                                                } catch (I2PException ipe) {
    609                                                                                                         BOB.error("Error generating keys" + ipe);
     608                                                                                                        _log.error("Error generating keys", ipe);
    610609                                                                                                        out.println("ERROR generating keys");
    611610                                                                                                }
  • apps/BOB/src/net/i2p/BOB/I2Plistener.java

    r32b095e r4308ce6  
    2323import net.i2p.client.streaming.I2PSocket;
    2424import net.i2p.client.streaming.I2PSocketManager;
    25 import net.i2p.util.Log;
    2625
    2726/**
     
    3332
    3433        private NamedDB info,  database;
    35         private Log _log;
     34        private Logger _log;
    3635        public I2PSocketManager socketManager;
    3736        public I2PServerSocket serverSocket;
     
    4645         * @param _log
    4746         */
    48         I2Plistener(I2PServerSocket SS, I2PSocketManager S, NamedDB info, NamedDB database, Log _log, AtomicBoolean lives) {
     47        I2Plistener(I2PServerSocket SS, I2PSocketManager S, NamedDB info, NamedDB database, Logger _log, AtomicBoolean lives) {
    4948                this.database = database;
    5049                this.info = info;
  • apps/BOB/src/net/i2p/BOB/MUXlisten.java

    r32b095e r4308ce6  
    3737
    3838        private NamedDB database,  info;
    39         private Log _log;
     39        private Logger _log;
    4040        private I2PSocketManager socketManager;
    4141        private ByteArrayInputStream prikey;
     
    5858         * @throws java.io.IOException
    5959         */
    60         MUXlisten(AtomicBoolean lock, NamedDB database, NamedDB info, Log _log) throws I2PException, IOException, RuntimeException {
     60        MUXlisten(AtomicBoolean lock, NamedDB database, NamedDB info, Logger _log) throws I2PException, IOException, RuntimeException {
    6161                try {
    6262                        int port = 0;
  • apps/BOB/src/net/i2p/BOB/TCPlistener.java

    r32b095e r4308ce6  
    2323import net.i2p.client.streaming.I2PServerSocket;
    2424import net.i2p.client.streaming.I2PSocketManager;
    25 import net.i2p.util.Log;
    2625
    2726/**
     
    3332
    3433        private NamedDB info,  database;
    35         private Log _log;
     34        private Logger _log;
    3635        public I2PSocketManager socketManager;
    3736        public I2PServerSocket serverSocket;
     
    4645         * @param _log
    4746         */
    48         TCPlistener(ServerSocket listener, I2PSocketManager S, NamedDB info, NamedDB database, Log _log, AtomicBoolean lives) {
     47        TCPlistener(ServerSocket listener, I2PSocketManager S, NamedDB info, NamedDB database, Logger _log, AtomicBoolean lives) {
    4948                this.database = database;
    5049                this.info = info;
Note: See TracChangeset for help on using the changeset viewer.