-
-
Notifications
You must be signed in to change notification settings - Fork 33
/
IFileSystemFactory.cs
26 lines (23 loc) · 1003 Bytes
/
IFileSystemFactory.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
// <copyright file="IFileSystemFactory.cs" company="Fubar Development Junker">
// Copyright (c) Fubar Development Junker. All rights reserved.
// </copyright>
using System;
using System.Security.Principal;
using JetBrains.Annotations;
namespace FubarDev.WebDavServer.FileSystem
{
/// <summary>
/// The file system factory
/// </summary>
public interface IFileSystemFactory
{
/// <summary>
/// Gets the <see cref="IFileSystem"/> instance for the given <paramref name="principal"/>
/// </summary>
/// <param name="mountPoint">The mount point where this file system should be included</param>
/// <param name="principal">The current principal to get the <see cref="IFileSystem"/> instance for</param>
/// <returns>The <see cref="IFileSystem"/> instance for the <paramref name="principal"/></returns>
[NotNull]
IFileSystem CreateFileSystem([CanBeNull] ICollection mountPoint, [NotNull] IPrincipal principal);
}
}