Android Open Source - AndroidLibraryProject Magnetometer Db Helper






From Project

Back to project page AndroidLibraryProject.

License

The source code is released under:

Apache License

If you think the Android project AndroidLibraryProject listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

/*
 * Copyright (c) 2013 by CDAC Chennai //from w w  w.ja va  2  s .  c  o m
 *  
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 * 
 * @File        MagnetometerDbHelper
 * @Created:    15.09.2014
 * @author:     Prasenjit
 * Last Change: 26.09.2014 by Prasenjit
 */

package com.contextawareframework.dbmanager;

import java.util.ArrayList;
import java.util.List;

import com.contextawareframework.globalvariable.CAFConfig;
import com.contextawareframework.sensors.motionsensors.Gyrometer;
import com.contextawareframework.sensors.positionsensors.Magnetometer;

import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.SQLException;
import android.database.sqlite.SQLiteDatabase;
import android.util.Log;

/**
 * This is a database helper class for all CRUD operation on Magnetometer Sensor in Android
 */
public class  MagnetometerDbHelper{

  // Database fields
  private SQLiteDatabase database;
  private ContextAwareSQLiteHelper dbHelper;
  private static MagnetometerDbHelper magnetometerDbHelper;

  private static boolean enableDebugging = CAFConfig.isEnableDebugging();
  private String TAG =  "MagnetometerDbHelper" ;
  private String[] allColumns = { ContextAwareSQLiteHelper.COLUMN_MAG_ID,
      ContextAwareSQLiteHelper.COLUMN_MAG_TIMESTAMP, ContextAwareSQLiteHelper.COLUMN_MAG_X, ContextAwareSQLiteHelper.COLUMN_MAG_Y, ContextAwareSQLiteHelper.COLUMN_MAG_Z
  };

  /**
   * Method to enable debugging
   * @param boolean
   */
  public void setEnableDebugging(boolean value)
  {
    enableDebugging = value;
  }

  /**
   * Method to get the present value of enableDebugging
   * @return boolean
   */
  public boolean getEnableDebugging()
  {
    return enableDebugging;
  }

  /**
   * Default Constructor
   */
  private MagnetometerDbHelper(Context context) {
    dbHelper = new ContextAwareSQLiteHelper(context);
  }

  public static synchronized MagnetometerDbHelper getInstance(Context context)
  {
    if (magnetometerDbHelper == null)
      magnetometerDbHelper = new MagnetometerDbHelper(context);

    return magnetometerDbHelper;
  }

  /**
   * Method to open the database for writing
   */
  public void open() {
    try
    {
      database = dbHelper.getWritableDatabase();
    }
    catch(SQLException e)
    {
      e.printStackTrace();
    }

  }
  /**
   * Method to open the database in read only mode 
   */
  public void openReadOnly()
  {
    try
    {
      database = dbHelper.getReadableDatabase();
    }
    catch(SQLException e)
    {
      e.printStackTrace();
    }
  }
  /**
   * Method to close the database connection
   */
  public void close() {
    dbHelper.close();
  }

  /**
   * Method to create insert a row of data into the database
   */
  public Magnetometer createMagnetometerRowData(long timestamp,Float x, Float y, Float z){
    Magnetometer newRow = null ;
    try
    {
      ContentValues values = new ContentValues();
      values.put(ContextAwareSQLiteHelper.COLUMN_MAG_TIMESTAMP, timestamp);
      values.put(ContextAwareSQLiteHelper.COLUMN_MAG_X,x);
      values.put(ContextAwareSQLiteHelper.COLUMN_MAG_Y, y);
      values.put(ContextAwareSQLiteHelper.COLUMN_MAG_Z, z);
      long insertId = database.insert(ContextAwareSQLiteHelper.TABLE_MAGNETOMETER, null,
          values);
      Cursor cursor = database.query(ContextAwareSQLiteHelper.TABLE_MAGNETOMETER,
          allColumns, ContextAwareSQLiteHelper.COLUMN_MAG_ID + " = " + insertId, null,
          null, null, null);
      cursor.moveToFirst();
      newRow = cursorToMagnetometerRow(cursor);
      cursor.close();
    }
    catch(SQLException e)
    {
      e.printStackTrace();
    }
    if(enableDebugging)
    {
      Log.d(TAG,"createMagnetoRowDataMethod");
    }
    return newRow;
  }

  /**
   * Method to delete a row from database.
   */
  public void deleteMagnetometerRowData(Magnetometer rowData) {
    try{
      long id = rowData.getId();
      System.out.println("Comment deleted with id: " + id);
      database.delete(ContextAwareSQLiteHelper.TABLE_MAGNETOMETER, ContextAwareSQLiteHelper.COLUMN_MAG_ID+ " = " + id, null);
    }
    catch(SQLException e)
    {
      e.printStackTrace();
    }
  }

  /**
   * Method to list all row of the Magnetometer table
   */
  public List<Magnetometer> getAllRows() {
    List<Magnetometer> magnetoRows = new ArrayList<Magnetometer>();
    Cursor cursor;
    try
    {
      cursor = database.query(ContextAwareSQLiteHelper.TABLE_MAGNETOMETER,
          allColumns, null, null, null, null, null);

      cursor.moveToFirst();
      while (!cursor.isAfterLast()) {
        Magnetometer magneto = cursorToMagnetometerRow(cursor);
        magnetoRows.add(magneto);
        cursor.moveToNext();
      }
      // Make sure to close the cursor
      cursor.close();
    }
    catch(SQLException e)
    {
      e.printStackTrace();
    }
    if(enableDebugging)
    {
      Log.d(TAG,"getAllRows");
    }
    return magnetoRows;
  }
  /**
   * Method to initialize a Magnetometer POJO object
   */
  private Magnetometer cursorToMagnetometerRow(Cursor cursor) {
    Magnetometer magnetoRow = new Magnetometer();
    try{
      magnetoRow.setTimeStamp(cursor.getLong(0));
      magnetoRow.setxAxis(cursor.getFloat(1));
      magnetoRow.setyAxis(cursor.getFloat(2));
      magnetoRow.setzAxis(cursor.getFloat(3));
    }
    catch(Exception e)
    {
      e.printStackTrace();
    }
    if(enableDebugging)
    {
      Log.d(TAG,"cursorToGyroRow");
    }
    return magnetoRow;
  }
}




Java Source Code List

.BatteryDbHelper.java
.Bluetooth.java
.Camera.java
.Gravity.java
.Humidity.java
.Microphone.java
.NFC.java
.Orientation.java
.Pressure.java
.SDCard.java
.Telephony.java
.Temparature.java
.USB.java
.Wifi.java
com.contextawareframework.backgroundservices.AccelerometerDataListener.java
com.contextawareframework.backgroundservices.BatteryDataService.java
com.contextawareframework.backgroundservices.CAFService.java
com.contextawareframework.backgroundservices.GPSTracker.java
com.contextawareframework.backgroundservices.GyroscopeDataListener.java
com.contextawareframework.backgroundservices.LightDataListener.java
com.contextawareframework.backgroundservices.LocationDataListener.java
com.contextawareframework.backgroundservices.MagnetometerDataListener.java
com.contextawareframework.backgroundservices.ProximityDataListener.java
com.contextawareframework.backgroundservices.SoundRecorder.java
com.contextawareframework.backgroundservices.Text2Speech.java
com.contextawareframework.contextawarefunctions.ContextAwareFunction.java
com.contextawareframework.controller.BatteryController.java
com.contextawareframework.controller.SensorController.java
com.contextawareframework.dataanalysis.AccelerometerDataAnalysis.java
com.contextawareframework.dataanalysis.ApplicationDataAnalysis.java
com.contextawareframework.dataanalysis.LocationDataAnalysis.java
com.contextawareframework.dbmanager.AccelerometerDbHelper.java
com.contextawareframework.dbmanager.ContextAwareSQLiteHelper.java
com.contextawareframework.dbmanager.GyroscopeDbHelper.java
com.contextawareframework.dbmanager.LightDbHelper.java
com.contextawareframework.dbmanager.LocationDbHelper.java
com.contextawareframework.dbmanager.MagnetometerDbHelper.java
com.contextawareframework.dbmanager.ProximityDbHelper.java
com.contextawareframework.dbmanager.UserInfoDbHelper.java
com.contextawareframework.exceptions.AccelerometerSensorException.java
com.contextawareframework.exceptions.BatteryException.java
com.contextawareframework.exceptions.CAFException.java
com.contextawareframework.exceptions.GyrometerSensorException.java
com.contextawareframework.exceptions.LightSensorException.java
com.contextawareframework.exceptions.LocationServiceException.java
com.contextawareframework.exceptions.MagnetometerSensorException.java
com.contextawareframework.exceptions.ProximitySensorException.java
com.contextawareframework.exceptions.SDCardException.java
com.contextawareframework.exceptions.SQLiteQueryException.java
com.contextawareframework.exceptions.SensorException.java
com.contextawareframework.globalvariable.CAFConfig.java
com.contextawareframework.notificationservice.IssueNotification.java
com.contextawareframework.os.Battery.java
com.contextawareframework.os.CAFPowerManager.java
com.contextawareframework.os.UserInfo.java
com.contextawareframework.probe.Probe.java
com.contextawareframework.probe.WfiProbe.java
com.contextawareframework.querymodule.BaseQueryClass.java
com.contextawareframework.querymodule.DeveloperInfo.java
com.contextawareframework.querymodule.UserIdentification.java
com.contextawareframework.security.FileEncryptor.java
com.contextawareframework.security.JavaDESEncryption.java
com.contextawareframework.sensorlistener.BatteryListener.java
com.contextawareframework.sensorlistener.SensorListener.java
com.contextawareframework.sensors.environmentsensors.Light.java
com.contextawareframework.sensors.motionsensors.Accelerometer.java
com.contextawareframework.sensors.motionsensors.Gyrometer.java
com.contextawareframework.sensors.positionsensors.LocationPojo.java
com.contextawareframework.sensors.positionsensors.Magnetometer.java
com.contextawareframework.sensors.positionsensors.Proximity.java
com.contextawareframework.uploadmanager.BackupDb.java
com.contextawareframework.uploadmanager.UploadScheduler.java
com.contextawareframework.uploadmanager.UploadToServer.java
com.contextawareframework.utility.CsvFileWriter.java
com.example.frameworktestcase.FrameworkFunctionalTestActivity.java
com.example.frameworktestcase.MainActivity.java
com.example.frameworktestcase.SecondActivity.java
com.example.frameworktestcase.Singleton.java