Skip to content
SoundModemConfiguration.java 4.44 KiB
Newer Older
xtof's avatar
xtof committed
package org.josast.ModuleSoundModem;

import java.util.logging.Logger;

import org.josast.property.CONFIG;
import org.josast.property.ConfigObject;

xtof's avatar
xtof committed
/**
 * @author Christophe
 *
 */
xtof's avatar
xtof committed
/**
 * @author christophe
 *
 */
/**
 * @author christophe
 *
 */
/**
 * @author christophe
 *
 */
/**
 * @author christophe
 *
 */
/**
 * @author christophe
 *
 */
/**
 * @author christophe
 *
 */
public class SoundModemConfiguration extends ConfigObject {
xtof's avatar
xtof committed
    private Logger log = Logger.getLogger("AmsatLogger");

    /** Default IP Adress. */
    private String smIPadress = "localhost";
    /** Default port. */
    private int smPort = 8100;
    private boolean smGenerateBinarieFile = false;
    private String smBinarieOutputFile = "soundmodem.bin";
    private String smBinarieOutputDirectory = "SoundModemOuput";

    private boolean smBinarieFilePrefixDate = false;

    protected CONFIG configFile = CONFIG.getInstance();

    /**
     * @param configFilename
     */
    public SoundModemConfiguration(final String configFilename) {
        super(configFilename);
        // vérifie si la propriété est dans le fichier
        String temp = configFile.GetProperty("smPort");

        if (temp == null) {
            // config file not initialised
            initialisePropertiesFile();
            log.severe(
                    "properties file not initialised - a file is created with properties with defaults value");
            System.out.println(
                    "config file does not content required properties \n the file "
                            + configFilename
                            + " has been set up with properties to configure");

        } else {
            initialiseFromProperties();
        }

    }

    private void initialisePropertiesFile() {
        configFile.SetProperty("smIPadress", smIPadress);
        configFile.SetProperty("smPort", "" + smPort);
        configFile.SetProperty("smGenerateBinarieFile",
                "" + smGenerateBinarieFile);
        configFile.SetProperty("smBinarieOutputFile", smBinarieOutputFile);
        configFile.SetProperty("smBinarieOutputFile", smBinarieOutputDirectory);
        configFile.SetProperty("smBinarieFilePrefixDate",
                "" + smBinarieFilePrefixDate);

    }

    private void initialiseFromProperties() {
        smIPadress = configFile.GetProperty("smIPadress");
        smPort = Integer.parseInt(configFile.GetProperty("smPort"));
        smGenerateBinarieFile = Boolean
                .parseBoolean(configFile.GetProperty("smGenerateBinarieFile"));
        smBinarieOutputFile = configFile.GetProperty("smBinarieOutputFile");
        smBinarieOutputDirectory = configFile
                .GetProperty("smBinarieOutputDirectory");
        smBinarieFilePrefixDate = Boolean.parseBoolean(
                configFile.GetProperty("smBinarieFilePrefixDate"));

    }

    /**
     * @return IP adress
     */
    public String getSmIPadress() {
        return smIPadress;
    }

    /**
     * @param iPadress
     */
    public void setSmIPadress(final String iPadress) {
        smIPadress = iPadress;
    }

    /**
     * @return Port
     */
    public int getSmPort() {
        return smPort;
    }

    public void setSmPort(final int port) {
        this.smPort = port;
    }

    public String toString() {
        return smIPadress + ":" + smPort;
    }
    /**
     * @return GenerateBinarieFile
     */
    public boolean isSmGenerateBinarieFile() {
        return smGenerateBinarieFile;
    }

    public void setSmGenerateBinarieFile(final boolean smGenerateBinarieFile) {
        this.smGenerateBinarieFile = smGenerateBinarieFile;
    }
    /**
     * @return BinarieOutputFile
     */
    public String getSmBinarieOutputFile() {
        return smBinarieOutputFile;
    }

    public void setSmBinarieOutputFile(final String smBinarieOutputFile) {
        this.smBinarieOutputFile = smBinarieOutputFile;
    }
    /**
     * @return BinarieFilePrefixDate
     */
    public boolean isSmBinarieFilePrefixDate() {
        return smBinarieFilePrefixDate;
    }

    public void setSmBinarieFilePrefixDate(final boolean smBinarieFilePrefixDate) {
        this.smBinarieFilePrefixDate = smBinarieFilePrefixDate;
    }
    /**
     * @return BinarieOutputDirectory
     */
    public String getSmBinarieOutputDirectory() {
        return smBinarieOutputDirectory;
    }

    public void setSmBinarieOutputDirectory(final String smBinarieOutputDirectory) {
        this.smBinarieOutputDirectory = smBinarieOutputDirectory;
    }
xtof's avatar
xtof committed
}