Esempio n. 1
0
        // GET: Publish
        public ActionResult Subscribes()
        {
            var cfp = new ContextFactoryProperties()
            {
                SolClientLogLevel = SolLogLevel.Warning
            };

            cfp.LogToConsoleError();

            ContextFactory.Instance.Init(cfp);

            try
            {
                // Context must be created first
                using (IContext context = ContextFactory.Instance.CreateContext(new ContextProperties(), null))
                {
                    // Create the application
                    TopicSubscriber topicSubscriber = new TopicSubscriber(_vpnName, _userName, _password);

                    // Run the application within the context and against the host
                    topicSubscriber.Run(context, _host);
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine("Exception thrown: {0}", ex.Message);
            }
            finally
            {
                // Dispose Solace Systems Messaging API
                ContextFactory.Instance.Cleanup();
            }

            return(View());
        }
Esempio n. 2
0
        private static void Connect()
        {
            ContextFactoryProperties cfp = new ContextFactoryProperties();

            cfp.SolClientLogLevel = SolLogLevel.Warning;
            cfp.LogToConsoleError();
            ContextFactory.Instance.Init(cfp);

            SessionProperties sessionProps = new SessionProperties();

            sessionProps.Host             = "tcp://mr4yqbkp31ewl.messaging.solace.cloud:20992";
            sessionProps.VPNName          = "msgvpn-9xboqhaaj7p";
            sessionProps.UserName         = "******";
            sessionProps.Password         = "******";
            sessionProps.ReconnectRetries = 3;

            IContext context = ContextFactory.Instance.CreateContext(new ContextProperties(), null);

            session = context.CreateSession(sessionProps, HandleMessage, HandleSession);

            try
            {
                ReturnCode returnCode = session.Connect();
                if (returnCode == ReturnCode.SOLCLIENT_OK)
                {
                    MyNickName = "Peppe";
                    session.Subscribe(ContextFactory.Instance.CreateTopic("test"), true);
                    MessageBox.Show("Yes");
                }
            }
            catch (OperationErrorException ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
        static void Main(string[] args)
        {
            if (args.Length < 3)
            {
                Console.WriteLine("Usage: TopicPublisher <host> <username>@<vpnname> <password>");
                Environment.Exit(1);
            }

            string[] split = args[1].Split('@');
            if (split.Length != 2)
            {
                Console.WriteLine("Usage: TopicPublisher <host> <username>@<vpnname> <password>");
                Environment.Exit(1);
            }

            string host     = args[0]; // Solace messaging router host name or IP address
            string username = split[0];
            string vpnname  = split[1];
            string password = args[2];

            // Initialize Solace Systems Messaging API with logging to console at Warning level
            ContextFactoryProperties cfp = new ContextFactoryProperties()
            {
                SolClientLogLevel = SolLogLevel.Warning
            };

            cfp.LogToConsoleError();
            ContextFactory.Instance.Init(cfp);

            try
            {
                // Context must be created first
                using (IContext context = ContextFactory.Instance.CreateContext(new ContextProperties(), null))
                {
                    // Create the application
                    TopicPublisher topicPublisher = new TopicPublisher()
                    {
                        VPNName  = vpnname,
                        UserName = username,
                        Password = password
                    };

                    // Run the application within the context and against the host
                    topicPublisher.Run(context, host);
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine("Exception thrown: {0}", ex.Message);
                Console.ReadKey();
            }
            finally
            {
                // Dispose Solace Systems Messaging API
                ContextFactory.Instance.Cleanup();
            }
            Console.WriteLine("Finished.");
            Console.ReadKey();
        }
        static void Main(string[] args)
        {
            Console.WriteLine("Solace Systems Messaging API Tutorial, Copyright 2008-2015 Solace Systems, Inc.");

            if ((args.Length < 1) || string.IsNullOrWhiteSpace(args[0]))
            {
                Console.WriteLine("Please provide a parameter: non-empty value for the Solace messaging router host name or IP address, e.g. \"QueueConsumer 192.168.1.111\"");
                Environment.Exit(1);
            }

            string host = args[0];                     // Solace messaging router host name or IP address

            const string defaultVPNName  = "default";  // Solace messaging router VPN name
            const string defaultUsername = "******"; // client username on the Solace messaging router VPN

            // Initialize Solace Systems Messaging API with logging to console at Warning level
            ContextFactoryProperties cfp = new ContextFactoryProperties()
            {
                SolClientLogLevel = SolLogLevel.Warning
            };

            cfp.LogToConsoleError();
            ContextFactory.Instance.Init(cfp);

            try
            {
                // Context must be created first
                using (IContext context = ContextFactory.Instance.CreateContext(new ContextProperties(), null))
                {
                    // Create the application
                    using (QueueConsumer queueConsumer = new QueueConsumer()
                    {
                        VPNName = defaultVPNName,
                        UserName = defaultUsername,
                    })
                    {
                        // Run the application within the context and against the host
                        queueConsumer.Run(context, host);
                    }
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine("Exception thrown: {0}", ex.Message);
            }
            finally
            {
                // Dispose Solace Systems Messaging API
                ContextFactory.Instance.Cleanup();
            }
            Console.WriteLine("Finished.");
        }
Esempio n. 5
0
        /// <summary>
        /// Initializes the API context with a given log level
        /// </summary>
        /// <param name="logLevel"></param>
        public virtual void InitContext(SolLogLevel logLevel)
        {
            ContextFactoryProperties cfp = new ContextFactoryProperties();

            // Set log level.
            cfp.SolClientLogLevel = logLevel;
            // Log errors to console.
            cfp.LogToConsoleError();
            // Must init the API before using any of its artifacts.
            ContextFactory.Instance.Init(cfp);
            // Now we can print the version, after ContextFactory.Instance.Init()
            PrintVersion();
        }
Esempio n. 6
0
        public void connect2Solace()
        {
            Console.WriteLine("In connect2Solace");
            ContextFactoryProperties cfp = new ContextFactoryProperties();

            // Set log level.
            cfp.SolClientLogLevel = SolLogLevel.Warning;
            // Log errors to console.
            cfp.LogToConsoleError();
            // Must init the API before using any of its artifacts.
            ContextFactory.Instance.Init(cfp);
            ContextProperties contextProps = new ContextProperties();
            SessionProperties sessionProps = new SessionProperties();

            /******** Delete This ***********/
            sHost     = "54.219.47.90";
            sUserName = "******";
            sPassword = "******";
            sVPNName  = "default";
            /********************************/
            sessionProps.Host     = sHost;
            sessionProps.UserName = sUserName;
            sessionProps.Password = sPassword;
            sessionProps.SSLValidateCertificate = false;
            sessionProps.VPNName = sVPNName;

            //Connection retry logic
            sessionProps.ConnectRetries              = 3;    //-1 means try to connect forever.
            sessionProps.ConnectTimeoutInMsecs       = 5000; //10 seconds
            sessionProps.ReconnectRetries            = 3;    //-1 means try to reconnect forever.
            sessionProps.ReconnectRetriesWaitInMsecs = 5000; //wait for 5 seconds before retry

            // Compression is set as a number from 0-9, where 0 means "disable
            // compression", and 9 means max compression. The default is no
            // compression.
            // Selecting a non-zero compression level auto-selects the
            // compressed SMF port on the appliance, as long as no SMF port is
            // explicitly specified.
            //sessionProps.CompressionLevel = 9;

            #region Create the Context

            context = ContextFactory.Instance.CreateContext(contextProps, null);

            #endregion

            #region Create and connect the Session
            session = context.CreateSession(sessionProps, null, null);
            session.Connect();
            #endregion
        }
Esempio n. 7
0
        static void Main(string[] args)
        {
            if (args.Length < 3)
            {
                Console.WriteLine("Usage: TopicPublisher <host> <username>@<vpnname> <password>");
                Environment.Exit(1);
            }

            string[] split = args[1].Split('@');
            if (split.Length != 2)
            {
                Console.WriteLine("Usage: TopicPublisher <host> <username>@<vpnname> <password>");
                Environment.Exit(1);
            }

            string    host     = args[0]; // Solace messaging router host name or IP address
            string    username = split[0];
            string    vpnname  = split[1];
            string    password = args[2];
            const int defaultTimeoutSeconds = 10; // request timeout

            // Initialize Solace Systems Messaging API with logging to console at Warning level
            ContextFactoryProperties cfp = new ContextFactoryProperties()
            {
                SolClientLogLevel = SolLogLevel.Warning
            };

            cfp.LogToConsoleError();
            ContextFactory.Instance.Init(cfp);

            try
            {
                // Context must be created first
                using (IContext context = ContextFactory.Instance.CreateContext(new ContextProperties(), null))
                {
                    // Create the application
                    BasicRequestor basicRequestor = new BasicRequestor()
                    {
                        VPNName        = vpnname,
                        UserName       = username,
                        Password       = password,
                        TimeoutSeconds = defaultTimeoutSeconds
                    };

                    // Run the application within the context and against the host
                    basicRequestor.Run(context, host);

                    // Write out the received reply
                    if (string.IsNullOrWhiteSpace(basicRequestor.Reply))
                    {
                        Console.WriteLine("Reply was not received in {0} seconds.", defaultTimeoutSeconds);
                    }
                    else
                    {
                        Console.WriteLine("Received reply: {0}", basicRequestor.Reply);
                    }
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine("Exception thrown: {0}", ex.Message);
            }
            finally
            {
                // Dispose Solace Systems Messaging API
                ContextFactory.Instance.Cleanup();
            }
            Console.WriteLine("Finished.");
        }
        static void Main(string[] args)
        {
            if (args.Length < 3)
            {
                Console.WriteLine("Usage: TopicPublisher <host> <username>@<vpnname> <password>");
                Trace.WriteLine("Usage: TopicPublisher <host> <username>@<vpnname> <password>");
                Environment.Exit(1);
            }

            string[] split = args[1].Split('@');
            if (split.Length != 2)
            {
                Console.WriteLine("Usage: TopicPublisher <host> <username>@<vpnname> <password>");
                Trace.WriteLine("Usage: TopicPublisher <host> <username>@<vpnname> <password>");
                Environment.Exit(1);
            }

            string host     = args[0]; // Solace messaging router host name or IP address
            string username = split[0];
            string vpnname  = split[1];
            string password = args[2];

            // Initialize Solace Systems Messaging API with logging to console at Warning level
            ContextFactoryProperties cfp = new ContextFactoryProperties()
            {
                SolClientLogLevel = SolLogLevel.Warning
            };

            cfp.LogToConsoleError();
            ContextFactory.Instance.Init(cfp);

            try
            {
                // Context must be created first
                using (IContext context = ContextFactory.Instance.CreateContext(new ContextProperties(), null))
                {
                    #region Solace
                    //host = "mr22gx8ufrq6kv.messaging.solace.cloud:20864";
                    //vpnname = "msgvpn-2pmh5qsq7h33";
                    //username = "******";
                    //password = "******";
                    #endregion

                    // Create the application
                    using (TopicSubscriber topicSubscriber = new TopicSubscriber()
                    {
                        VPNName = vpnname,
                        UserName = username,
                        Password = password
                    })
                    {
                        // Run the application within the context and against the host
                        topicSubscriber.Run(context, host);
                    }
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine("Exception thrown: {0}", ex.Message);
                Trace.WriteLine("Exception thrown: " + ex.Message);
            }
            finally
            {
                // Dispose Solace Systems Messaging API
                ContextFactory.Instance.Cleanup();
            }
            Console.WriteLine("Finished.");
            Trace.WriteLine("Finished.");
        }
Esempio n. 9
0
        static void Main(string[] args)
        {
            if ((args.Length < 1) || string.IsNullOrWhiteSpace(args[0]))
            {
                Console.WriteLine("Please provide a parameter: non-empty value for the Solace messaging router host name or IP address, e.g. \"BasicRequestor 192.168.1.111\"");
                Environment.Exit(1);
            }

            string host = args[0];                           // Solace messaging router host name or IP address

            const string defaultVPNName        = "default";  // Solace messaging router VPN name
            const string defaultUsername       = "******"; // client username on the Solace messaging router VPN
            const int    defaultTimeoutSeconds = 10;         // request timeout

            // Initialize Solace Systems Messaging API with logging to console at Warning level
            ContextFactoryProperties cfp = new ContextFactoryProperties()
            {
                SolClientLogLevel = SolLogLevel.Warning
            };

            cfp.LogToConsoleError();
            ContextFactory.Instance.Init(cfp);

            try
            {
                // Context must be created first
                using (IContext context = ContextFactory.Instance.CreateContext(new ContextProperties(), null))
                {
                    // Create the application
                    BasicRequestor basicRequestor = new BasicRequestor()
                    {
                        VPNName        = defaultVPNName,
                        UserName       = defaultUsername,
                        TimeoutSeconds = defaultTimeoutSeconds
                    };

                    // Run the application within the context and against the host
                    basicRequestor.Run(context, host);

                    // Write out the received reply
                    if (string.IsNullOrWhiteSpace(basicRequestor.Reply))
                    {
                        Console.WriteLine("Reply was not received in {0} seconds.", defaultTimeoutSeconds);
                    }
                    else
                    {
                        Console.WriteLine("Received reply: {0}", basicRequestor.Reply);
                    }
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine("Exception thrown: {0}", ex.Message);
            }
            finally
            {
                // Dispose Solace Systems Messaging API
                ContextFactory.Instance.Cleanup();
            }
            Console.WriteLine("Finished.");
        }