Пример #1
0
        private void createOperator(object[] operator_info)           // Operator Info {ID, URLs, Type, InputSources, OutputSources, RoutingOption, logLevel, params}
        {
            RemotePM pm = (RemotePM)Activator.GetObject(typeof(RemotePM), "tcp://localhost:10001/RemotePM");

            pm.createOperator(operator_info);
            logTextBox.AppendText("<PuppetMaster>: Remote Operator <" + operator_info[0] + "> is up!\r\n");
        }
Пример #2
0
 private void unfreezeReplica(string op_id, int replica_id)
 {
     if (operatorExists(op_id) && replicaExists(op_id, replica_id))
     {
         RemotePM pm = (RemotePM)Activator.GetObject(typeof(RemotePM), "tcp://localhost:10001/RemotePM");
         pm.unfreezeOperator(operatorsURL[op_id][replica_id]);
         logTextBox.AppendText("<PuppetMaster>: <" + op_id + "> <" + operatorsURL[op_id][replica_id] + "> is unfreezed ;\r\n");
     }
 }
Пример #3
0
 private void statusOperators(string op_id)
 {
     if (operatorExists(op_id))
     {
         RemotePM pm = (RemotePM)Activator.GetObject(typeof(RemotePM), "tcp://localhost:10001/RemotePM");
         for (int i = 0; i < operatorsURL[op_id].Count; i++)
         {
             string state = pm.statusOperator(operatorsURL[op_id][i]);
             logTextBox.AppendText("<PuppetMaster>: <" + op_id + "> <" + operatorsURL[op_id][i] + "> status is " + state + ";\r\n");
         }
     }
 }
Пример #4
0
 private void intervalOperator(string op_id, int miliseconds)
 {
     if (operatorExists(op_id))
     {
         RemotePM pm = (RemotePM)Activator.GetObject(typeof(RemotePM), "tcp://localhost:10001/RemotePM");
         for (int i = 0; i < operatorsURL[op_id].Count; i++)
         {
             pm.intervalOperator(operatorsURL[op_id][i], miliseconds);
         }
         logTextBox.AppendText("<PuppetMaster>: <" + op_id + "> interval <" + miliseconds + ">;\r\n");
     }
 }
Пример #5
0
        private void getOperatorsResult()
        {
            RemotePM pm = (RemotePM)Activator.GetObject(typeof(RemotePM), "tcp://localhost:10001/RemotePM");

            while (true)
            {
                string[] op_res = pm.getResult();
                if (op_res != null)
                {
                    appendResult(op_res);
                }
            }
        }
Пример #6
0
 private void startOperator(string op_id)
 {
     if (operatorExists(op_id))
     {
         logTextBox.AppendText("<PuppetMaster>: <" + op_id + ">");
         RemotePM pm = (RemotePM)Activator.GetObject(typeof(RemotePM), "tcp://localhost:10001/RemotePM");
         for (int i = 0; i < operatorsURL[op_id].Count; i++)
         {
             pm.startOperator(operatorsURL[op_id][i], op_id, semantics);
             logTextBox.AppendText(" <" + operatorsURL[op_id][i] + ">");
         }
         logTextBox.AppendText(" started;\r\n");
     }
 }
Пример #7
0
 private void crashReplica(string op_id, int replica_id)
 {
     if (operatorExists(op_id) && replicaExists(op_id, replica_id))
     {
         RemotePM pm = (RemotePM)Activator.GetObject(typeof(RemotePM), "tcp://localhost:10001/RemotePM");
         pm.crashOperator(operatorsURL[op_id][replica_id]);
         logTextBox.AppendText("<PuppetMaster>: <" + op_id + "> <" + operatorsURL[op_id][replica_id] + "> crashed;\r\n");
         operatorsURL[op_id].RemoveAt(replica_id);
         if (operatorsURL[op_id].Count == 0)                  // If doesnt have any more replicas remove Operator from Dictionary
         {
             operatorsURL.Remove(op_id);
         }
     }
 }