Esempio n. 1
0
        public void HandleCommandComplete(Broker broker, IDecoder decoder, long sequence)
        {
            long   code    = decoder.ReadUint32();
            string text    = decoder.ReadStr8();
            Object context = this.SequenceManager.Release(sequence);

            if (context.Equals(CONTEXT_STARTUP))
            {
                broker.DecrementOutstanding();
            }
            else
            {
                if ((context.Equals(CONTEXT_SYNC)) & broker.GetSyncInFlight())
                {
                    broker.SetSyncInFlight(false);
                }
                else
                {
                    if (context.Equals(CONTEXT_MULTIGET) && SyncSequenceList.Contains(sequence))
                    {
                        lock (LockObject) {
                            SyncSequenceList.Remove(sequence);
                            if (SyncSequenceList.Count == 0)
                            {
                                Monitor.PulseAll(LockObject);
                            }
                        }
                    }
                }
            }
        }
Esempio n. 2
0
        public void HandleSchemaResponse(Broker broker, IDecoder decoder, long sequence)
        {
            short       kind     = decoder.ReadUint8();
            ClassKey    classKey = new ClassKey(decoder);
            SchemaClass sClass   = new SchemaClass(kind, classKey, decoder, this);

            lock (LockObject) {
                Dictionary <string, SchemaClass> classMappings = Packages[sClass.PackageName];
                classMappings.Remove(sClass.ClassKeyString);
                classMappings.Add(sClass.ClassKeyString, sClass);
            }

            SequenceManager.Release(sequence);
            broker.DecrementOutstanding();
            if (Console != null)
            {
                this.Console.NewClass(kind, classKey);
            }
        }
Esempio n. 3
0
		public void HandleSchemaResponse(Broker broker, IDecoder decoder, long sequence) {
			short kind = decoder.ReadUint8() ;	
			ClassKey classKey = new ClassKey(decoder) ;
			SchemaClass sClass = new SchemaClass(kind, classKey, decoder, this) ;				
			lock(LockObject) {
				Dictionary<string, SchemaClass> classMappings = Packages[sClass.PackageName] ;
				classMappings.Remove(sClass.ClassKeyString) ;
				classMappings.Add(sClass.ClassKeyString, sClass) ;
			}
			
			SequenceManager.Release(sequence) ;
			broker.DecrementOutstanding() ;
			if (Console != null) {
				this.Console.NewClass(kind, classKey) ;
			}	
		}	
Esempio n. 4
0
		public void HandleCommandComplete(Broker broker, IDecoder decoder, long sequence) {
		
			long code = decoder.ReadUint32() ;
			string text = decoder.ReadStr8() ;
			Object context = this.SequenceManager.Release(sequence) ;
			
			if (context.Equals(CONTEXT_STARTUP)) {
				broker.DecrementOutstanding() ;
			} else {
			 	if ((context.Equals(CONTEXT_SYNC)) & broker.GetSyncInFlight()) {
					broker.SetSyncInFlight(false) ;
				} else {
					if (context.Equals(CONTEXT_MULTIGET) && SyncSequenceList.Contains(sequence)) {
						lock(LockObject) {
							SyncSequenceList.Remove(sequence) ;
							if (SyncSequenceList.Count == 0) {
								Monitor.PulseAll(LockObject) ;
							}
						}
					}
				}
			}
		}