aboutsummaryrefslogtreecommitdiff
path: root/Emby.Server.Implementations/IO/SharpCifs/Util/Sharpen/FileOutputStream.cs
blob: bf80294886b92d0a3583563a10a28893d28995a9 (plain)
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
27
28
29
30
31
32
33
using System.IO;

namespace SharpCifs.Util.Sharpen
{
    internal class FileOutputStream : OutputStream
	{
		public FileOutputStream (FilePath file): this (file.GetPath (), false)
		{
		}

		public FileOutputStream (string file): this (file, false)
		{
		}

		public FileOutputStream (FilePath file, bool append) : this(file.GetPath (), append)
		{
		}

		public FileOutputStream (string file, bool append)
		{
			try {
				if (append) {
					Wrapped = File.Open (file, FileMode.Append, FileAccess.Write);
				} else {
					Wrapped = File.Open (file, FileMode.Create, FileAccess.Write);
				}
			} catch (DirectoryNotFoundException) {
				throw new FileNotFoundException ("File not found: " + file);
			}
		}

	}
}