src/org/sonews/config/AbstractConfig.java
author cli
Sun, 29 Aug 2010 17:43:58 +0200
changeset 36 c404a87db5b7
parent 35 ed84c8bdd87b
child 37 74139325d305
permissions -rw-r--r--
Add some checks to prevent #13 happen.
     1 /*
     2  *   SONEWS News Server
     3  *   see AUTHORS for the list of contributors
     4  *
     5  *   This program is free software: you can redistribute it and/or modify
     6  *   it under the terms of the GNU General Public License as published by
     7  *   the Free Software Foundation, either version 3 of the License, or
     8  *   (at your option) any later version.
     9  *
    10  *   This program is distributed in the hope that it will be useful,
    11  *   but WITHOUT ANY WARRANTY; without even the implied warranty of
    12  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    13  *   GNU General Public License for more details.
    14  *
    15  *   You should have received a copy of the GNU General Public License
    16  *   along with this program.  If not, see <http://www.gnu.org/licenses/>.
    17  */
    18 
    19 package org.sonews.config;
    20 
    21 /**
    22  * Base class for Config and BootstrapConfig.
    23  * @author Christian Lins
    24  * @since sonews/0.5.0
    25  */
    26 public abstract class AbstractConfig 
    27 {
    28   
    29   public abstract String get(String key, String defVal);
    30   
    31   public int get(final String key, final int defVal)
    32   {
    33     return Integer.parseInt(
    34       get(key, Integer.toString(defVal)));
    35   }
    36   
    37   public boolean get(String key, boolean defVal)
    38   {
    39     String val = get(key, Boolean.toString(defVal));
    40     return Boolean.parseBoolean(val);
    41   }
    42 
    43   /**
    44    * Returns a long config value specified via the given key.
    45    * @param key
    46    * @param defVal
    47    * @return
    48    */
    49   public long get(String key, long defVal)
    50   {
    51     String val = get(key, Long.toString(defVal));
    52     return Long.parseLong(val);
    53   }
    54 
    55   protected abstract void set(String key, String val);
    56   
    57 }