public static Transaction fromBlotterCursor(Cursor c) { long id = c.getLong(BlotterColumns._id.ordinal()); Transaction t = new Transaction(); t.id = id; t.parentId = c.getLong(BlotterColumns.parent_id.ordinal()); t.fromAccountId = c.getLong(BlotterColumns.from_account_id.ordinal()); t.toAccountId = c.getLong(BlotterColumns.to_account_id.ordinal()); t.categoryId = c.getLong(BlotterColumns.category_id.ordinal()); t.projectId = c.getLong(BlotterColumns.project_id.ordinal()); t.payeeId = c.getLong(BlotterColumns.payee_id.ordinal()); t.note = c.getString(BlotterColumns.note.ordinal()); t.fromAmount = c.getLong(BlotterColumns.from_amount.ordinal()); t.toAmount = c.getLong(BlotterColumns.to_amount.ordinal()); t.dateTime = c.getLong(BlotterColumns.datetime.ordinal()); t.originalCurrencyId = c.getLong(BlotterColumns.original_currency_id.ordinal()); t.originalFromAmount = c.getLong(BlotterColumns.original_from_amount.ordinal()); t.locationId = c.getLong(BlotterColumns.location_id.ordinal()); // t.provider = c.getString(BlotterColumns.provider.ordinal()); // t.accuracy = c.getFloat(BlotterColumns.accuracy.ordinal()); // t.latitude = c.getDouble(BlotterColumns.latitude.ordinal()); // t.longitude = c.getDouble(BlotterColumns.longitude.ordinal()); t.isTemplate = c.getInt(BlotterColumns.is_template.ordinal()); t.templateName = c.getString(BlotterColumns.template_name.ordinal()); t.recurrence = c.getString(BlotterColumns.recurrence.ordinal()); t.notificationOptions = c.getString(BlotterColumns.notification_options.ordinal()); t.status = TransactionStatus.valueOf(c.getString(BlotterColumns.status.ordinal())); t.attachedPicture = c.getString(BlotterColumns.attached_picture.ordinal()); t.isCCardPayment = c.getInt(BlotterColumns.is_ccard_payment.ordinal()); t.lastRecurrence = c.getLong(BlotterColumns.last_recurrence.ordinal()); return t; }
public TransactionStatus getStatusForTransaction(long transactionId) { try { Result result = table.get(new Get(getRow(transactionId))); if (result == null || result.isEmpty()) { return null; } byte[] statusCell = result.getValue(STATUS_COLUMN_BYTES); if (statusCell == null) { throw new RuntimeException("No status cell for row " + transactionId); } String statusString = Bytes.toString(statusCell); return TransactionStatus.valueOf(statusString); } catch (IOException e) { throw new RuntimeException(e); } }