public void WaitUntillActive()
        {
            bool      isEntityActive = false;
            Stopwatch sw             = new Stopwatch();

            sw.Start();

            while (sw.Elapsed < TimeSpan.FromMinutes(8))
            {
                HttpStatusCode?httpStatusCode = null;
                // lookup Entity
                EntityDescription entity = this.LookUp();
                if (entity.IsActive())
                {
                    isEntityActive = true;
                    break;
                }

                Trace.WriteLine("Waiting for 30 seconds for the Entity to be active");
                Thread.Sleep(TimeSpan.FromSeconds(30));
            }

            sw.Stop();

            if (!isEntityActive)
            {
                throw new ApplicationException(string.Format("Entity didn't get active in {0} seconds", sw.Elapsed.TotalSeconds));
            }
        }
 internal SBQueueManager(
     string subscriptionId,
     X509Certificate2 managementCertificate,
     EntityDescription entityInfo)
 {
     this.EntityDescription     = entityInfo;
     this.AzureSubscriptionID   = subscriptionId;
     this.ManagementCertificate = managementCertificate;
 }
Exemple #3
0
 internal SBNotificationHubManager(
     string subscriptionId,
     X509Certificate2 managementCertificate,
     EntityDescription entityDescription)
 {
     this.EntityDescription     = entityDescription;
     this.AzureSubscriptionID   = subscriptionId;
     this.ManagementCertificate = managementCertificate;
 }
        /// <param name="subscriptionId">https://Windows.Azure.com</param>
        /// <param name="managementCertificate">Add a management certificate to the Windows Azure Subscription http://msdn.microsoft.com/en-us/library/gg551726.aspx</param>
        public static SBResourceManager Get(
            string subscriptionId,
            X509Certificate2 managementCertificate,
            SBRestResourceType restResourceType,
            EntityDescription entityDescription)
        {
            if (string.IsNullOrEmpty(subscriptionId))
            {
                throw new ArgumentNullException("subscriptionId");
            }

            if (managementCertificate == null)
            {
                throw new ArgumentNullException("managementCertificate");
            }

            if (entityDescription == null)
            {
                throw new ArgumentNullException("entityDescription");
            }

            switch (restResourceType)
            {
            case SBRestResourceType.Namespace:
                return(new SBNamespaceManager(subscriptionId, managementCertificate, entityDescription as NamespaceDescription));

                break;

            case SBRestResourceType.Queue:
                return(new SBQueueManager(subscriptionId, managementCertificate, entityDescription));

                break;

            case SBRestResourceType.Topic:
                return(new SBTopicManager(subscriptionId, managementCertificate, entityDescription));

                break;

            case SBRestResourceType.Subscription:
                return(new SBSubscriptionManager(subscriptionId, managementCertificate, entityDescription));

                break;

            case SBRestResourceType.NotificationHub:
                return(new SBNotificationHubManager(subscriptionId, managementCertificate, entityDescription));

                break;

            default:
                throw new NotImplementedException();
            }
        }
        public NamespaceDescription(string name = null, string region = null, EntityDescription parentEntity = null)
        {
            ParentEntity = parentEntity;
            if (string.IsNullOrEmpty(name))
            {
                name = Guid.NewGuid().ToString("N");
            }
            if (string.IsNullOrEmpty(region))
            {
                region = "South Central US";
            }

            Name   = name;
            Region = region;
        }
        public EntityDescription LookUp()
        {
            HttpStatusCode?httpStatusCode = null;
            string         lookupResponse = this.LookUp(out httpStatusCode);
            MethodInfo     methodInfo     = typeof(SBResourceManager).GetMethod("DeserializeResourceDescription");

            methodInfo = methodInfo.MakeGenericMethod(this.EntityDescription.GetType());
            EntityDescription entityDescription = methodInfo.Invoke(this, new object[] { lookupResponse }) as EntityDescription;

            entityDescription.ParentEntity = this.EntityDescription.ParentEntity;
            if (string.IsNullOrEmpty(entityDescription.Name))
            {
                entityDescription.Name = this.EntityDescription.Name;
            }
            return(entityDescription);
        }
Exemple #7
0
 public EntityDescription(EntityDescription parentEntity = null)
 {
     this.ParentEntity = parentEntity;
 }
Exemple #8
0
 public SubscriptionDescription(string name = null, EntityDescription parentEntity = null)
 {
     Name         = name;
     ParentEntity = parentEntity;
 }
 public NotificationHubDescription(string name = null, EntityDescription parentEntity = null)
 {
     Name         = name;
     ParentEntity = parentEntity;
 }