///// <summary> ///// Dequeue message from queue, using sync methods. ///// </summary> ///// <returns></returns> //public IQueueItem Dequeue() //{ // try // { // CurrentItem = null; // //EnsureSync(); // m_fileMessage.DequeueFirstItem() // if (m_fileMessage.CanQueue()) // { // //Thread.Sleep(1000); // //string folder = m_fileMessage.GetFirstBatchFolder(FileOrderType); // //if (folder != null) // //{ // // if (m_fileMessage.DequeueFolder(FileOrderType,MaxItemsPerSession) > 0) // // { // // return CurrentItem;//.GetMessage(); // // } // //} // } // else // { // Thread.Sleep(1000); // } // } // catch (Exception ex) // { // Netlog.ErrorFormat("error FolderQueue.Dequeue :{0}, Trace:{1} ", ex.Message, ex.StackTrace); // } // return null; //} /// <summary> /// Dequeue message from queue with specified item id , using sync methods. /// </summary> /// <param name="identifier"></param> /// <returns></returns> public IQueueItem DequeueItem(string identifier) { try { CurrentItem = null; //EnsureOperations(); EnsureRecieve(); if (m_fileMessage.CanQueue()) { string filename = m_fileMessage.GetQueueFilename(identifier); var item = m_fileMessage.DequeueFile(filename); if (item == null) { return(null); } return(item);//.GetMessage(); //if (m_fileMessage.DequeueFile(filename) > 0) //{ // if (CurrentItem != null) // { // return CurrentItem.GetMessage(); // } //} } else { Thread.Sleep(1000); } } catch (Exception ex) { Netlog.ErrorFormat("error FolderQueue.Dequeue :{0}, Trace:{1} ", ex.Message, ex.StackTrace); } return(null); }