コード例 #1
0
ファイル: SocketMessage.cs プロジェクト: cwillison94/sar-tool
        public SocketMessage(XML.Reader reader)
        {
            try
            {
                if (reader.NodeType != XmlNodeType.Element) throw new XmlException("SocketMessage Element Required");
                if (reader.Name != "SocketMessage") throw new XmlException("SocketMessage Element Required");

                this.id = reader.GetAttributeLong("id");
                this.command = reader.GetAttributeString("command");
                this.member = reader.GetAttributeString("member");
                this.fromID = reader.GetAttributeLong("from");
                this.toID = reader.GetAttributeLong("to");
                long length = reader.GetAttributeLong("len");
                this.timestamp = reader.GetAttributeTimestamp("timestamp");
                if (length > 0) reader.Read();
                this.data = reader.Value;
            }
            catch (Exception)
            {

            }
        }
コード例 #2
0
ファイル: HttpServer.cs プロジェクト: cwillison94/sar-tool
        public HttpServer(XML.Reader reader)
        {
            if (reader != null) this.Deserialize(reader);

            this.Start();
        }
コード例 #3
0
ファイル: HttpServer.cs プロジェクト: cwillison94/sar-tool
        private void Deserialize(XML.Reader reader)
        {
            try
            {
                string elementName = reader.Name;
                while (reader.Read() && (reader.NodeType != XmlNodeType.EndElement || reader.Name != elementName))
                {
                    if (reader.NodeType == XmlNodeType.Element)
                    {
                        switch (reader.Name)
                        {
                            case "port":
                                this.port = (int)reader.GetValueLong();
                                break;

                            case "wwwroot":
                                this.root =  reader.GetValueString();
                                this.root = Path.GetFullPath(this.root);
                                break;
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                Base.Program.Log(ex);
            }
        }
コード例 #4
0
ファイル: HttpServer.cs プロジェクト: cwillison94/sar-tool
 public void Serialize(XML.Writer writer)
 {
     writer.WriteStartElement("http-server");
     writer.WriteElement("port", this.port);
     writer.WriteElement("wwwroot", this.root);
     writer.WriteEndElement();
 }
コード例 #5
0
ファイル: Configuration.cs プロジェクト: cwillison94/sar-tool
 protected abstract void Serialize(XML.Writer writer);
コード例 #6
0
ファイル: Configuration.cs プロジェクト: cwillison94/sar-tool
 protected abstract void Deserialize(XML.Reader reader);
コード例 #7
0
ファイル: SocketMessage.cs プロジェクト: cwillison94/sar-tool
        public void Serialize(XML.Writer writer)
        {
            writer.WriteStartElement("SocketMessage");
            writer.WriteAttributeString("id", this.id);
            writer.WriteAttributeString("command", this.command);
            writer.WriteAttributeString("member", this.member);
            writer.WriteAttributeString("from", this.fromID);
            writer.WriteAttributeString("to", this.toID);
            writer.WriteAttributeString("timestamp", this.timestamp);

            if (String.IsNullOrEmpty(this.data))
            {
                writer.WriteAttributeString("len", 0);
                writer.WriteValue("");
            }
            else
            {
                writer.WriteAttributeString("len", this.data.Length);
                writer.WriteValue(this.data);
            }

            writer.WriteEndElement();		// SocketMessage
        }