Example #1
0
        private void Client_OpenWriteCompleted(object sender, CapsBase.OpenWriteCompletedEventArgs e)
        {
            bool raiseEvent = false;

            if (!_Dead)
            {
                if (!_Running)
                {
                    raiseEvent = true;
                }

                // We are connected to the event queue
                _Running = true;
            }

            // Create an EventQueueGet request
            OSDMap request = new OSDMap();

            request["ack"]  = new OSD();
            request["done"] = OSD.FromBoolean(false);

            byte[] postData = OSDParser.SerializeLLSDXmlBytes(request);

            _Client.UploadDataAsync(_Client.Location, postData);

            if (raiseEvent)
            {
                Logger.Log.Debug("Capabilities event queue connected");

                // The event queue is starting up for the first time
                if (OnConnected != null)
                {
                    try { OnConnected(); }
                    catch (Exception ex) { Logger.Log.Error(ex.Message, ex); }
                }
            }
        }