Ejemplo n.º 1
0
        /// <summary>
        /// Registers an already instantiated and configured extensibility point handler. For this handler <see cref="M:Dropcraft.Common.Package.IExtensibilityPointHandler.Initialize(Dropcraft.Common.Package.ExtensibilityPointInfo,Dropcraft.Common.Runtime.RuntimeContext)" /> will not be called.
        /// </summary>
        /// <param name="extensibilityPointId">Extensibility point ID</param>
        /// <param name="extensibilityPointHandler">Extensibility point handler</param>
        protected override void OnRegisterExtensibilityPoint(string extensibilityPointId,
                                                             IExtensibilityPointHandler extensibilityPointHandler)
        {
            lock (_extensionLock)
            {
                _extensibilityPoints.Add(extensibilityPointId, extensibilityPointHandler);

                for (var i = _extensions.Count - 1; i >= 0; i--)
                {
                    if (_extensions[i].ExtensibilityPointId == extensibilityPointId)
                    {
                        extensibilityPointHandler.RegisterExtension(_extensions[i]);
                        _extensions.RemoveAt(i);
                    }
                }
            }

            var e = new AfterExtensibilityPointRegisteredEvent
            {
                ExtensibilityPointId      = extensibilityPointId,
                ExtensibilityPointHandler = extensibilityPointHandler
            };

            RaiseRuntimeEvent(e);
        }
Ejemplo n.º 2
0
 protected abstract void OnRegisterExtensibilityPoint(string extensibilityPointKey, IExtensibilityPointHandler extensibilityPoint);
Ejemplo n.º 3
0
 public void RegisterExtensibilityPoint(string extensibilityPointKey, IExtensibilityPointHandler extensibilityPoint)
 => OnRegisterExtensibilityPoint(extensibilityPointKey, extensibilityPoint);
Ejemplo n.º 4
0
 /// <summary>
 /// Registers an already instantiated and configured extensibility point handler. For this handler <see cref="IExtensibilityPointHandler.Initialize"/> will not be called.
 /// </summary>
 /// <param name="extensibilityPointId">Extensibility point ID</param>
 /// <param name="extensibilityPointHandler">Extensibility point handler</param>
 public void RegisterExtensibilityPoint(string extensibilityPointId, IExtensibilityPointHandler extensibilityPointHandler)
 => OnRegisterExtensibilityPoint(extensibilityPointId, extensibilityPointHandler);
Ejemplo n.º 5
0
        protected override void OnRegisterExtensibilityPoint(string extensibilityPointKey, IExtensibilityPointHandler extensibilityPoint)
        {
            lock (_extensionLock)
            {
                _extensibilityPoints.Add(extensibilityPointKey, extensibilityPoint);

                for (var i = _extensions.Count - 1; i >= 0; i--)
                {
                    if (_extensions[i].ExtensibilityPointId == extensibilityPointKey)
                    {
                        extensibilityPoint.RegisterExtension(_extensions[i]);
                        _extensions.RemoveAt(i);
                    }
                }
            }
        }