void wallet_db::update_market_order( const address& owner,
                                      const optional<bts::blockchain::market_order>& order,
                                      const transaction_id_type& trx_id )
 {
    if( order.valid() ) market_orders[ owner ].order = *order;
    else market_orders[ owner ].order.state.balance = 0;
    if( trx_id != transaction_id_type() )
       market_orders[ owner ].transactions.insert( trx_id );
    store_record( market_orders[ owner ] );
 }
Beispiel #2
0
   void wallet_db::store_transaction( const transaction_data& transaction )
   { try {
       FC_ASSERT( is_open() );
       FC_ASSERT( transaction.record_id != transaction_id_type() );
       FC_ASSERT( transaction.is_virtual || transaction.trx.id() != signed_transaction().id() );

       owallet_transaction_record transaction_record = lookup_transaction( transaction.record_id );
       if( !transaction_record.valid() )
           transaction_record = wallet_transaction_record();

       transaction_data& temp = *transaction_record;
       temp = transaction;

       store_and_reload_record( *transaction_record );
   } FC_CAPTURE_AND_RETHROW( (transaction) ) }
 fee_index( share_type fees = 0, transaction_id_type trx = transaction_id_type() )
 :_fees(fees),_trx(trx){}