Rhino.Queues.Storage.GlobalActions.MarkAsReadyToSend C# (CSharp) Метод

MarkAsReadyToSend() публичный Метод

public MarkAsReadyToSend ( System.Guid transactionId ) : void
transactionId System.Guid
Результат void
        public void MarkAsReadyToSend(Guid transactionId)
        {
            Api.JetSetCurrentIndex(session, outgoing, "by_tx_id");

            Api.MakeKey(session, outgoing, transactionId.ToByteArray(), MakeKeyGrbit.NewKey);
            if (Api.TrySeek(session, outgoing, SeekGrbit.SeekEQ) == false)
                return;
            Api.MakeKey(session, outgoing, transactionId.ToByteArray(), MakeKeyGrbit.NewKey);
            try
            {
                Api.JetSetIndexRange(session, outgoing,
                                     SetIndexRangeGrbit.RangeInclusive | SetIndexRangeGrbit.RangeUpperLimit);
            }
            catch (EsentErrorException e)
            {
                if (e.Error!=JET_err.NoCurrentRecord)
                    throw;
                return;
            }
            do
            {
                using (var update = new Update(session, outgoing, JET_prep.Replace))
                {
                    Api.SetColumn(session, outgoing, ColumnsInformation.OutgoingColumns["send_status"], (int)OutgoingMessageStatus.Ready);

                    update.Save();
                }
                logger.DebugFormat("Marking output message {0} as Ready",
                    new Guid(Api.RetrieveColumn(session, outgoing, ColumnsInformation.OutgoingColumns["msg_id"])));
            } while (Api.TryMoveNext(session, outgoing));
        }