Exemplo n.º 1
0
        static void Main(string[] args)
        {
            string taskXmlDir  = Path.GetFullPath("../../taskfiles");
            string taskXmlFile = "reverse.task.xml";

            XmlDocument taskXml = new XmlDocument();

            taskXml.Load(Path.Combine(taskXmlDir, taskXmlFile));

            foreach (XmlNode embeddedFile in taskXml.SelectNodes("//manifest/embedded_file | //input/embedded_file"))
            {
                XmlAttribute location = embeddedFile.Attributes["location"];
                embeddedFile.InnerText = ReadBase64EncodedFromFile(Path.Combine(taskXmlDir, location.Value));
                embeddedFile.Attributes.Remove(location);
            }
            taskXml.Save(Path.Combine(taskXmlDir, "INPUT_" + taskXmlFile));

            string taskId;

            AlchemiXPM.CrossPlatformManager proxy = new AlchemiXPM.CrossPlatformManager();
            Console.WriteLine("Submitting...");
            taskId = proxy.SubmitTask("user", "user", taskXml.OuterXml);
            Console.WriteLine("Finished submitting (taskId = '{0}').\nWait a bit and hit <Enter> to get results.", taskId);
            Console.ReadLine();

            Console.WriteLine("Getting results...");
            XmlDocument resultsXml = new XmlDocument();

            resultsXml.LoadXml(proxy.GetFinishedJobs("user", "user", taskId));
            resultsXml.Save(Path.Combine(taskXmlDir, "RESULT_" + taskXmlFile));

            foreach (XmlNode embeddedFile in resultsXml.SelectNodes("//output/embedded_file"))
            {
                WriteBase64EncodedToFile(Path.Combine(taskXmlDir, embeddedFile.Attributes["name"].Value), embeddedFile.InnerText);
                Console.WriteLine("  Wrote output file {0}", embeddedFile.Attributes["name"].Value);
            }

            Console.ReadLine();
        }
Exemplo n.º 2
0
        static void Main(string[] args)
        {
            string taskXmlDir = Path.GetFullPath("../../taskfiles");
            string taskXmlFile = "reverse.task.xml";

            XmlDocument taskXml = new XmlDocument();
            taskXml.Load(Path.Combine(taskXmlDir, taskXmlFile));

            foreach (XmlNode embeddedFile in taskXml.SelectNodes("//manifest/embedded_file | //input/embedded_file"))
            {
                XmlAttribute location = embeddedFile.Attributes["location"];
                embeddedFile.InnerText = ReadBase64EncodedFromFile(Path.Combine(taskXmlDir, location.Value));
                embeddedFile.Attributes.Remove(location);
            }
            taskXml.Save(Path.Combine(taskXmlDir, "INPUT_" + taskXmlFile));

            string taskId;

            AlchemiXPM.CrossPlatformManager proxy = new AlchemiXPM.CrossPlatformManager();
            Console.WriteLine("Submitting...");
            taskId = proxy.SubmitTask("user", "user", taskXml.OuterXml);
            Console.WriteLine("Finished submitting (taskId = '{0}').\nWait a bit and hit <Enter> to get results.", taskId);
            Console.ReadLine();

            Console.WriteLine("Getting results...");
            XmlDocument resultsXml = new XmlDocument();
            resultsXml.LoadXml(proxy.GetFinishedJobs("user", "user", taskId));
            resultsXml.Save(Path.Combine(taskXmlDir, "RESULT_" + taskXmlFile));

            foreach (XmlNode embeddedFile in resultsXml.SelectNodes("//output/embedded_file"))
            {
                WriteBase64EncodedToFile(Path.Combine(taskXmlDir, embeddedFile.Attributes["name"].Value), embeddedFile.InnerText);
                Console.WriteLine("  Wrote output file {0}", embeddedFile.Attributes["name"].Value);
            }

            Console.ReadLine();
        }