home *** CD-ROM | disk | FTP | other *** search
/ Internet Magazine 2003 October / INTERNET108.ISO / pc / software / windows / building / xmlspy / xmlspyentcomplete5.exe / Data1.cab / _E88746D7C6654E8BAA50DFA6B20928FA < prev    next >
Encoding:
Text File  |  2003-05-12  |  8.3 KB  |  276 lines

  1. //
  2. // [=$QualifiedFilename].cs
  3. //
  4. // This file was generated by XMLSPY 5 Enterprise Edition.
  5. //
  6. // YOU SHOULD NOT MODIFY THIS FILE, BECAUSE IT WILL BE
  7. // OVERWRITTEN WHEN YOU RE-RUN CODE GENERATION.
  8. //
  9. // Refer to the XMLSPY Documentation for further details.
  10. // http://www.altova.com/xmlspy
  11. //
  12.  
  13.  
  14. [            if $class.IsComplexType
  15. ]using System;
  16. using System.Xml;
  17. using Altova.Types;
  18.  
  19. namespace [=$QualifiedNamespace]
  20. {
  21. [                if $class.Base <> "" and $class.BuiltInBase = "" and not $class.IsComplexFromSimpleType
  22.                     if $class.NamespacePrefix <> $class.BaseObject.NamespacePrefix
  23.                         if $class.BaseObject.NamespacePrefix <> ""
  24.                             $QualifiedBase = $class.BaseObject.NamespacePrefix & "." & $class.Base
  25.                         else
  26.                             $QualifiedBase = $class.Base
  27.                         endif
  28.                     else
  29.                         $QualifiedBase = $class.Base
  30.                     endif
  31.                 else
  32.                     $QualifiedBase = "Altova.Node"
  33.                 endif
  34.  
  35. ]    public class [=$class.Name] : [=$QualifiedBase]
  36.     {
  37.         #region Forward constructors
  38.         public [=$class.Name]() : base() {}
  39.         public [=$class.Name](XmlDocument doc) : base(doc) {}
  40.         public [=$class.Name](XmlNode node) : base(node) {}
  41.         public [=$class.Name](Altova.Node node) : base(node) {}
  42.         #endregion // Forward constructors
  43. [                if $class.IsComplexFromSimpleType
  44.                     if $class.HasBaseObject and $class.NamespacePrefix <> $class.BaseObject.NamespacePrefix
  45.                         if $class.BaseObject.NamespacePrefix <> ""
  46.                             $QualifiedValueType = $class.BaseObject.NamespacePrefix & "." & $class.Base
  47.                         else
  48.                             $QualifiedValueType = $class.Base
  49.                         endif
  50.                     else
  51.                         $QualifiedValueType = $class.Base
  52.                     endif
  53. ]
  54.         #region Value accessor methods
  55.         public [=$QualifiedValueType] GetValue()
  56.         {
  57.             return new [=$QualifiedValueType](GetDomNodeValue(domNode));
  58.         }
  59.  
  60.         public void setValue([=$QualifiedValueType] newValue)
  61.         {
  62.             SetDomNodeValue(domNode, newValue.ToString());
  63.         }
  64.         #endregion // Value accessor methods
  65. [                endif
  66. ]
  67.         public override void AdjustPrefix()
  68.         {
  69.             int nCount;
  70. [                foreach $member in $class.Members
  71.                     if $member.IsQualified
  72.                         $IsQualified = "true"
  73.                     else
  74.                         $IsQualified = "false"
  75.                     endif
  76.                     if $member.HasTypeObject
  77.                         if $member.TypeObject.NamespacePrefix <> $class.NamespacePrefix
  78.                             $QualifiedType = $member.TypeObject.NamespacePrefix & "." & $member.Type
  79.                         else
  80.                             $QualifiedType = $member.Type
  81.                         endif
  82.                     else
  83.                         $QualifiedType = $member.Type
  84.                     endif
  85. ]
  86.             nCount = DomChildCount(NodeType.[=$member.NodeType], "[=$member.NamespaceURI]", "[=$member.SchemaName]");
  87.             for (int i = 0; i < nCount; i++)
  88.             {
  89.                 XmlNode DOMNode = GetDomChildAt(NodeType.[=$member.NodeType], "[=$member.NamespaceURI]", "[=$member.SchemaName]", i);
  90.                 InternalAdjustPrefix(DOMNode, [=$IsQualified]);
  91. [                    if $member.HasTypeObject and $member.TypeObject.IsComplexType
  92. ]                new [=$QualifiedType](DOMNode).AdjustPrefix();
  93. [                    endif
  94. ]            }
  95. [
  96.                 next
  97. ]        }
  98.  
  99. [
  100.                 foreach $member in $class.Members
  101.                     if $member.HasTypeObject and $member.TypeObject.NamespacePrefix <> $class.NamespacePrefix
  102.                         if $member.TypeObject.NamespacePrefix <> ""
  103.                             $QualifiedType = $member.TypeObject.NamespacePrefix & "." & $member.Type
  104.                         else
  105.                             $QualifiedType = $member.Type
  106.                         endif
  107.                     else
  108.                         $QualifiedType = $member.Type
  109.                     endif
  110. ]
  111.         #region [=$member.Name] accessor methods
  112.         public int Get[=$member.Name]MinCount()
  113.         {
  114.             return [=$member.MinOcc];
  115.         }
  116.  
  117.         public int Get[=$member.Name]MaxCount()
  118.         {
  119.             return [if $member.MaxOcc = -1]Int32.MaxValue[else][=$member.MaxOcc][endif];
  120.         }
  121.  
  122.         public int Get[=$member.Name]Count()
  123.         {
  124.             return DomChildCount(NodeType.[=$member.NodeType], "[=$member.NamespaceURI]", "[=$member.SchemaName]");
  125.         }
  126.  
  127.         public bool Has[=$member.Name]()
  128.         {
  129.             return HasDomChild(NodeType.[=$member.NodeType], "[=$member.NamespaceURI]", "[=$member.SchemaName]");
  130.         }
  131.  
  132.         public [=$QualifiedType] Get[=$member.Name]At(int index)
  133.         {
  134. [                    if $member.IsSimpleType
  135. ]            return new [=$QualifiedType](GetDomNodeValue(GetDomChildAt(NodeType.[=$member.NodeType], "[=$member.NamespaceURI]", "[=$member.SchemaName]", index)));
  136. [                    else
  137. ]            return new [=$QualifiedType](GetDomChildAt(NodeType.[=$member.NodeType], "[=$member.NamespaceURI]", "[=$member.SchemaName]", index));
  138. [                    endif
  139. ]        }
  140.  
  141.         public [=$QualifiedType] Get[=$member.Name]()
  142.         {
  143.             return Get[=$member.Name]At(0);
  144.         }
  145.  
  146.         public void Remove[=$member.Name]At(int index)
  147.         {
  148.             RemoveDomChildAt(NodeType.[=$member.NodeType], "[=$member.NamespaceURI]", "[=$member.SchemaName]", index);
  149.         }
  150.  
  151.         public void Remove[=$member.Name]()
  152.         {
  153. [                    if $member.MaxOcc > 1
  154. ]            Remove[=$member.Name]At(0);
  155. [                    else
  156. ]            while (Has[=$member.Name]())
  157.                 Remove[=$member.Name]At(0);
  158. [                    endif
  159. ]        }
  160.  
  161.         public void Add[=$member.Name]([=$QualifiedType] newValue)
  162.         {
  163. [                    if $member.IsSimpleType
  164. ]            AppendDomChild(NodeType.[=$member.NodeType], "[=$member.NamespaceURI]", "[=$member.SchemaName]", newValue.ToString());
  165. [                    else
  166. ]            AppendDomElement("[=$member.NamespaceURI]", "[=$member.SchemaName]", newValue);
  167. [                    endif
  168. ]        }
  169.  
  170.         public void Insert[=$member.Name]At([=$QualifiedType] newValue, int index)
  171.         {
  172. [                    if $member.IsSimpleType
  173. ]            InsertDomChildAt(NodeType.[=$member.NodeType], "[=$member.NamespaceURI]", "[=$member.SchemaName]", index, newValue.ToString());
  174. [                    else
  175. ]            InsertDomElementAt("[=$member.NamespaceURI]", "[=$member.SchemaName]", index, newValue);
  176. [                    endif
  177. ]        }
  178.  
  179.         public void Replace[=$member.Name]At([=$QualifiedType] newValue, int index)
  180.         {
  181. [                    if $member.IsSimpleType
  182. ]            ReplaceDomChildAt(NodeType.[=$member.NodeType], "[=$member.NamespaceURI]", "[=$member.SchemaName]", index, newValue.ToString());
  183. [                    else
  184. ]            ReplaceDomElementAt("[=$member.NamespaceURI]", "[=$member.SchemaName]", index, newValue);
  185. [                    endif
  186. ]        }
  187.         #endregion // [=$member.Name] accessor methods
  188. [                next
  189. ]    }
  190. }
  191. [            else
  192.                 if $class.IsSimpleType and not $class.IsInternal
  193.                     $IsDirectChild = $class.Base = $class.BuiltInBase
  194. ]using Altova.Types;
  195.  
  196. namespace [=$QualifiedNamespace]
  197. {
  198.  
  199.     public class [=$class.Name] : [=$class.Base]
  200.     {
  201.         public [=$class.Name](string newValue) : base(newValue)
  202.         {
  203.             Validate();
  204.         }
  205.  
  206.         public void Validate()
  207.         {
  208. [                    foreach $facet in $class.Facets
  209.                         if $facet.IsMinLength
  210. ]            if (Value.Length < GetMinLength())
  211.                 throw new System.Exception("Too short");
  212. [                        else:if $facet.IsMaxLength
  213. ]            if (Value.Length > GetMaxLength())
  214.                 throw new System.Exception("Too long");
  215. [                        else:if $facet.IsLength]
  216.             if (Value.Length != GetRequiredLength())
  217.                 throw new System.Exception("Invalid length");
  218. [                        else:if $facet.IsMinInclusive]
  219.             if (CompareTo(GetMinInclusive()) < 0)
  220.                 throw new System.Exception("Out of range");
  221. [                        else:if $facet.IsMinExclusive]
  222.             if (CompareTo(GetMinExclusive()) <= 0)
  223.                 throw new System.Exception("Out of range");
  224. [                        else:if $facet.IsMaxExclusive]
  225.             if (CompareTo(GetMaxExclusive()) >= 0)
  226.                 throw new System.Exception("Out of range");
  227. [                        else:if $facet.IsMaxInclusive]
  228.             if (CompareTo(GetMaxInclusive()) > 0)
  229.                 throw new System.Exception("Out of range");
  230. [                        endif:endif:endif:endif:endif:endif:endif
  231.                     next
  232. ]        }
  233. [
  234.                     foreach $facet in $class.Facets
  235.                         if $facet.IsMinLength
  236. ]        public int GetMinLength()
  237.         {
  238.             return [=$facet.Constraint];
  239.         }
  240. [                        else:if $facet.IsMaxLength
  241. ]        public int GetMaxLength()
  242.         {
  243.             return [=$facet.Constraint];
  244.         }
  245. [                        else:if $facet.IsLength
  246. ]        public int GetRequiredLength()
  247.         {
  248.             return [=$facet.Constraint];
  249.         }
  250. [                        else:if $facet.IsMinInclusive
  251. ]        public [=$class.BuiltInBase] GetMinInclusive()
  252.         {
  253.             return new [=$class.BuiltInBase]("[=$facet.Constraint]");
  254.         }
  255. [                        else:if $facet.IsMinExclusive
  256. ]        public [=$class.BuiltInBase] GetMinExclusive()
  257.         {
  258.             return new [=$class.BuiltInBase]("[=$facet.Constraint]");
  259.         }
  260. [                        else:if $facet.IsMaxExclusive
  261. ]        public [=$class.BuiltInBase] GetMaxExclusive()
  262.         {
  263.             return new [=$class.BuiltInBase]("[=$facet.Constraint]");
  264.         }
  265. [                        else:if $facet.IsMaxInclusive
  266. ]        public [=$class.BuiltInBase] GetMaxInclusive()
  267.         {
  268.             return new [=$class.BuiltInBase]("[=$facet.Constraint]");
  269.         }
  270. [                        endif:endif:endif:endif:endif:endif:endif
  271.                     next
  272. ]    }
  273. }
  274. [                endif
  275.             endif
  276. ]