ConfigUtil.java :  » Schedule » ringtonescheduler » fan » ringtone » util » Android Open Source

Android Open Source » Schedule » ringtonescheduler 
ringtonescheduler » fan » ringtone » util » ConfigUtil.java
package fan.ringtone.util;

import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;

import android.content.Context;
import android.widget.Toast;
import fan.ringtone.R;
import fan.ringtone.datastructure.GlobalSetting;
import fan.ringtone.util.ProgramConstants.NOTIFYTYPE;

public class ConfigUtil {

  public static GlobalSetting getGlobalSettings(Context v) {
    try {
      InputStream ins = v.openFileInput(ProgramConstants.settingData);
      ins.close();
    } catch (FileNotFoundException e1) {
      initializeGlobalSettings(v);
    } catch (IOException e) {
      Toast.makeText(v, R.string.errorReadGlobalSetting, 0).show();
    }
    try {
      InputStream ins = v.openFileInput(ProgramConstants.settingData);
      BufferedReader reader = new BufferedReader(new InputStreamReader(
          ins));
      String line = reader.readLine();
      boolean autoRun = true;
      Integer defaultAction = 0;
      boolean useNotification = true;

      if (line != null)
        autoRun = Boolean.parseBoolean(line);

      line = reader.readLine();
      if (line != null)
        defaultAction = Integer.parseInt(line);
      line = reader.readLine();
      if (line != null)
        useNotification = Boolean.parseBoolean(line);
      reader.close();
      return new GlobalSetting(autoRun, defaultAction, useNotification);
    } catch (Exception e) {
      Toast.makeText(v, R.string.errorReadGlobalSetting,
          Toast.LENGTH_SHORT).show();
    }
    return null;
  }

  private static void initializeGlobalSettings(Context v) {

    try {
      OutputStream ous = v.openFileOutput(ProgramConstants.settingData,
          Context.MODE_WORLD_READABLE);
      PrintWriter pw = new PrintWriter(new OutputStreamWriter(ous));
      pw.println(true);
      pw.println(ProgramConstants.notify2IntMap
          .get(ProgramConstants.NOTIFYTYPE.VIBRATE));
      pw.println(true);
      pw.close();
    } catch (Exception e) {
      Toast.makeText(v, R.string.errorInit, Toast.LENGTH_SHORT).show();
    }
  }

  public static void updateGlobalSettings(Context v, boolean autoRun,
      NOTIFYTYPE def, boolean useNotification) {
    try {
      OutputStream ous = v.openFileOutput(ProgramConstants.settingData,
          Context.MODE_WORLD_READABLE);
      PrintWriter pw = new PrintWriter(new OutputStreamWriter(ous));
      pw.println(autoRun);
      pw.println(ProgramConstants.notify2IntMap.get(def));
      pw.println(useNotification);
      pw.close();
    } catch (Exception e) {
      Toast.makeText(v, R.string.errorInit, Toast.LENGTH_SHORT).show();
    }
  }

}
java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.