public void Setup()
        {
            var encodingProvider = new DefaultFileEncodingProvider();
            var assemblyResourceFilePathProvider = new AssemblyResourceFilePathProvider();
            var sourceAssembly = typeof(WebServerDeploymentResouceInfo).Assembly;
            var filesystemAccessor = new PhysicalFilesystemAccessor(encodingProvider);

            this.assemblyFileResourceProvider = new AssemblyFileResourceProvider(sourceAssembly, assemblyResourceFilePathProvider);
            this.deploymentScriptResourceDownloader = new DeploymentScriptResourceDownloader(this.assemblyFileResourceProvider, filesystemAccessor);
        }
        public DeploymentScriptResourceDownloader(IAssemblyFileResourceProvider assemblyFileResourceProvider, IFilesystemAccessor filesystemAccessor)
        {
            if (assemblyFileResourceProvider == null)
            {
                throw new ArgumentNullException("assemblyFileResourceProvider");
            }

            if (filesystemAccessor == null)
            {
                throw new ArgumentNullException("filesystemAccessor");
            }

            this.assemblyFileResourceProvider = assemblyFileResourceProvider;
            this.filesystemAccessor = filesystemAccessor;
        }
 public void Setup()
 {
     var sourceAssembly = typeof(WebServerDeploymentResouceInfo).Assembly;
     var assemblyResourceFilePathProvider = new AssemblyResourceFilePathProvider();
     this.assemblyFileResourceProvider = new AssemblyFileResourceProvider(sourceAssembly, assemblyResourceFilePathProvider);
 }