Move data only used by extension to Extensiblity repo
Rob Mensching committed
Jul 23, 2018 at 13:44 UTC
7f846324105e14c84f1ad1bad2fe2c10c22f6e4b
5 files changed
+4
-211
src/WixToolset.Data/Bind/BindPath.cs
deleted
-60
@@ -1,60 +0,0 @@
1
-// Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information.
2
-
3
-namespace WixToolset.Data
4
-{
5
- using System;
6
- using WixToolset.Data.Bind;
7
-
8
- /// <summary>
9
- /// Bind path representation.
10
- /// </summary>
11
- public class BindPath
12
- {
13
- /// <summary>
14
- /// Creates an unnamed bind path.
15
- /// </summary>
16
- /// <param name="path">Path for the bind path.</param>
17
- public BindPath(string path) : this(String.Empty, path, BindStage.Normal)
18
- {
19
- }
20
-
21
- /// <summary>
22
- /// Creates a named bind path.
23
- /// </summary>
24
- /// <param name="name">Name of the bind path.</param>
25
- /// <param name="path">Path for the bind path.</param>
26
- /// <param name="stage">Stage for the bind path.</param>
27
- public BindPath(string name, string path, BindStage stage = BindStage.Normal)
28
- {
29
- this.Name = name;
30
- this.Path = path;
31
- this.Stage = stage;
32
- }
33
-
34
- /// <summary>
35
- /// Name of the bind path or String.Empty if the path is unnamed.
36
- /// </summary>
37
- public string Name { get; set; }
38
-
39
- /// <summary>
40
- /// Path for the bind path.
41
- /// </summary>
42
- public string Path { get; set; }
43
-
44
- /// <summary>
45
- /// Stage for the bind path.
46
- /// </summary>
47
- public BindStage Stage { get; set; }
48
-
49
- /// <summary>
50
- /// Parses a normal bind path from its string representation
51
- /// </summary>
52
- /// <param name="bindPath">String representation of bind path that looks like: [name=]path</param>
53
- /// <returns>Parsed normal bind path.</returns>
54
- public static BindPath Parse(string bindPath)
55
- {
56
- string[] namedPath = bindPath.Split(new char[] { '=' }, 2);
57
- return (1 == namedPath.Length) ? new BindPath(namedPath[0]) : new BindPath(namedPath[0], namedPath[1]);
58
- }
59
- }
60
-}
src/WixToolset.Data/Bind/BindResult.cs
deleted
-13
@@ -1,13 +0,0 @@
1
-// Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information.
2
-
3
-namespace WixToolset.Data.Bind
4
-{
5
- using System.Collections.Generic;
6
-
7
- public class BindResult
8
- {
9
- public IEnumerable<FileTransfer> FileTransfers { get; set; }
10
-
11
- public IEnumerable<string> ContentFilePaths { get; set; }
12
- }
13
-}
src/WixToolset.Data/Bind/BindStage.cs
deleted
-22
@@ -1,22 +0,0 @@
1
-// Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information.
2
-
3
-namespace WixToolset.Data.Bind
4
-{
5
- public enum BindStage
6
- {
7
- /// <summary>
8
- /// Normal binding
9
- /// </summary>
10
- Normal,
11
-
12
- /// <summary>
13
- /// Bind the file path of the target build file
14
- /// </summary>
15
- Target,
16
-
17
- /// <summary>
18
- /// Bind the file path of the updated build file
19
- /// </summary>
20
- Updated,
21
- }
22
-}
src/WixToolset.Data/Bind/FileTransfer.cs
deleted
-112
@@ -1,112 +0,0 @@
1
-// Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information.
2
-
3
-namespace WixToolset.Data.Bind
4
-{
5
- using System;
6
- using System.IO;
7
-
8
- /// <summary>
9
- /// Structure used for all file transfer information.
10
- /// </summary>
11
- public class FileTransfer
12
- {
13
- /// <summary>Source path to file.</summary>
14
- public string Source { get; set; }
15
-
16
- /// <summary>Destination path for file.</summary>
17
- public string Destination { get; set; }
18
-
19
- /// <summary>Flag if file should be moved (optimal).</summary>
20
- public bool Move { get; set; }
21
-
22
- /// <summary>Optional source line numbers where this file transfer orginated.</summary>
23
- public SourceLineNumber SourceLineNumbers { get; set; }
24
-
25
- /// <summary>Optional type of file this transfer is moving or copying.</summary>
26
- public string Type { get; set; }
27
-
28
- /// <summary>Indicates whether the file transer was a built by this build or copied from other some build.</summary>
29
- public bool Built { get; set; }
30
-
31
- /// <summary>Set during layout of media when the file transfer when the source and target resolve to the same path.</summary>
32
- public bool Redundant { get; set; }
33
-
34
- /// <summary>
35
- /// Prefer the TryCreate() method to create FileTransfer objects.
36
- /// </summary>
37
- /// <param name="source">Source path to file.</param>
38
- /// <param name="destination">Destination path for file.</param>
39
- /// <param name="move">File if file should be moved (optimal).</param>
40
- /// <param name="type">Optional type of file this transfer is transferring.</param>
41
- /// <param name="sourceLineNumbers">Optional source line numbers wher this transfer originated.</param>
42
- public FileTransfer(string source, string destination, bool move, string type = null, SourceLineNumber sourceLineNumbers = null)
43
- {
44
- this.Source = source;
45
- this.Destination = destination;
46
- this.Move = move;
47
-
48
- this.Type = type;
49
- this.SourceLineNumbers = sourceLineNumbers;
50
- }
51
-
52
- /// <summary>
53
- /// Creates a file transfer if the source and destination are different.
54
- /// </summary>
55
- /// <param name="source">Source path to file.</param>
56
- /// <param name="destination">Destination path for file.</param>
57
- /// <param name="move">File if file should be moved (optimal).</param>
58
- /// <param name="type">Optional type of file this transfer is transferring.</param>
59
- /// <param name="sourceLineNumbers">Optional source line numbers where this transfer originated.</param>
60
- /// <returns>true if the source and destination are the different, false if no file transfer is created.</returns>
61
- public static bool TryCreate(string source, string destination, bool move, string type, SourceLineNumber sourceLineNumbers, out FileTransfer transfer)
62
- {
63
- string sourceFullPath = GetValidatedFullPath(sourceLineNumbers, source);
64
-
65
- string fileLayoutFullPath = GetValidatedFullPath(sourceLineNumbers, destination);
66
-
67
- //// if the current source path (where we know that the file already exists) and the resolved
68
- //// path as dictated by the Directory table are not the same, then propagate the file. The
69
- //// image that we create may have already been done by some other process other than the linker, so
70
- //// there is no reason to copy the files to the resolved source if they are already there.
71
- //if (String.Equals(sourceFullPath, fileLayoutFullPath, StringComparison.OrdinalIgnoreCase))
72
- //{
73
- // transfer = null;
74
- // return false;
75
- //}
76
-
77
- transfer = new FileTransfer(source, destination, move, type, sourceLineNumbers);
78
- transfer.Redundant = String.Equals(sourceFullPath, fileLayoutFullPath, StringComparison.OrdinalIgnoreCase);
79
- return true;
80
- }
81
-
82
- private static string GetValidatedFullPath(SourceLineNumber sourceLineNumbers, string path)
83
- {
84
- string result;
85
-
86
- try
87
- {
88
- result = Path.GetFullPath(path);
89
-
90
- var filename = Path.GetFileName(result);
91
-
92
- foreach (var reservedName in Common.ReservedFileNames)
93
- {
94
- if (reservedName.Equals(filename, StringComparison.OrdinalIgnoreCase))
95
- {
96
- throw new WixException(ErrorMessages.InvalidFileName(sourceLineNumbers, path));
97
- }
98
- }
99
- }
100
- catch (ArgumentException)
101
- {
102
- throw new WixException(ErrorMessages.InvalidFileName(sourceLineNumbers, path));
103
- }
104
- catch (PathTooLongException)
105
- {
106
- throw new WixException(ErrorMessages.PathTooLong(sourceLineNumbers, path));
107
- }
108
-
109
- return result;
110
- }
111
- }
112
-}
src/test/WixToolsetTest.Data/WixToolsetTest.Data.csproj
+4
-4
@@ -7,13 +7,13 @@
7
</PropertyGroup>
8
9
<ItemGroup>
10
- <PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.8.0-preview-20180610-02" />
11
- <PackageReference Include="xunit" Version="2.3.1" />
12
- <PackageReference Include="xunit.runner.visualstudio" Version="2.3.1" />
10
+ <ProjectReference Include="..\..\WixToolset.Data\WixToolset.Data.csproj" />
11
</ItemGroup>
12
13
<ItemGroup>
16
- <ProjectReference Include="..\..\WixToolset.Data\WixToolset.Data.csproj" />
14
+ <PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.8.0" />
15
+ <PackageReference Include="xunit" Version="2.4.0" />
16
+ <PackageReference Include="xunit.runner.visualstudio" Version="2.4.0" />
17
</ItemGroup>
18
19
</Project>