/// <summary>
        ///
        /// </summary>
        public ISourceDataDelivery ObtainDataDelivery(ComponentId sourceId)
        {
            ISourceDataDelivery result = GetDataDelivery(sourceId);

            if (result != null)
            {
                return(result);
            }

            result = CreateDataDelivery(sourceId);

            if (result != null)
            {
                result.Initialize();
                AddElement(sourceId, result);

                return(result);
            }

            return(null);
        }