aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/Prebuild/src/Core/Nodes/ProcessNode.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Prebuild/src/Core/Nodes/ProcessNode.cs')
-rw-r--r--Prebuild/src/Core/Nodes/ProcessNode.cs238
1 files changed, 119 insertions, 119 deletions
diff --git a/Prebuild/src/Core/Nodes/ProcessNode.cs b/Prebuild/src/Core/Nodes/ProcessNode.cs
index f546a4b..5f3dbe6 100644
--- a/Prebuild/src/Core/Nodes/ProcessNode.cs
+++ b/Prebuild/src/Core/Nodes/ProcessNode.cs
@@ -1,119 +1,119 @@
1#region BSD License 1#region BSD License
2/* 2/*
3Copyright (c) 2004-2005 Matthew Holmes (matthew@wildfiregames.com), Dan Moorehead (dan05a@gmail.com) 3Copyright (c) 2004-2005 Matthew Holmes (matthew@wildfiregames.com), Dan Moorehead (dan05a@gmail.com)
4 4
5Redistribution and use in source and binary forms, with or without modification, are permitted 5Redistribution and use in source and binary forms, with or without modification, are permitted
6provided that the following conditions are met: 6provided that the following conditions are met:
7 7
8* Redistributions of source code must retain the above copyright notice, this list of conditions 8* Redistributions of source code must retain the above copyright notice, this list of conditions
9 and the following disclaimer. 9 and the following disclaimer.
10* Redistributions in binary form must reproduce the above copyright notice, this list of conditions 10* Redistributions in binary form must reproduce the above copyright notice, this list of conditions
11 and the following disclaimer in the documentation and/or other materials provided with the 11 and the following disclaimer in the documentation and/or other materials provided with the
12 distribution. 12 distribution.
13* The name of the author may not be used to endorse or promote products derived from this software 13* The name of the author may not be used to endorse or promote products derived from this software
14 without specific prior written permission. 14 without specific prior written permission.
15 15
16THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, 16THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING,
17BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 17BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
18ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 18ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
19EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 19EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
20OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY 20OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
21OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING 21OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
22IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 22IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
23*/ 23*/
24#endregion 24#endregion
25 25
26#region CVS Information 26#region CVS Information
27/* 27/*
28 * $Source$ 28 * $Source$
29 * $Author: jendave $ 29 * $Author: jendave $
30 * $Date: 2006-01-28 01:49:58 +0100 (lö, 28 jan 2006) $ 30 * $Date: 2006-01-28 01:49:58 +0100 (lö, 28 jan 2006) $
31 * $Revision: 71 $ 31 * $Revision: 71 $
32 */ 32 */
33#endregion 33#endregion
34 34
35using System; 35using System;
36using System.Collections; 36using System.Collections;
37using System.Collections.Specialized; 37using System.Collections.Specialized;
38using System.Xml; 38using System.Xml;
39 39
40using Prebuild.Core.Attributes; 40using Prebuild.Core.Attributes;
41using Prebuild.Core.Interfaces; 41using Prebuild.Core.Interfaces;
42using Prebuild.Core.Utilities; 42using Prebuild.Core.Utilities;
43 43
44namespace Prebuild.Core.Nodes 44namespace Prebuild.Core.Nodes
45{ 45{
46 /// <summary> 46 /// <summary>
47 /// 47 ///
48 /// </summary> 48 /// </summary>
49 [DataNode("Process")] 49 [DataNode("Process")]
50 public class ProcessNode : DataNode 50 public class ProcessNode : DataNode
51 { 51 {
52 #region Fields 52 #region Fields
53 53
54 private string m_Path; 54 private string m_Path;
55 private bool m_IsValid = true; 55 private bool m_IsValid = true;
56 56
57 #endregion 57 #endregion
58 58
59 #region Properties 59 #region Properties
60 60
61 /// <summary> 61 /// <summary>
62 /// Gets the path. 62 /// Gets the path.
63 /// </summary> 63 /// </summary>
64 /// <value>The path.</value> 64 /// <value>The path.</value>
65 public string Path 65 public string Path
66 { 66 {
67 get 67 get
68 { 68 {
69 return m_Path; 69 return m_Path;
70 } 70 }
71 } 71 }
72 72
73 /// <summary> 73 /// <summary>
74 /// Gets a value indicating whether this instance is valid. 74 /// Gets a value indicating whether this instance is valid.
75 /// </summary> 75 /// </summary>
76 /// <value><c>true</c> if this instance is valid; otherwise, <c>false</c>.</value> 76 /// <value><c>true</c> if this instance is valid; otherwise, <c>false</c>.</value>
77 public bool IsValid 77 public bool IsValid
78 { 78 {
79 get 79 get
80 { 80 {
81 return m_IsValid; 81 return m_IsValid;
82 } 82 }
83 } 83 }
84 84
85 #endregion 85 #endregion
86 86
87 #region Public Methods 87 #region Public Methods
88 88
89 /// <summary> 89 /// <summary>
90 /// Parses the specified node. 90 /// Parses the specified node.
91 /// </summary> 91 /// </summary>
92 /// <param name="node">The node.</param> 92 /// <param name="node">The node.</param>
93 public override void Parse(XmlNode node) 93 public override void Parse(XmlNode node)
94 { 94 {
95 if( node == null ) 95 if( node == null )
96 { 96 {
97 throw new ArgumentNullException("node"); 97 throw new ArgumentNullException("node");
98 } 98 }
99 99
100 m_Path = Helper.InterpolateForEnvironmentVariables(node.InnerText); 100 m_Path = Helper.InterpolateForEnvironmentVariables(node.InnerText);
101 if(m_Path == null) 101 if(m_Path == null)
102 { 102 {
103 m_Path = ""; 103 m_Path = "";
104 } 104 }
105 105
106 try 106 try
107 { 107 {
108 m_Path = Helper.ResolvePath(m_Path); 108 m_Path = Helper.ResolvePath(m_Path);
109 } 109 }
110 catch(ArgumentException) 110 catch(ArgumentException)
111 { 111 {
112 Kernel.Instance.Log.Write(LogType.Warning, "Could not find prebuild file for processing: {0}", m_Path); 112 Kernel.Instance.Log.Write(LogType.Warning, "Could not find prebuild file for processing: {0}", m_Path);
113 m_IsValid = false; 113 m_IsValid = false;
114 } 114 }
115 } 115 }
116 116
117 #endregion 117 #endregion
118 } 118 }
119} 119}