static void Main() { BusConfiguration busConfiguration = new BusConfiguration(); busConfiguration.EndpointName("Samples.FullDuplex.Client"); busConfiguration.UseSerialization <JsonSerializer>(); busConfiguration.UsePersistence <InMemoryPersistence>(); busConfiguration.EnableInstallers(); using (IStartableBus bus = Bus.Create(busConfiguration)) { bus.Start(); Console.WriteLine("Press 'Enter' to send a message.To exit, Ctrl + C"); #region ClientLoop while (Console.ReadLine() != null) { Guid g = Guid.NewGuid(); Console.WriteLine("Requesting to get data by id: {0}", g.ToString("N")); RequestDataMessage message = new RequestDataMessage { DataId = g, String = "<node>it's my \"node\" & i like it<node>" }; bus.Send("Samples.FullDuplex.Server", message); } #endregion } }
static async Task Main() { // Create service collection ServiceCollection serviceCollection = new ServiceCollection(); ConfigureServices(serviceCollection); Console.Title = "Samples.FullDuplex.Client"; LogManager.Use <DefaultFactory>() .Level(LogLevel.Info); EndpointConfiguration endpointConfiguration = ConfigureNSB(serviceCollection); var endpointInstance = await Endpoint.Start(endpointConfiguration) .ConfigureAwait(false); while (true) { var guid = Guid.NewGuid(); Console.WriteLine($"Requesting to get data by id: {guid:N}"); var message = new RequestDataMessage { DataId = guid, String = "String property value" }; await endpointInstance.Send("Samples.FullDuplex.Server", message) .ConfigureAwait(false); // Sleep as long as you need. Thread.Sleep(1000); } }
static void Main() { var busConfiguration = new BusConfiguration(); busConfiguration.EndpointName("Sample.RequestResponse.Client"); busConfiguration.UseSerialization <JsonSerializer>(); if (Debugger.IsAttached) { // For production use please select a durable persistence and script installers busConfiguration.UsePersistence <InMemoryPersistence>(); busConfiguration.EnableInstallers(); } using (var bus = Bus.Create(busConfiguration)) { bus.Start(); Console.WriteLine("Press 'Enter' to send a message.To exit, Ctrl + C"); while (Console.ReadLine() != null) { var g = Guid.NewGuid(); Console.WriteLine("=========================================================================="); Console.WriteLine("Requesting to get data by id: {0}", g.ToString("N")); var message = new RequestDataMessage { DataId = g, String = "<node>it's my \"node\" & i like it<node>" }; bus.Send("Samples.DataBus.Server", message); } } }
static void Main() { BusConfiguration busConfiguration = new BusConfiguration(); busConfiguration.EndpointName("Samples.FullDuplex.Client"); busConfiguration.UseSerialization<JsonSerializer>(); busConfiguration.UsePersistence<InMemoryPersistence>(); busConfiguration.EnableInstallers(); using (IBus bus = Bus.Create(busConfiguration).Start()) { Console.WriteLine("Press 'Enter' to send a message.To exit, Ctrl + C"); #region ClientLoop while (Console.ReadLine() != null) { Guid g = Guid.NewGuid(); Console.WriteLine("Requesting to get data by id: {0}", g.ToString("N")); RequestDataMessage message = new RequestDataMessage { DataId = g, String = "<node>it's my \"node\" & i like it<node>" }; bus.Send("Samples.FullDuplex.Server", message); } #endregion } }
public string MakeRequest(RequestDataMessage requestMessage, int discoveryTimeout) { var dataAgent = new DataAgent(); string data = dataAgent.MakeRequest(requestMessage, ProxyEndPoint, "SECRET"); return(data); }
public string MakeRequest(RequestDataMessage requestMessage, IPEndPoint dataSourceEndPoint, string nodeId) { #if DEBUG Console.Out.WriteLine($"[Node ID {nodeId}] Making data request to the maven node [ {dataSourceEndPoint} ]"); #endif // Establish connection to the remote node var tcpClient = new TcpClient(); tcpClient.Connect(dataSourceEndPoint.Address, dataSourceEndPoint.Port); Socket socket = tcpClient.Client; #if DEBUG Console.Out.WriteLine($"[Node ID {nodeId}] Successfully connected to [ {dataSourceEndPoint} ]"); #endif // Prepare request message to be sent string requestMessageXml = requestMessage.SerializeToXml(); #if DEBUG Console.Out.WriteLine($"[Node ID {nodeId}] Sending XML request"); Console.Out.WriteLine(requestMessageXml); #endif byte[] dataToBeSent = requestMessageXml.ToUtf8EncodedByteArray(); // Send request message socket.Send(dataToBeSent); #if DEBUG Console.Out.WriteLine($"[Node ID {nodeId}] Message sent successfully"); #endif // Receive meta-data response #if DEBUG Console.Out.WriteLine($"[Node ID {nodeId}] Receiving data"); #endif byte[] buffer = new byte[Common.UnicastBufferSize]; int bytesRead = socket.Receive(buffer); byte[] binaryHeader = buffer.Take(bytesRead).ToArray(); string header = binaryHeader.ToUtf8String(); long payloadSize = Convert.ToInt64(header); Console.Out.WriteLine($"[Node ID {nodeId}] The payload size is [ {payloadSize} ] bytes."); byte[] ackBuffer = payloadSize.ToString().ToUtf8EncodedByteArray(); socket.Send(ackBuffer); // Get Payload Data from maven string data = RetrieveDataPayloadFromMaven(socket, payloadSize); tcpClient.Close(); return(data); }
public string MakeRequest(RequestDataMessage requestMessage, int discoveryTimeout) { // Why not in constructor? Because preferred IP address can be changed be SO before MakeRequest() is called. _clientLocalIpAddress = Dns.GetHostAddresses(Dns.GetHostName()).FirstOrDefault(); IPEndPoint mavenEndPoint = GetMavenEndPoint(discoveryTimeout); // Retrieve data from the maven node string data = new DataAgent().MakeRequest(requestMessage, mavenEndPoint, "SECRET"); return(data); }
static async Task Main() { Console.Title = "Samples.FullDuplex.Client"; LogManager.Use <DefaultFactory>() .Level(LogLevel.Info); var endpointConfiguration = new EndpointConfiguration("Samples.FullDuplex.Client"); endpointConfiguration.UsePersistence <LearningPersistence>(); var transport = endpointConfiguration.UseTransport <AzureServiceBusTransport>(); transport.ConnectionString("Endpoint=sb://authoring-local-servicebus-john.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=g1QjzVL+aYL7QuDNNDsF/eZIXmdAfnWYRIhyXM2vsF0="); var endpointInstance = await Endpoint.Start(endpointConfiguration) .ConfigureAwait(false); Console.WriteLine("Press enter to send a message"); Console.WriteLine("Press any other key to exit"); #region ClientLoop while (true) { var key = Console.ReadKey(); Console.WriteLine(); if (key.Key != ConsoleKey.Enter) { break; } var guid = Guid.NewGuid(); Console.WriteLine($"Requesting to get data by id: {guid:N}"); string[] teamMembers = { "John", "Rishabh", "Paul", "Neel", "Rupesh", "Stacy", "Helen", "Viswa", "Prem", "Venkat", "Durga" }; Random rnd = new Random(); var index = rnd.Next(11); var message = new RequestDataMessage { DataId = guid, Sender = teamMembers[index] }; await endpointInstance.Send("Samples.FullDuplex.Server", message).ConfigureAwait(false); } #endregion await endpointInstance.Stop().ConfigureAwait(false); }
static async Task AsyncMain() { Console.Title = "Samples.FullDuplex.Client"; LogManager.Use <DefaultFactory>() .Level(LogLevel.Info); var endpointConfiguration = new EndpointConfiguration("Samples.FullDuplex.Client"); endpointConfiguration.UseSerialization <JsonSerializer>(); endpointConfiguration.UsePersistence <InMemoryPersistence>(); endpointConfiguration.EnableInstallers(); endpointConfiguration.SendFailedMessagesTo("error"); var endpointInstance = await Endpoint.Start(endpointConfiguration) .ConfigureAwait(false); try { Console.WriteLine("Press enter to send a message"); Console.WriteLine("Press any key to exit"); #region ClientLoop while (true) { var key = Console.ReadKey(); Console.WriteLine(); if (key.Key != ConsoleKey.Enter) { return; } var guid = Guid.NewGuid(); Console.WriteLine($"Requesting to get data by id: {guid.ToString("N")}"); var message = new RequestDataMessage { DataId = guid, String = "String property value" }; await endpointInstance.Send("Samples.FullDuplex.Server", message) .ConfigureAwait(false); } #endregion } finally { await endpointInstance.Stop() .ConfigureAwait(false); } }
public async Task <ActionResult <string> > BigMessage() { var guid = Guid.NewGuid(); var message = new RequestDataMessage { DataId = guid, String = RandomString(256000, false) }; await _messageSession.Send(message) .ConfigureAwait(false); return(guid.ToString()); }
public async Task <ActionResult <string> > Post() { var guid = Guid.NewGuid(); var message = new RequestDataMessage { DataId = guid, String = "String property value" }; await _messageSession.Send(message) .ConfigureAwait(false); return(guid.ToString()); }
public void MakeRequest(string dataType, string dataFormat, string filterCondition, string orderingCondition, int discoveryTimeout) { var requestMessage = new RequestDataMessage { DataFormat = dataFormat, Propagation = 1, DataType = dataType, FilterCondition = filterCondition, OrderingCondition = orderingCondition }; ReceivedData = CommunicationMediator.MakeRequest(requestMessage, discoveryTimeout); }
static async Task AsyncMain() { LogManager.Use <DefaultFactory>() .Level(LogLevel.Info); BusConfiguration busConfiguration = new BusConfiguration(); busConfiguration.EndpointName("Samples.FullDuplex.Client"); busConfiguration.UseSerialization <JsonSerializer>(); busConfiguration.UsePersistence <InMemoryPersistence>(); busConfiguration.EnableInstallers(); busConfiguration.SendFailedMessagesTo("error"); IEndpointInstance endpoint = await Endpoint.Start(busConfiguration); try { IBusContext busContext = endpoint.CreateBusContext(); Console.WriteLine("Press enter to send a message"); Console.WriteLine("Press any key to exit"); #region ClientLoop while (true) { ConsoleKeyInfo key = Console.ReadKey(); Console.WriteLine(); if (key.Key != ConsoleKey.Enter) { return; } Guid guid = Guid.NewGuid(); Console.WriteLine("Requesting to get data by id: {0}", guid.ToString("N")); RequestDataMessage message = new RequestDataMessage { DataId = guid, String = "String property value" }; await busContext.Send("Samples.FullDuplex.Server", message); } #endregion } finally { await endpoint.Stop(); } }
static async Task AsyncMain() { LogManager.Use<DefaultFactory>() .Level(LogLevel.Info); BusConfiguration busConfiguration = new BusConfiguration(); busConfiguration.EndpointName("Samples.FullDuplex.Client"); busConfiguration.UseSerialization<JsonSerializer>(); busConfiguration.UsePersistence<InMemoryPersistence>(); busConfiguration.EnableInstallers(); busConfiguration.SendFailedMessagesTo("error"); IEndpointInstance endpoint = await Endpoint.Start(busConfiguration); try { IBusSession busSession = endpoint.CreateBusSession(); Console.WriteLine("Press enter to send a message"); Console.WriteLine("Press any key to exit"); #region ClientLoop while (true) { ConsoleKeyInfo key = Console.ReadKey(); Console.WriteLine(); if (key.Key != ConsoleKey.Enter) { return; } Guid guid = Guid.NewGuid(); Console.WriteLine("Requesting to get data by id: {0}", guid.ToString("N")); RequestDataMessage message = new RequestDataMessage { DataId = guid, String = "String property value" }; await busSession.Send("Samples.FullDuplex.Server", message); } #endregion } finally { await endpoint.Stop(); } }
static async Task Main() { //required to prevent possible occurrence of .NET Core issue https://github.com/dotnet/coreclr/issues/12668 Thread.CurrentThread.CurrentUICulture = new CultureInfo("en-US"); Thread.CurrentThread.CurrentCulture = new CultureInfo("en-US"); Console.Title = "Samples.FullDuplex.Client"; LogManager.Use <DefaultFactory>() .Level(LogLevel.Info); var endpointConfiguration = new EndpointConfiguration("Samples.FullDuplex.Client"); endpointConfiguration.UsePersistence <LearningPersistence>(); endpointConfiguration.UseTransport <LearningTransport>(); var endpointInstance = await Endpoint.Start(endpointConfiguration) .ConfigureAwait(false); Console.WriteLine("Press enter to send a message"); Console.WriteLine("Press any key to exit"); #region ClientLoop while (true) { var key = Console.ReadKey(); Console.WriteLine(); if (key.Key != ConsoleKey.Enter) { break; } var guid = Guid.NewGuid(); Console.WriteLine($"Requesting to get data by id: {guid:N}"); var message = new RequestDataMessage { DataId = guid, String = "String property value" }; await endpointInstance.Send("Samples.FullDuplex.Server", message) .ConfigureAwait(false); } #endregion await endpointInstance.Stop() .ConfigureAwait(false); }
static async Task Main() { // Create service collection ServiceCollection serviceCollection = new ServiceCollection(); ConfigureServices(serviceCollection); //Set console title Console.Title = configuration.GetValue <string>("EndpointName"); //Configure logging LogManager.Use <DefaultFactory>() .Level(LogLevel.Info); log = LogManager.GetLogger <Program>(); //Configure NSB Endpoint EndpointConfiguration endpointConfiguration = ConfigureNSB(serviceCollection); //Start NSB Endpoint EndpointInstance = await Endpoint.Start(endpointConfiguration); //Support Graceful Shut Down of NSB Endpoint in PCF AppDomain.CurrentDomain.ProcessExit += CurrentDomain_ProcessExit; log.Info("ENDPOINT READY"); while (true) { var guid = Guid.NewGuid(); log.Info($"Requesting to get data by id: {guid:N}"); //create a message var message = new RequestDataMessage { DataId = guid, String = EndpointId.ToString() }; //Send a message to a specific queue await EndpointInstance.Send("Samples.AzureServiceBus.EndpointB", message); // Sleep as long as you need. Thread.Sleep(1000); } }
static void Main() { Console.Title = "Samples.FullDuplex.Client"; Configure configure = Configure.With(); configure.Log4Net(); configure.DefineEndpointName("Samples.FullDuplex.Client"); configure.DefaultBuilder(); configure.MsmqTransport(); configure.InMemorySagaPersister(); configure.RunTimeoutManagerWithInMemoryPersistence(); configure.InMemorySubscriptionStorage(); configure.JsonSerializer(); using (IStartableBus startableBus = configure.UnicastBus().CreateBus()) { IBus bus = startableBus .Start(() => configure.ForInstallationOn <Windows>().Install()); Console.WriteLine("Press enter to send a message"); Console.WriteLine("Press any key to exit"); #region ClientLoop while (true) { ConsoleKeyInfo key = Console.ReadKey(); Console.WriteLine(); if (key.Key != ConsoleKey.Enter) { return; } Guid guid = Guid.NewGuid(); Console.WriteLine("Requesting to get data by id: {0}", guid.ToString("N")); RequestDataMessage message = new RequestDataMessage { DataId = guid, String = "String property value" }; bus.Send("Samples.FullDuplex.Server", message); } #endregion } }
public async Task <IActionResult> Callback() { var guid = Guid.NewGuid(); var message = new RequestDataMessage { DataId = guid, String = "String property value" }; var response = await _messageSession.Request <DataResponseMessage>(message) .ConfigureAwait(false); return(new OkObjectResult(new { RequestId = guid, ResponseId = response.Id, })); }
static void Main() { Console.Title = "Samples.FullDuplex.Client"; Configure configure = Configure.With(); configure.Log4Net(); configure.DefineEndpointName("Samples.FullDuplex.Client"); configure.DefaultBuilder(); configure.MsmqTransport(); configure.InMemorySagaPersister(); configure.RunTimeoutManagerWithInMemoryPersistence(); configure.InMemorySubscriptionStorage(); configure.JsonSerializer(); using (IStartableBus startableBus = configure.UnicastBus().CreateBus()) { IBus bus = startableBus .Start(() => configure.ForInstallationOn<Windows>().Install()); Console.WriteLine("Press enter to send a message"); Console.WriteLine("Press any key to exit"); #region ClientLoop while (true) { ConsoleKeyInfo key = Console.ReadKey(); Console.WriteLine(); if (key.Key != ConsoleKey.Enter) { return; } Guid guid = Guid.NewGuid(); Console.WriteLine("Requesting to get data by id: {0}", guid.ToString("N")); RequestDataMessage message = new RequestDataMessage { DataId = guid, String = "String property value" }; bus.Send("Samples.FullDuplex.Server", message); } #endregion } }
static async Task AsyncMain() { Console.Title = "Samples.FullDuplex.Client"; LogManager.Use <DefaultFactory>() .Level(LogLevel.Info); var endpointConfiguration = new EndpointConfiguration("Samples.FullDuplex.Client"); endpointConfiguration.UsePersistence <LearningPersistence>(); endpointConfiguration.UseTransport <LearningTransport>(); var endpointInstance = await Endpoint.Start(endpointConfiguration) .ConfigureAwait(false); Console.WriteLine("Press enter to send a message"); Console.WriteLine("Press any key to exit"); #region ClientLoop while (true) { var key = Console.ReadKey(); Console.WriteLine(); if (key.Key != ConsoleKey.Enter) { break; } var guid = Guid.NewGuid(); Console.WriteLine($"Requesting to get data by id: {guid:N}"); var message = new RequestDataMessage { DataId = guid, String = "String property value" }; await endpointInstance.Send("Samples.FullDuplex.Server", message) .ConfigureAwait(false); } #endregion await endpointInstance.Stop() .ConfigureAwait(false); }
static void Main() { Console.Title = "Samples.FullDuplex.Client"; LogManager.Use <DefaultFactory>() .Level(LogLevel.Info); BusConfiguration busConfiguration = new BusConfiguration(); busConfiguration.EndpointName("Samples.FullDuplex.Client"); busConfiguration.UseSerialization <JsonSerializer>(); busConfiguration.UsePersistence <InMemoryPersistence>(); busConfiguration.EnableInstallers(); using (IBus bus = Bus.Create(busConfiguration).Start()) { Console.WriteLine("Press enter to send a message"); Console.WriteLine("Press any key to exit"); #region ClientLoop while (true) { ConsoleKeyInfo key = Console.ReadKey(); Console.WriteLine(); if (key.Key != ConsoleKey.Enter) { return; } Guid guid = Guid.NewGuid(); Console.WriteLine("Requesting to get data by id: {0}", guid.ToString("N")); RequestDataMessage message = new RequestDataMessage { DataId = guid, String = "String property value" }; bus.Send("Samples.FullDuplex.Server", message); } #endregion } }
static void Handle(RequestDataMessage message, IBus client) { //try to uncomment the line below to see the error handling in action // * lightrwail will retry the configured number of times // * when the max retries is reached the message will be given to the faultmanager (in memory in this case) //throw new Exception("Database connection lost"); Console.WriteLine("Received request {0}.", message.DataId); Console.WriteLine("String received: {0}.", message.String); DataResponseMessage response = new DataResponseMessage { DataId = message.DataId, String = message.String }; client.OutgoingHeaders["MyCustomHeader"] = Guid.NewGuid().ToString(); client.Send(response, client.CurrentMessageContext[StandardHeaders.ReplyToAddress]); }
static void Main() { Console.Title = "Samples.FullDuplex.Client"; LogManager.Use<DefaultFactory>() .Level(LogLevel.Info); BusConfiguration busConfiguration = new BusConfiguration(); busConfiguration.EndpointName("Samples.FullDuplex.Client"); busConfiguration.UseSerialization<JsonSerializer>(); busConfiguration.UsePersistence<InMemoryPersistence>(); busConfiguration.EnableInstallers(); using (IBus bus = Bus.Create(busConfiguration).Start()) { Console.WriteLine("Press enter to send a message"); Console.WriteLine("Press any key to exit"); #region ClientLoop while (true) { ConsoleKeyInfo key = Console.ReadKey(); Console.WriteLine(); if (key.Key != ConsoleKey.Enter) { return; } Guid guid = Guid.NewGuid(); Console.WriteLine("Requesting to get data by id: {0}", guid.ToString("N")); RequestDataMessage message = new RequestDataMessage { DataId = guid, String = "String property value" }; bus.Send("Samples.FullDuplex.Server", message); } #endregion } }
static void Main(string[] args) { var config = new LightRailConfiguration(); config.AddAssemblyToScan(typeof(Program).Assembly); config.AddAssemblyToScan(typeof(RequestDataMessage).Assembly); config.UseTransport <ServiceBrokerMessageTransport, ServiceBrokerMessageTransportConfiguration>(); config.TransportConfigurationAs <ServiceBrokerMessageTransportConfiguration>().ServiceBrokerConnectionString = "server=localhost;database=servicebus;integrated security=true;"; config.TransportConfigurationAs <ServiceBrokerMessageTransportConfiguration>().ServiceBrokerQueue = "SamplesFullDuplexClient"; config.TransportConfigurationAs <ServiceBrokerMessageTransportConfiguration>().ServiceBrokerService = "SamplesFullDuplexClient"; //LogManager.Use<DefaultFactory>() // .Level(LogLevel.Info); var client = config.CreateBus().Start(); Console.WriteLine("Press enter to send a message"); Console.WriteLine("Press any key to exit"); while (true) { ConsoleKeyInfo key = Console.ReadKey(); Console.WriteLine(); if (key.Key != ConsoleKey.Enter) { return; } var guid = Guid.NewGuid(); Console.WriteLine("Requesting to get data by id: {0}", guid.ToString("N")); RequestDataMessage message = new RequestDataMessage { DataId = guid, String = "<node>it's my \"node\" & i like it<node>" }; client.Send(message, "SamplesFullDuplexServer"); } }
static void Main(string[] args) { var config = new LightRailConfiguration(); config.AddAssemblyToScan(typeof(Program).Assembly); config.AddAssemblyToScan(typeof(RequestDataMessage).Assembly); config.UseTransport<ServiceBrokerMessageTransport, ServiceBrokerMessageTransportConfiguration>(); config.TransportConfigurationAs<ServiceBrokerMessageTransportConfiguration>().ServiceBrokerConnectionString = "server=localhost;database=servicebus;integrated security=true;"; config.TransportConfigurationAs<ServiceBrokerMessageTransportConfiguration>().ServiceBrokerQueue = "SamplesFullDuplexClient"; config.TransportConfigurationAs<ServiceBrokerMessageTransportConfiguration>().ServiceBrokerService = "SamplesFullDuplexClient"; //LogManager.Use<DefaultFactory>() // .Level(LogLevel.Info); var client = config.CreateBus().Start(); Console.WriteLine("Press enter to send a message"); Console.WriteLine("Press any key to exit"); while (true) { ConsoleKeyInfo key = Console.ReadKey(); Console.WriteLine(); if (key.Key != ConsoleKey.Enter) { return; } var guid = Guid.NewGuid(); Console.WriteLine("Requesting to get data by id: {0}", guid.ToString("N")); RequestDataMessage message = new RequestDataMessage { DataId = guid, String = "<node>it's my \"node\" & i like it<node>" }; client.Send(message, "SamplesFullDuplexServer"); } }
public DSLProcessor(RequestDataMessage requestDataMessage) { _filterCondition = requestDataMessage.FilterCondition; _orderingCondition = requestDataMessage.OrderingCondition; _propagation = requestDataMessage.Propagation; }
public DSLConverter(RequestDataMessage requestDataMessage) { _dataFormat = requestDataMessage.DataFormat; }