/// <summary> /// Publishes a folder with all its files and subfolders through HTTP GET, with optional support for PUT and DELETE. /// If PUT and DELETE are allowed, users (if authenticated) can update the contents of the folder. /// </summary> /// <param name="ResourceName">Name of resource.</param> /// <param name="FolderPath">Full path to folder to publish.</param> /// <param name="AllowPut">If the PUT method should be allowed.</param> /// <param name="AllowDelete">If the DELETE method should be allowed.</param> /// <param name="AnonymousGET">If Anonymous GET access is allowed.</param> /// <param name="UserSessions">If the resource uses user sessions.</param> /// <param name="DomainOptions">Options on how to handle the Host header.</param> /// <param name="DomainNames">Pre-defined host names.</param> /// <param name="AuthenticationSchemes">Any authentication schemes used to authenticate users before access is granted.</param> public HttpFolderResource(string ResourceName, string FolderPath, bool AllowPut, bool AllowDelete, bool AnonymousGET, bool UserSessions, HostDomainOptions DomainOptions, string[] DomainNames, params HttpAuthenticationScheme[] AuthenticationSchemes) : base(ResourceName) { this.authenticationSchemes = AuthenticationSchemes; this.allowPut = AllowPut; this.allowDelete = AllowDelete; this.anonymousGET = AnonymousGET; this.userSessions = UserSessions; this.domainOptions = DomainOptions; foreach (string DomainName in DomainNames) { this.definedDomains[DomainName] = true; } this.FolderPath = FolderPath; }
/// <summary> /// Publishes a folder with all its files and subfolders through HTTP GET, with optional support for PUT and DELETE. /// If PUT and DELETE are allowed, users (if authenticated) can update the contents of the folder. /// </summary> /// <param name="ResourceName">Name of resource.</param> /// <param name="FolderPath">Full path to folder to publish.</param> /// <param name="AllowPut">If the PUT method should be allowed.</param> /// <param name="AllowDelete">If the DELETE method should be allowed.</param> /// <param name="AnonymousGET">If Anonymous GET access is allowed.</param> /// <param name="UserSessions">If the resource uses user sessions.</param> /// <param name="DomainOptions">Options on how to handle the Host header.</param> /// <param name="AuthenticationSchemes">Any authentication schemes used to authenticate users before access is granted.</param> public HttpFolderResource(string ResourceName, string FolderPath, bool AllowPut, bool AllowDelete, bool AnonymousGET, bool UserSessions, HostDomainOptions DomainOptions, params HttpAuthenticationScheme[] AuthenticationSchemes) : this(ResourceName, FolderPath, AllowPut, AllowDelete, AnonymousGET, UserSessions, DomainOptions, new string[0], AuthenticationSchemes) { }