DBManager.java :  » App » whimper » edu » toronto » whimper » DataProcessor » Android Open Source

Android Open Source » App » whimper 
whimper » edu » toronto » whimper » DataProcessor » DBManager.java
package edu.toronto.whimper.DataProcessor;

import java.util.ArrayList;
import java.util.Date;

import edu.toronto.whimper.Utils;
import edu.toronto.whimper.GeneralObjects.MyLocation;
import edu.toronto.whimper.GeneralObjects.NoiseSample;
import edu.toronto.whimper.GeneralObjects.Range;
import android.database.Cursor;

public class DBManager {

  public static boolean insertNoiseSample(DBAdapter db, String datetime, double noise, double latitude, double longitude, double altitude)
    {
      db.open();      
        
      long id = db.insertNoiseSample(datetime, noise, latitude, longitude, altitude);
        if(id == -1) return false;
        
        db.close();
        return true;              
    }
  
  public static boolean insertDumpNoiseSample(DBAdapter db)
    {
      //---add dump data---
        db.open();      
        
        ArrayList<MyLocation> l = Utils.getdumpLocations();
        
        double noise = 120;
        for (MyLocation var : l)
        {
          long id = db.insertNoiseSample(Utils.getNowDateTime(), noise, (double)var.getLatitude() , (double)var.getLongitude(), 0.0);
          if(id == -1) return false;
          noise ++;
        }
        db.close();
        return true;              
    }  
  // change algorithm considering that hours are in military time
  public static ArrayList<NoiseSample> getNoiseSampleByRange(ArrayList<NoiseSample> samples, Range range, boolean isNight)
  {
    ArrayList<NoiseSample> results = new ArrayList<NoiseSample>();
    
    for (NoiseSample sample : samples) 
      {
        String dateSt = sample.getDate();  
        
        Date date = Utils.getDateTime(dateSt);
        
        int hour = date.getHours();
        
        if(hour >= range.getFrom() && hour <= range.getTo())
        {
          results.add(sample);
        }                
      }
    
    return results;
    
  }
  
  public static ArrayList<NoiseSample> getAllNoiseSamples(DBAdapter db)
    {
      //---get all
      db.open();
      Cursor c = db.getAllNoiseSamples();  
      
      ArrayList<NoiseSample> noises = new ArrayList<NoiseSample>(c.getCount());
      
      if(c.getCount()>0)
      {
        if (c.moveToFirst())
        {
            do {   
              String date = c.getString(1);
              double noise = c.getDouble(2);
              double lati = c.getDouble(3);
              double longi = c.getDouble(4);
              //double alti = c.getDouble(5);
              
              noises.add(new NoiseSample(date, noise, new MyLocation(lati, longi)));
                
            } while (c.moveToNext());
                        
        }
      }
      else 
      {
                  
      }
      
      db.close();
      
      return noises;
    }     

}
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.