예제 #1
0
파일: Stack.cs 프로젝트: ericramses/YPILIS
        public void Clear(object writer)
        {
            for (int i = 0; i < this.m_Documents.Count; i++)
            {
                Document document = this.m_Documents[i];
                if (document.IsGlobal == false)
                {
                    document.RemoveWriter(writer);
                }

                if (document.Writers.Count == 0)
                {
                    this.m_Documents.Remove(document);
                }
            }
        }
예제 #2
0
파일: Stack.cs 프로젝트: waffle-iron/YPILIS
        private void PushOne(Document document, object writer)
        {
            if (document.WriterExists(writer) == true)
            {
                document.RemoveWriter(writer);

                if (document.Writers.Count == 0)
                {
                    if (document.IsLockAquiredByMe == true)
                    {
                        document.ReleaseLock();
                    }

                    if (document.IsGlobal == false)
                    {
                        this.m_Documents.Remove(document);
                    }
                }
            }
            document.Submit();
        }
예제 #3
0
파일: Stack.cs 프로젝트: ericramses/YPILIS
        private void PushOne(Document document, object writer)
        {
            if (document.WriterExists(writer) == true)
            {
                document.RemoveWriter(writer);

                if (document.Writers.Count == 0)
                {
                    document.ReleaseLock();
                    if (document.IsGlobal == false)
                    {
                        this.m_Documents.Remove(document);
                    }

                    if (document.Value is YellowstonePathology.Business.Test.AccessionOrder)
                    {
                        Business.Test.AccessionOrder accessionOrder = (Business.Test.AccessionOrder)document.Value;
                        Store.RedisServerProd1.Instance.Subscriber.Unsubscribe(accessionOrder.MasterAccessionNo);
                    }
                }
            }
            document.Submit();
        }
예제 #4
0
        private void PushOne(Document document, object writer)
        {
            if (document.WriterExists(writer) == true)
            {
                document.RemoveWriter(writer);

                if (document.Writers.Count == 0)
                {
                    if(document.IsLockAquiredByMe == true)
                    {
                        document.ReleaseLock();
                    }

                    if (document.IsGlobal == false)
                    {
                        this.m_Documents.Remove(document);
                    }
                }
            }
            document.Submit();
        }
예제 #5
0
파일: Stack.cs 프로젝트: ericramses/YPILIS
        private void PushOne(Document document, object writer)
        {
            if (document.WriterExists(writer) == true)
            {
                document.RemoveWriter(writer);

                if (document.Writers.Count == 0)
                {
                    document.ReleaseLock();
                    if (document.IsGlobal == false)
                    {
                        this.m_Documents.Remove(document);
                    }

                    if (document.Value is YellowstonePathology.Business.Test.AccessionOrder)
                    {
                        Business.Test.AccessionOrder accessionOrder = (Business.Test.AccessionOrder)document.Value;
                        ISubscriber subscriber = Business.RedisConnection.Instance.GetSubscriber();
                        subscriber.Unsubscribe(accessionOrder.MasterAccessionNo);
                    }
                }
            }
            document.Submit();
        }