示例#1
0
 // overridden in testing classes
 public virtual IEnumerable <IDirective> BuildDirectives(IDirectiveTypeRegistry typeRegistry)
 {
     return(UniqueDirectiveNames().Select(name =>
     {
         var type = typeRegistry.DirectiveTypeFor(name);
         return GetDirective(type);
     }));
 }
示例#2
0
        public bool Initialize(IDirectiveTypeRegistry registry, AddDirectiveInput input)
        {
            var directiveType = registry.DirectiveTypeFor(input.Directive);
            var directive     = directiveType.Create <IDirective>();

            var hostFile = input.GetHostFileName();

            _fileSystem.WriteToFlatFile(hostFile, file =>
            {
                var writer = new DirectiveWriter(file, new TypeDescriptorCache());
                writer.Write(directive);
            });

            if (input.OpenFlag)
            {
                _fileSystem.LaunchEditor(hostFile);
            }

            return(true);
        }
示例#3
0
 public override IEnumerable <IDirective> BuildDirectives(IDirectiveTypeRegistry typeRegistry)
 {
     return(Directives);
 }
示例#4
0
 public DirectiveRunnerFactory(IContainer container, IDirectiveTypeRegistry types)
 {
     _container = container;
     _types = types;
 }
示例#5
0
        // overridden in testing classes
        public virtual void BuildDirectives(DeploymentPlan plan, HostManifest host, IDirectiveTypeRegistry typeRegistry)
        {
            var provider = SettingsProvider.For(host.AllSettingsData().Union(plan.Substitutions()).ToArray());

            host.BuildDirectives(provider, typeRegistry);
        }
示例#6
0
 public DirectiveRunnerFactory(IContainer container, IDirectiveTypeRegistry types)
 {
     _container = container;
     _types     = types;
 }