Android Open Source - digital-ocean-swimmer Record Dao






From Project

Back to project page digital-ocean-swimmer.

License

The source code is released under:

MIT License

If you think the Android project digital-ocean-swimmer 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

package com.yassirh.digitalocean.data;
//www.j  av  a  2s.c o  m
import java.util.ArrayList;
import java.util.List;

import android.content.ContentValues;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;

import com.yassirh.digitalocean.model.Domain;
import com.yassirh.digitalocean.model.Record;

public class RecordDao extends SqlDao<Record> {

  private DatabaseHelper databaseHelper;

  public RecordDao(DatabaseHelper databaseHelper) {
    super();
    this.databaseHelper = databaseHelper;
  }

  public Record newInstance(Cursor c) {
    Record record = new Record();
    Domain domain = new DomainDao(databaseHelper).findByProperty(DomainTable.NAME, c.getString(c.getColumnIndex(RecordTable.DOMAIN_NAME)));
    record.setId(c.getLong(c.getColumnIndex(RecordTable.ID)));
    record.setName(c.getString(c.getColumnIndex(RecordTable.NAME)));
    record.setDomain(domain);
    record.setRecordType(c.getString(c.getColumnIndex(RecordTable.RECORD_TYPE)));
    record.setData(c.getString(c.getColumnIndex(RecordTable.DATA)));
    record.setPort(c.getInt(c.getColumnIndex(RecordTable.PORT)));
    record.setPriority(c.getInt(c.getColumnIndex(RecordTable.PRIORITY)));
    record.setWeight(c.getInt(c.getColumnIndex(RecordTable.WEIGHT)));
    return record;
  }

  @Override
  public DatabaseHelper getDatabaseHelper() {
    return databaseHelper;
  }

  @Override
  public TableHelper getTableHelper() {
    return new RecordTable();
  }

  public void createOrUpdate(Record record) {
    boolean update = findById(record.getId()) != null;
    
    ContentValues values = new ContentValues();
    values.put(RecordTable.ID, record.getId());
    values.put(RecordTable.NAME, record.getName());
    values.put(RecordTable.DOMAIN_NAME, record.getDomain().getName());
    values.put(RecordTable.RECORD_TYPE, record.getRecordType());
    values.put(RecordTable.DATA, record.getData());
    values.put(RecordTable.PORT, record.getPort());
    values.put(RecordTable.PRIORITY, record.getPriority());
    values.put(RecordTable.WEIGHT, record.getWeight());

    if(update){
      db.updateWithOnConflict(getTableHelper().TABLE_NAME,values,DropletTable.ID +"= ?",new String[]{record.getId()+""},SQLiteDatabase.CONFLICT_REPLACE);
    }else{
      db.insertWithOnConflict(getTableHelper().TABLE_NAME, null, values,SQLiteDatabase.CONFLICT_REPLACE);
    }
  }

  public List<Record> getAllByDomain(String domainName) {
    List<Record> records = new ArrayList<Record>();
    Cursor cursor = db.query(getTableHelper().TABLE_NAME,
        getTableHelper().getAllColumns(), RecordTable.DOMAIN_NAME + " = '" + domainName + "'", null, null, null, null);
    
    if(cursor.moveToFirst()){
      while (!cursor.isAfterLast()) {
        Record record = newInstance(cursor);
        records.add(record);
        cursor.moveToNext();
      }
    }
    cursor.close();
    return records;
  }

  public void deleteAllRecordsByDomain(String domainName) {
    db.delete(getTableHelper().TABLE_NAME, RecordTable.DOMAIN_NAME + " = '" + domainName + "'", null);
  }
  
}




Java Source Code List

android.support.v4.preference.PreferenceFragment.java
android.support.v4.preference.PreferenceManagerCompat.java
com.yassirh.digitalocean.data.AccountDao.java
com.yassirh.digitalocean.data.AccountTable.java
com.yassirh.digitalocean.data.DatabaseHelper.java
com.yassirh.digitalocean.data.DomainDao.java
com.yassirh.digitalocean.data.DomainTable.java
com.yassirh.digitalocean.data.DropletDao.java
com.yassirh.digitalocean.data.DropletTable.java
com.yassirh.digitalocean.data.ImageDao.java
com.yassirh.digitalocean.data.ImageTable.java
com.yassirh.digitalocean.data.NetworkDao.java
com.yassirh.digitalocean.data.NetworkTable.java
com.yassirh.digitalocean.data.RecordDao.java
com.yassirh.digitalocean.data.RecordTable.java
com.yassirh.digitalocean.data.RegionDao.java
com.yassirh.digitalocean.data.RegionTable.java
com.yassirh.digitalocean.data.SSHKeyDao.java
com.yassirh.digitalocean.data.SSHKeyTable.java
com.yassirh.digitalocean.data.SizeDao.java
com.yassirh.digitalocean.data.SizeTable.java
com.yassirh.digitalocean.data.SqlDao.java
com.yassirh.digitalocean.data.TableHelper.java
com.yassirh.digitalocean.model.Account.java
com.yassirh.digitalocean.model.Action.java
com.yassirh.digitalocean.model.Domain.java
com.yassirh.digitalocean.model.Droplet.java
com.yassirh.digitalocean.model.Image.java
com.yassirh.digitalocean.model.Network.java
com.yassirh.digitalocean.model.Record.java
com.yassirh.digitalocean.model.Region.java
com.yassirh.digitalocean.model.SSHKey.java
com.yassirh.digitalocean.model.Size.java
com.yassirh.digitalocean.service.AccountService.java
com.yassirh.digitalocean.service.ActionService.java
com.yassirh.digitalocean.service.DomainService.java
com.yassirh.digitalocean.service.DropletService.java
com.yassirh.digitalocean.service.ImageService.java
com.yassirh.digitalocean.service.NotificationsIndexes.java
com.yassirh.digitalocean.service.RecordService.java
com.yassirh.digitalocean.service.RegionService.java
com.yassirh.digitalocean.service.SSHKeyService.java
com.yassirh.digitalocean.service.SizeService.java
com.yassirh.digitalocean.ui.AccountAdapter.java
com.yassirh.digitalocean.ui.AddAccountActivity.java
com.yassirh.digitalocean.ui.DomainAdapter.java
com.yassirh.digitalocean.ui.DomainDetailsDialogFragment.java
com.yassirh.digitalocean.ui.DomainsFragment.java
com.yassirh.digitalocean.ui.DrawerPositions.java
com.yassirh.digitalocean.ui.DropletAdapter.java
com.yassirh.digitalocean.ui.DropletDetailsDialogFragment.java
com.yassirh.digitalocean.ui.DropletResizeDialogFragment.java
com.yassirh.digitalocean.ui.DropletsFragment.java
com.yassirh.digitalocean.ui.ImageAdapter.java
com.yassirh.digitalocean.ui.ImagesFragment.java
com.yassirh.digitalocean.ui.MainActivity.java
com.yassirh.digitalocean.ui.NavigationDrawerAdapter.java
com.yassirh.digitalocean.ui.NewDropletActivity.java
com.yassirh.digitalocean.ui.PrefsFragment.java
com.yassirh.digitalocean.ui.RecordAdapter.java
com.yassirh.digitalocean.ui.RecordCreateDialogFragment.java
com.yassirh.digitalocean.ui.RecordTypeAdapter.java
com.yassirh.digitalocean.ui.RegionAdapter.java
com.yassirh.digitalocean.ui.RegionsFragment.java
com.yassirh.digitalocean.ui.SSHKeyAdapter.java
com.yassirh.digitalocean.ui.SSHKeyCreateDialogFragment.java
com.yassirh.digitalocean.ui.SSHKeyFragment.java
com.yassirh.digitalocean.ui.SettingsActivity.java
com.yassirh.digitalocean.ui.SizeAdapter.java
com.yassirh.digitalocean.ui.SizesFragment.java
com.yassirh.digitalocean.ui.SwitchAccountDialogFragment.java
com.yassirh.digitalocean.ui.Updatable.java
com.yassirh.digitalocean.ui.widget.MultiSelectSpinner.java
com.yassirh.digitalocean.utils.ApiHelper.java
com.yassirh.digitalocean.utils.AppRater.java
com.yassirh.digitalocean.utils.MyApplication.java
com.yassirh.digitalocean.utils.MyBroadcastReceiver.java
com.yassirh.digitalocean.utils.PreferencesHelper.java