Exemple #1
0
        void GetRowsRequestMessageReceived(ObjectBusMessage obj)
        {
            Console.WriteLine("GetRowsRequestMessageReceived()");
            GetRowsRequestMessage  request = (GetRowsRequestMessage)obj;
            GetRowsResponseMessage response;
            Table table;

            lock (tables)
                table = (Table)psc.GetTableByID(request.TableID);
            Console.WriteLine(table.Name);
            try {
                SqlConnection conn_Rows = new SqlConnection(connectionString);
                try {
                    conn_Rows.Open();
                } catch {                                    //retry once
                    conn_Rows.Open();
                }

                SqlCommand cmdSelect = new SqlCommand(string.Format("Select * from [{0}]", table.Name), conn_Rows);
                cmdSelect.CommandTimeout *= 30;
                response = new GetRowsResponseMessage(request.ID, readRowsData(conn_Rows, cmdSelect, cmdSelect.ExecuteReader(), table), null);
            } catch (Exception ex) {
                response = new GetRowsResponseMessage(request.ID, new List <BD2.Conv.Frontend.Table.Row> (), ex);
            }
            ObjectBusSession.SendMessage(response);
            Console.WriteLine("Sent GetRowsResponseMessage.");
        }
        void ServiceRequestReceived(ObjectBusMessage message)
        {
                        #if TRACE
            Console.WriteLine(new System.Diagnostics.StackTrace(true).GetFrame(0));
                        #endif

            if (message == null)
            {
                throw new ArgumentNullException("message");
            }
            if (!(message is ServiceRequestMessage))
            {
                throw new ArgumentException(string.Format("message type is not valid, must be of type {0}", typeof(ServiceRequestMessage).FullName));
            }
            ServiceRequestMessage serviceRequest = (ServiceRequestMessage)message;
            Func <ServiceAgentMode, ObjectBusSession, Action, Byte[], ServiceAgent> agentFunc;
            lock (localServices)
                lock (localServiceAgents)
                    agentFunc = localServiceAgents [localServices [serviceRequest.ServiceID]];
            Guid                   responseID = Guid.NewGuid();
            ObjectBusSession       session    = objectBus.CreateSession(responseID, SessionDisconnected);
            ServiceResponseMessage response   = new ServiceResponseMessage(responseID, serviceRequest.ID, ServiceResponseStatus.Accepted);
            ServiceAgent           agent      = agentFunc.Invoke(ServiceAgentMode.Server, session, objectBus.Flush, serviceRequest.Parameters);
            lock (sessionAgents)
                sessionAgents.Add(session.SessionID, agent);
            objectBus.SendMessage(response);
        }
        void FileShareMessageReceived(ObjectBusMessage message)
        {
            FileShareMessage fileShareMessace = (FileShareMessage)message;

            files.Enqueue(fileShareMessace);
            mre_fileReceived.Set();
        }
Exemple #4
0
 public void SendMessage(ObjectBusMessage message)
 {
     if (message == null)
     {
         throw new ArgumentNullException("message");
     }
     ObjectBusSession.SendMessage(message);
 }
Exemple #5
0
        void RequestTopLevelChunkDeltaMessageReceived(ObjectBusMessage message)
        {
            if (message == null)
            {
                throw new ArgumentNullException("message");
            }
            TopLevelChunksRequestMessage requestTopLevelChunkDeltaMessage = (TopLevelChunksRequestMessage)message;

            pendingRemoteRequests.Enqueue(requestTopLevelChunkDeltaMessage);
        }
Exemple #6
0
        void GetRowsRequestMessageReceived(ObjectBusMessage obj)
        {
            GetRowsRequestMessage request = (GetRowsRequestMessage)obj;
            Table t;

            if (tables.TryGetValue(request.TableID, out t))
            {
            }
            else
            {
                ObjectBusSession.SendMessage(new GetRowsResponseMessage(request.ID, new List <Row>(), new KeyNotFoundException()));
            }
        }
Exemple #7
0
        void TransparentStreamMessageReceived(ObjectBusMessage objectBusMessage)
        {
            if (objectBusMessage == null)
            {
                throw new ArgumentNullException("objectBusMessage");
            }
            TransparentStreamMessageBase transparentStreamMessageBase = objectBusMessage as TransparentStreamMessageBase;

            if (transparentStreamMessageBase == null)
            {
                throw new ArgumentException("objectBusMessage must be of type TransparentStreamMessageBase", "objectBusMessage");
            }
            streams [transparentStreamMessageBase.StreamID].ResponseReceived(transparentStreamMessageBase);
        }
Exemple #8
0
        void GetTablesRequestMessageReceived(ObjectBusMessage obj)
        {
            Console.WriteLine("GetTablesRequestMessageReceived()");
            GetTablesRequestMessage  request = (GetTablesRequestMessage)obj;
            GetTablesResponseMessage response;

            try {
                response = new GetTablesResponseMessage(request.ID, (new List <Table> (getTables())).ToArray(), null);
            } catch (Exception ex) {
                response = new GetTablesResponseMessage(request.ID, new Table[0] {
                }, ex);
            }
            ObjectBusSession.SendMessage(response);
        }
Exemple #9
0
 void GetColumnsRequestMessageReceived(ObjectBusMessage obj)
 {
     Console.WriteLine ("GetColumnsRequestMessageReceived()");
     GetColumnsRequestMessage request = (GetColumnsRequestMessage)obj;
     GetColumnsResponseMessage response;
     Table table;
     try {
         lock (tables)
             table = tables [request.TableID];
         response = new GetColumnsResponseMessage (request.ID, (new List <Column> (getColumns (table.Name))).ToArray (), null);
     } catch (Exception ex) {
         response = new GetColumnsResponseMessage (request.ID, new Column[0] { }, ex);
     }
     ObjectBusSession.SendMessage (response);
 }
 void StreamPairMessageReceived(ObjectBusMessage message)
 {
                 #if TRACE
     Console.WriteLine(new System.Diagnostics.StackTrace(true).GetFrame(0));
                 #endif
     StreamPairMessage      StreamPairMessage = (StreamPairMessage)message;
     Stream                 stream            = OpenStream(StreamPairMessage.StreamID);
     System.IO.BinaryReader BR   = new BinaryReader(stream);
     byte[]                 buf  = BR.ReadBytes(BR.ReadInt32());
     byte[]                 hash = System.Security.Cryptography.SHA1.Create().ComputeHash(buf);
     for (int n = 0; n != hash.Length; n++)
     {
         Console.Write("{0:X2}", hash [n]);
     }
     Console.WriteLine();
 }
Exemple #11
0
        void GetColumnsRequestMessageReceived(ObjectBusMessage obj)
        {
            Console.WriteLine("GetColumnsRequestMessageReceived()");
            GetColumnsRequestMessage  request = (GetColumnsRequestMessage)obj;
            GetColumnsResponseMessage response;
            Table table;

            try {
                lock (tables)
                    table = tables [request.TableID];
                response = new GetColumnsResponseMessage(request.ID, (new List <Column> (getColumns(table.Name))).ToArray(), null);
            } catch (Exception ex) {
                response = new GetColumnsResponseMessage(request.ID, new Column[0] {
                }, ex);
            }
            ObjectBusSession.SendMessage(response);
        }
Exemple #12
0
 void ServiceAnnouncementReceived(ObjectBusMessage message)
 {
                 #if TRACE
     Console.WriteLine(new System.Diagnostics.StackTrace(true).GetFrame(0));
                 #endif
     if (message == null)
     {
         throw new ArgumentNullException("message");
     }
     if (!(message is ServiceAnnounceMessage))
     {
         throw new ArgumentException(string.Format("message type is not valid, must be of type {0}", typeof(ServiceAnnounceMessage).FullName));
     }
     ServiceAnnounceMessage serviceAnnouncement = (ServiceAnnounceMessage)message;
     lock (remoteServices)
         remoteServices.Add(serviceAnnouncement);
 }
Exemple #13
0
        void ServiceDestroyReceived(ObjectBusMessage message)
        {
                        #if TRACE
            Console.WriteLine(new System.Diagnostics.StackTrace(true).GetFrame(0));
                        #endif

            if (message == null)
            {
                throw new ArgumentNullException("message");
            }
            if (!(message is ServiceDestroyMessage))
            {
                throw new ArgumentException(string.Format("message type is not valid, must be of type {0}", typeof(ServiceDestroyMessage).FullName));
            }
            ServiceDestroyMessage serviceDestroy = (ServiceDestroyMessage)message;
            lock (sessionAgents)
                sessionAgents [serviceDestroy.SessionID].CallDestroyRequestReceived();
            objectBus.DestroySession(serviceDestroy);
        }
Exemple #14
0
 void ServiceResponseReceived(ObjectBusMessage message)
 {
                 #if TRACE
     Console.WriteLine(new System.Diagnostics.StackTrace(true).GetFrame(0));
                 #endif
     if (message == null)
     {
         throw new ArgumentNullException("message");
     }
     if (!(message is ServiceResponseMessage))
     {
         throw new ArgumentException(string.Format("message type is not valid, must be of type {0}", typeof(ServiceResponseMessage).FullName));
     }
     ServiceResponseMessage serviceResponse = (ServiceResponseMessage)message;
     Tuple <ServiceRequestMessage, System.Threading.ManualResetEvent, System.Threading.ManualResetEvent> requestTuple = requests [serviceResponse.RequestID];
     lock (pendingResponses)
         pendingResponses.Add(serviceResponse.RequestID, serviceResponse);
     requestTuple.Item2.Set();
     requestTuple.Item3.WaitOne();
 }
Exemple #15
0
 void GetForeignKeyRelationsRequestMessageReceived(ObjectBusMessage obj)
 {
     Console.WriteLine ("GetForeignKeyRelationsRequestMessageReceived()");
     //GetForeignKeyRelationsRequestMessage GFKRRM = (GetForeignKeyRelationsRequestMessage)obj;
     //SortedSet<ForeignKeyRelation> FKRs = new SortedSet<ForeignKeyRelation> ();
 }
Exemple #16
0
 void GetForeignKeyRelationsRequestMessageReceived(ObjectBusMessage obj)
 {
     Console.WriteLine("GetForeignKeyRelationsRequestMessageReceived()");
     //GetForeignKeyRelationsRequestMessage GFKRRM = (GetForeignKeyRelationsRequestMessage)obj;
     //SortedSet<ForeignKeyRelation> FKRs = new SortedSet<ForeignKeyRelation> ();
 }
Exemple #17
0
        void GetRowsRequestMessageReceived(ObjectBusMessage obj)
        {
            GetRowsRequestMessage request = (GetRowsRequestMessage)obj;
            Table t;

            if (tables.TryGetValue (request.TableID, out t)) {

            } else {
                ObjectBusSession.SendMessage (new GetRowsResponseMessage (request.ID, new List<Row>(), new KeyNotFoundException ()));
            }
        }
Exemple #18
0
 void GetValuesResponseMessageReceived(ObjectBusMessage obj)
 {
     throw new NotImplementedException();
 }
Exemple #19
0
        void ChatMessageReceived(ObjectBusMessage message)
        {
            ChatMessage chatMessage = (ChatMessage)message;

            Console.WriteLine(chatMessage.Text);
        }
Exemple #20
0
 void GetTablesRequestMessageReceived(ObjectBusMessage obj)
 {
     Console.WriteLine ("GetTablesRequestMessageReceived()");
     GetTablesRequestMessage request = (GetTablesRequestMessage)obj;
     GetTablesResponseMessage response;
     try {
         response = new GetTablesResponseMessage (request.ID, (new List<Table> (getTables ())).ToArray (), null);
     } catch (Exception ex) {
         response = new GetTablesResponseMessage (request.ID, new Table[0] { }, ex);
     }
     ObjectBusSession.SendMessage (response);
 }
Exemple #21
0
 public void CreateChannelRequestMessageReceived(ObjectBusMessage message)
 {
 }
Exemple #22
0
 void GetAllRequestMessageReceived(ObjectBusMessage obj)
 {
     throw new NotImplementedException();
 }
Exemple #23
0
 void ServiceManagerReadyMessageReceived(ObjectBusMessage message)
 {
     System.Threading.Thread.Sleep(100);
     RemoteReady = true;
 }
Exemple #24
0
 public void GetPublicKeyRequestMessageReceived(ObjectBusMessage message)
 {
 }