示例#1
0
 /// <summary>
 /// Rejestracja komponentu u CS
 /// </summary>
 /// <returns></returns>
 public bool Register()
 {
     try
         {
             Register register_message = new Register(type, computational_power, problem_names);
             byte[] register_response = client.Work(register_message.GetXmlData());
             XMLParser parser = new XMLParser(register_response);
             if (parser.MessageType == MessageTypes.RegisterResponse)
             {
                 RegisterResponse register_response_msg = parser.Message as RegisterResponse;
                 id = register_response_msg.Id;
                 timeout = register_response_msg.Timeout;
                 timeout_in_ms = (timeout.Hour * 3600 + timeout.Minute * 60 + timeout.Second) * 1000 + timeout.Millisecond;
                 Console.WriteLine("Received register values: id = {0}, timeout = {1} ms", id, timeout_in_ms);
             }
             else
             {
                 Console.WriteLine("SolverNode: registration failed");
                 return false;
             }
             return true;
         }
         catch {
             Console.WriteLine("Register failure");
             return false;
         }
 }
示例#2
0
        public void RegisterToXmlTest()
        {
            //Arrange
            Register r = new Register(NodeType.ComputationalNode, 2, new List<string>() { "abc", "def"});

            //Act
            byte[] data = r.GetXmlData();

            //Assert
            Assert.IsNotNull(data);

            //Debug.WriteLine(StringToBytesConverter.GetString(data));
            Debug.WriteLine(System.Text.Encoding.UTF8.GetString(data));
        }
示例#3
0
        public void RegisterParseTest()
        {
            //Arrange
            Register register = new Register(NodeType.TaskManager, 120, new List<string>() { "abc", "def" });
            byte[] data = register.GetXmlData();

            //Act
            XMLParser parser = new XMLParser(data);

            //Assert
            Assert.IsNotNull(parser);
            Assert.AreEqual(MessageTypes.Register, parser.MessageType);
            Register result = (Register)parser.Message;
            Assert.AreEqual(result.ParallelThreads, register.ParallelThreads);
            Assert.AreEqual(result.Type, register.Type);
        }