// Resolves this specifier returning the encapsulated instance.
        public IEnumerable <IBasePipe> Resolve()
        {
            var instance             = _instance;
            var restrictedBranchPipe = new BranchPipeWrapper(_instance, _restrictions);

            return(new[] { (IBasePipe)restrictedBranchPipe });
        }
Пример #2
0
        // Resolves this specifier returning an instance of the encapsulated type.
        public IEnumerable <IBasePipe> Resolve()
        {
            if (!typeof(IBranchPipe).IsAssignableFrom(_type))
            {
                Trace.UnexpectedType(_type);
                return(Enumerable.Empty <IBasePipe>());
            }

            var instance             = (IBranchPipe)Activator.CreateInstance(_type);
            var restrictedBranchPipe = new BranchPipeWrapper(instance, _restrictions);

            return(new[] { (IBasePipe)restrictedBranchPipe });
        }