/**
   * @param characterID
   * @return
   */
  public CharacterSheetResponse getCharacterSheet(int characterID) {
    CharacterSheetResponse characterSheet = new CharacterSheetResponse();

    Cursor c =
        db.query(
            TABLE,
            null,
            COL_CHARACTER_ID + " = ?",
            new String[] {String.valueOf(characterID)},
            null,
            null,
            null);

    if (c.moveToFirst()) {
      characterSheet.setCharacterID(c.getLong(c.getColumnIndex(COL_CHARACTER_ID)));
      characterSheet.setName(c.getString(c.getColumnIndex(COL_NAME)));
      // characterSheet.setRace(EveRace.valueOf(c.getString(c.getColumnIndex(COL_RACE)))); TODO Fix
      // eve race.

      try {
        characterSheet.setDateOfBirth(formatter.parse(c.getString(c.getColumnIndex(COL_DOB))));
      } catch (ParseException e) {
        e.printStackTrace();
      }

      characterSheet.setBloodLine(
          EveBloodline.valueOf(c.getString(c.getColumnIndex(COL_BLOODLINE))));
      characterSheet.setAncestry(EveAncestry.valueOf(c.getString(c.getColumnIndex(COL_ANCESTRY))));
      characterSheet.setGender(c.getString(c.getColumnIndex(COL_GENDER)));
      characterSheet.setCorporationName(c.getString(c.getColumnIndex(COL_CORP_NAME)));
      characterSheet.setCorporationID(c.getLong(c.getColumnIndex(COL_CORP_ID)));
      characterSheet.setAllianceID(c.getLong(c.getColumnIndex(COL_ALLIANCE_ID)));
      characterSheet.setAllianceName(c.getString(c.getColumnIndex(COL_ALLIANCE)));
      characterSheet.setCloneName(c.getString(c.getColumnIndex(COL_CLONE_NAME)));
      characterSheet.setCloneSkillPoints(c.getLong(c.getColumnIndex(COL_CLONE_SP)));
      characterSheet.setBalance(c.getDouble(c.getColumnIndex(COL_BALANCE)));

      characterSheet.setIntelligence(c.getInt(c.getColumnIndex(COL_INTELLIGENCE)));
      characterSheet.setMemory(c.getInt(c.getColumnIndex(COL_MEMORY)));
      characterSheet.setCharisma(c.getInt(c.getColumnIndex(COL_CHARISMA)));
      characterSheet.setPerception(c.getInt(c.getColumnIndex(COL_PERCEPTION)));
      characterSheet.setWillpower(c.getInt(c.getColumnIndex(COL_WILLPOWER)));
    }

    c.close();

    return characterSheet;
  }
  /** @param characterInfo */
  public void setCharacterSheet(CharacterSheetResponse characterSheet) {
    ContentValues insertValues = new ContentValues();

    insertValues.put(COL_CHARACTER_ID, characterSheet.getCharacterID());
    insertValues.put(COL_NAME, characterSheet.getName());
    // insertValues.put(COL_RACE, characterSheet.getRace().name()); TODO figure out why eve race
    // breaks
    insertValues.put(COL_DOB, formatter.format(characterSheet.getDateOfBirth()));
    insertValues.put(COL_BLOODLINE, characterSheet.getBloodLine().name());
    insertValues.put(COL_ANCESTRY, characterSheet.getAncestry().name());
    insertValues.put(COL_GENDER, characterSheet.getGender());
    insertValues.put(COL_CORP_NAME, characterSheet.getCorporationName());
    insertValues.put(COL_CORP_ID, characterSheet.getCorporationID());
    insertValues.put(COL_ALLIANCE_ID, characterSheet.getAllianceID());
    insertValues.put(COL_ALLIANCE, characterSheet.getAllianceName());
    insertValues.put(COL_CLONE_NAME, characterSheet.getCloneName());
    insertValues.put(COL_CLONE_SP, characterSheet.getCloneSkillPoints());
    insertValues.put(COL_BALANCE, characterSheet.getBalance());

    insertValues.put(COL_INTELLIGENCE, characterSheet.getIntelligence());
    insertValues.put(COL_MEMORY, characterSheet.getMemory());
    insertValues.put(COL_CHARISMA, characterSheet.getCharisma());
    insertValues.put(COL_PERCEPTION, characterSheet.getPerception());
    insertValues.put(COL_WILLPOWER, characterSheet.getWillpower());

    db.insertWithOnConflict(TABLE, null, insertValues, SQLiteDatabase.CONFLICT_REPLACE);
  }