Exemplo n.º 1
0
        /// <summary>
        /// Creates a Storage Queue with the given config
        /// </summary>
        /// <param name="config">The configuration.</param>
        public async Task CreateEntity(IMessageEntityConfig config)
        {
            await _queueClient.GetQueueReference(config.EntityName).CreateIfNotExistsAsync();

            // Short delay to allow it to finish creating.
            await Task.Delay(2000);
        }
Exemplo n.º 2
0
        private void buttonOK_Click(object sender, EventArgs e)
        {
            if (_finishFirstPage)
            {
                if (_entity == null)
                {
                    LoadAssembly();
                    LoadEntity();
                }

                if (_entity != null)
                {
                    if (_updateEntityName)
                    {
                        _log.Write(LogType.Debug, "[FormEntity] Update entity name to configuration.");

                        _entity.EntityInfo.Name        = this.textBoxEntityName.Text;
                        _entity.EntityInfo.Description = this.textBoxEntityDescription.Text;

                        if (_entry != null && _cfg != null)
                        {
                            _log.Write(LogType.Debug, "[FormEntity] Update entity name to configuration file.");

                            IMessageEntityConfig c = _entry as IMessageEntityConfig;
                            if (c != null)
                            {
                                _cfg.Name        = this.textBoxEntityName.Text;
                                _cfg.Description = this.textBoxEntityDescription.Text;
                                if (c.SaveConfiguration())
                                {
                                    _log.Write(LogType.Error, "Update entity name to configuration file succeeded.");
                                }
                                else
                                {
                                    _log.Write(LogType.Error, "Update entity name to configuration file failed.");
                                }
                            }
                        }
                    }

                    this.DialogResult = DialogResult.OK;
                    this.Close();
                }
            }
            else
            {
                this.panelStep2.Location = this.panelStep1.Location;
                this.panelStep1.Visible  = false;
                this.panelStep2.Visible  = true;
                this.buttonOK.Text       = "OK";

                LoadAssembly();
                _finishFirstPage = true;
                RefreshButton();
            }
        }
Exemplo n.º 3
0
        public bool Uninitialize()
        {
            IMessageEntityConfig e = EntityConfigInstance;

            if (e != null)
            {
                e.Uninitalize();
            }

            return(true);
        }
Exemplo n.º 4
0
        /// <summary>
        /// Creates a new Queue, Topic and or Subscription.
        /// </summary>
        /// <param name="config">The config with the creation details, <see cref="ServiceBusEntityConfig"/>.</param>
        /// <exception cref="NullReferenceException"></exception>
        public async Task CreateEntity(IMessageEntityConfig config)
        {
            if (!(config is ServiceBusEntityConfig sbConfig))
            {
                throw new InvalidOperationException("ServiceBusCreateEntityConfig is required ");
            }

            if (sbConfig.EntityType == EntityType.Topic)
            {
                await Task.Run(() => ManagerClient.CreateTopicIfNotExists(sbConfig.EntityName, sbConfig.EntitySubscriptionName, sbConfig.SqlFilter));
            }
            else
            {
                await Task.Run(() => ManagerClient.CreateQueueIfNotExists(sbConfig.EntityName));
            }
        }
Exemplo n.º 5
0
        private void LoadMainConfigTabPage()
        {
            _entityConfig = _entityAgent.EntityConfigInstance;
            IConfigUI[] uilist = _entityConfig.GetIConfigUI();
            if (uilist == null || uilist.Length < 1)
            {
                return;
            }

            _configUI = uilist[0];
            Control ctl = _configUI.GetControl();

            EntityLoader.PrepareControl(ctl, this);
            this.panelMain.Controls.Add(ctl);
            this.tabPageMain.Text = _configUI.Title;
        }
        /// <summary>Creates the PubSub entity.</summary>
        /// <param name="entity">The entity.</param>
        public async Task CreateEntity(IMessageEntityConfig entity)
        {
            if (entity is PubSubEntityConfig psConfig)
            {
                string subName           = null;
                string deadletterSubName = null;
                string filter            = null;

                // Cast to config that has subscriptions to see if they are set.
                if (psConfig is ReceiverConfig receiver)
                {
                    subName           = receiver.EntitySubscriptionName;
                    deadletterSubName = receiver.EntityDeadLetterSubscriptionName;
                    filter            = receiver.EntityFilter.GetValueOrDefault().Value;
                }

                // Create topic plus subscriptions if set.
                await CreateTopicDefaults(psConfig.EntityName, psConfig.EntityDeadLetterName, subName, deadletterSubName, filter);
            }
        }
Exemplo n.º 7
0
        public bool Initialize(EntityInitializeArgument arg)
        {
            IMessageEntityConfig e = EntityConfigInstance;

            if (e == null)
            {
                return(false);
            }

            if (!e.Initialize(arg))
            {
                _log.Write("Initialize message entity config failed. " + ToString());
                return(false);
            }

            EntityConfigBase c = EntityConfig;

            if (c == null)
            {
                return(false);
            }

            return(true);
        }