static void Main(string[] args) { try { var fitxer = getFileFromArgs(args); IFeinesService broker = new FeinesService(); broker.Connecta(Host); broker.CreaCua(NomCua); string missatge; System.IO.StreamReader file = new System.IO.StreamReader(fitxer); while ((missatge = file.ReadLine()) != null) { Console.WriteLine(MESSAGE_SEND, DateTime.Now.ToLongTimeString(), missatge); broker.EnviaALaCua(NomCua, missatge); } file.Close(); broker.Desconnecta(); } catch (System.IO.FileNotFoundException) { Console.WriteLine(FILE_ERROR, args[0]); } catch (ApplicationException e) { Console.WriteLine(e.Message); } }
static void Main(string[] args) { IFeinesService broker = new FeinesService(); broker.Connecta(Host); string cua = broker.SubscriuABroadcast(NomExchange); Console.WriteLine(MESSAGE_WAIT); var consumer = broker.EsperaMissatge(cua); consumer.Received += (model, ea) => { var body = ea.Body; var message = Encoding.UTF8.GetString(body); Console.WriteLine("{0} Feina Acabada: {1}", DateTime.Now.ToLongTimeString(), message); }; Console.WriteLine(MESSAGE_END_PROGRAM); Console.ReadLine(); broker.Desconnecta(); }
static void Main(string[] args) { IFeinesService broker = new FeinesService(); broker.Connecta(Host); // Cua per rebre les tasques broker.CreaCua(NomCua, 1); // Cua per enviar els resultats broker.CreaBroadcast(NomExchange); Console.WriteLine(MESSAGE_WAIT); var consumer = broker.EsperaMissatge(NomCua); consumer.Received += (model, ea) => { var body = ea.Body; var message = Encoding.UTF8.GetString(body); Console.WriteLine(MESSAGE_WORK_START, DateTime.Now.ToLongTimeString(), message); // Fer veure que estem fent una tasca que dura un rato // ho fem segons els punts ... int dots = message.Split('.').Length - 1; Thread.Sleep(dots * 1000); Console.WriteLine(MESSAGE_WORK_END, DateTime.Now.ToLongTimeString()); broker.MissatgeProcessat(ea); // Notifica als espectadors broker.EnviaBroadcast(NomExchange, "Acabat: " + message); }; Console.WriteLine(MESSAGE_END_PROGRAM); Console.ReadLine(); broker.Desconnecta(); }