コード例 #1
0
        public void TestConsumerGroup()
        {
            string              name = "testConsumerGroupEventHub";
            string              consumerGroupName = "consumergroup1";
            NamespaceManager    ns          = NamespaceManager.CreateFromConnectionString(eventHubConnectionString);
            EventHubDescription description = ns.CreateEventHub(name);

            Assert.IsTrue(null != description);
            ConsumerGroupDescription cgDescription = ns.CreateConsumerGroup(name, consumerGroupName);

            if (!ns.ConsumerGroupExists(name, consumerGroupName, out cgDescription))
            {
                Assert.Fail("Consumer Group did not exist");
            }
            else
            {
                Assert.IsTrue(null != cgDescription);
                ns.DeleteConsumerGroup(name, consumerGroupName);
                if (ns.ConsumerGroupExists(name, consumerGroupName, out cgDescription))
                {
                    Assert.Fail("Consumer Group was not deleted");
                }

                ns.DeleteEventHub(name);
                if (ns.EventHubExists(name, out description))
                {
                    Assert.Fail("EventHub was not deleted");
                }
            }
        }
コード例 #2
0
        public void getSasKey()
        {
            try
            {
                // Create namespace manager.
                Uri              uri = ServiceBusEnvironment.CreateServiceUri("sb", serviceNamespace, string.Empty);
                TokenProvider    td  = TokenProvider.CreateSharedAccessSignatureTokenProvider(namespaceManageKeyName, namespaceManageKey);
                NamespaceManager nm  = new NamespaceManager(uri, td);

                // Create event hub with a SAS rule that enables sending to that event hub
                EventHubDescription ed = new EventHubDescription(ehubname)
                {
                    PartitionCount = 32
                };
                string eventHubSendKeyName = "EventHubSendKey";
                string eventHubSendKey     = SharedAccessAuthorizationRule.GenerateRandomKey();
                SharedAccessAuthorizationRule eventHubSendRule = new SharedAccessAuthorizationRule
                                                                     (eventHubSendKeyName, eventHubSendKey, new[] { AccessRights.Send });
                ed.Authorization.Add(eventHubSendRule);
                nm.CreateEventHub(ed);
                string resource = "insightsehub.servicebus.windows.net/" + ehubname;

                //Copy this SAS Key for use in configuring the VM Diagnostics
                string saskey = SharedAccessSignatureTokenProvider.GetSharedAccessSignature(eventHubSendKeyName,
                                                                                            eventHubSendKey, resource, TimeSpan.FromDays(365));
                Console.WriteLine("Event HUb Endpoint created");
            }
            catch (Exception ex)
            {
                Console.WriteLine("Exception " + ex.StackTrace);
            }
        }
コード例 #3
0
        public void TestParition()
        {
            string              name = "testpartitionEventHub";
            string              consumerGroupName = "consumergroup1";
            NamespaceManager    ns          = NamespaceManager.CreateFromConnectionString(eventHubConnectionString);
            EventHubDescription description = ns.CreateEventHub(name);

            Assert.IsTrue(null != description);
            ConsumerGroupDescription cgDescription = ns.CreateConsumerGroup(name, consumerGroupName);
            PartitionDescription     pd            = ns.GetEventHubPartition(name, consumerGroupName, "1");

            Assert.IsTrue(null != pd);

            ns.DeleteEventHub(name);
        }
コード例 #4
0
        private void CreateEventHub(string eventHubName, string consumerGroup)
        {
            NamespaceManager    ns = NamespaceManager.CreateFromConnectionString(Connections.EventHubConnectionString);
            EventHubDescription qd;

            if (!ns.EventHubExists(eventHubName, out qd))
            {
                ns.CreateEventHub(eventHubName);
            }

            ConsumerGroupDescription cgd;

            if (!ns.ConsumerGroupExists(eventHubName, consumerGroup, out cgd))
            {
                ns.CreateConsumerGroup(eventHubName, consumerGroup);
            }
        }
コード例 #5
0
        public void TestEventHub()
        {
            string              name        = "testEventHub";
            NamespaceManager    ns          = NamespaceManager.CreateFromConnectionString(eventHubConnectionString);
            EventHubDescription description = ns.CreateEventHub("testEventHub");

            Assert.IsTrue(null != description);

            if (!ns.EventHubExists(name, out description))
            {
                Assert.Fail("EventHub did not exist");
            }
            else
            {
                Assert.IsTrue(null != description);
                ns.DeleteEventHub(name);
                if (ns.EventHubExists(name, out description))
                {
                    Assert.Fail("EventHub was not deleted");
                }
            }
        }
        public void CreateEventHubs(Property[] inputs, RequiredProperties required, Property[] returns, MethodType methodType, ServiceObject serviceObject)
        {
            Utilities.ServiceUtilities serviceUtilities = new Utilities.ServiceUtilities(serviceBroker);
            serviceObject.Properties.InitResultTable();

            NamespaceManager    namespaceManager = null;
            EventHubDescription ReturnEventHub   = null;

            try
            {
                string eventhubpath = string.Empty;
                if (inputs.Length == 0)
                {
                    eventhubpath = serviceObject.MetaData.DisplayName;
                }
                else
                {
                    eventhubpath = inputs.Where(p => p.Name.Equals("eventhub")).First().Value.ToString();
                }

                namespaceManager = serviceUtilities.GetNamespaceManager(inputs.Where(p => p.Name.Equals("requesttimeout")).FirstOrDefault());

                if (serviceObject.Methods[0].Name.Equals("createeventhubfulldetails"))
                {
                    EventHubDescription EventHub = new EventHubDescription(eventhubpath);

                    foreach (Property prop in inputs)
                    {
                        if (prop.Value != null)
                        {
                            switch (prop.Name)
                            {
                            case "eventhub":
                                EventHub.Path = eventhubpath;
                                break;

                            case "partitioncount":
                                EventHub.PartitionCount = int.Parse(prop.Value.ToString());
                                break;

                            case "messageretentionindays":
                                EventHub.MessageRetentionInDays = int.Parse(prop.Value.ToString());
                                break;
                            }
                        }
                    }

                    ReturnEventHub = namespaceManager.CreateEventHub(EventHub);
                }
                else
                {
                    // create with defaults
                    ReturnEventHub = namespaceManager.CreateEventHub(eventhubpath);
                }

                foreach (Property prop in returns)
                {
                    switch (prop.Name)
                    {
                    case "createdat":
                        prop.Value = ReturnEventHub.CreatedAt;
                        break;

                    case "isreadonly":
                        prop.Value = ReturnEventHub.IsReadOnly;
                        break;

                    case "messageretentionindays":
                        prop.Value = ReturnEventHub.MessageRetentionInDays;
                        break;

                    case "partitioncount":
                        prop.Value = ReturnEventHub.PartitionCount;
                        break;

                    case "partitionids":
                        prop.Value = string.Join(",", ReturnEventHub.PartitionIds);
                        break;

                    case "path":
                        prop.Value = ReturnEventHub.Path;
                        break;

                    case "status":
                        prop.Value = ReturnEventHub.Status.ToString();
                        break;

                    case "updatedat":
                        prop.Value = ReturnEventHub.UpdatedAt;
                        break;

                    case "usermetadata":
                        prop.Value = ReturnEventHub.UserMetadata;
                        break;
                    }
                }
                returns.Where(p => p.Name.Equals("responsestatus")).First().Value            = ResponseStatus.Success;
                returns.Where(p => p.Name.Equals("responsestatusdescription")).First().Value = "Event Hub created";
            }
            catch (Exception ex)
            {
                returns.Where(p => p.Name.Equals("responsestatus")).First().Value            = ResponseStatus.Error;
                returns.Where(p => p.Name.Equals("responsestatusdescription")).First().Value = ex.Message;
            }
            finally
            {
                namespaceManager = null;
            }

            serviceObject.Properties.BindPropertiesToResultTable();
        }