ATMLWorkBench.utils.ClassBuilder.writeClass C# (CSharp) Method

writeClass() public method

public writeClass ( ) : String
return String
        public String writeClass()
        {
            StringBuilder sb = new StringBuilder();
            sb.Append( "using System;\r\n" );
            sb.Append( "using System.Collections.Generic;\r\n" );
            sb.Append( "using System.Linq;\r\n" );
            sb.Append( "using System.Text;\r\n" );
            sb.Append( "using System.IO;\r\n" );
            sb.Append( "using System.Xml;\r\n" );
            sb.Append( "namespace UTRSATMLWorkBench.utils\r\n" );
            sb.Append( "{\r\n" );
            sb.Append("\t/*\r\n");
            sb.Append("\t").Append( Description ).Append( "\r\n" );
            sb.Append("\t*/\r\n");
            sb.Append("\tpublic class ").Append(name);
            if( base_ != null )
                sb.Append(" : ").Append(base_);
            sb.Append("\r\n");
            sb.Append("\t{\r\n");
            sb.Append("\t\tprivate String regularExpressionPattern =\"").Append( RegExp ).Append( "\";\r\n" );

            if( enumerations.Count > 0 )
            {
                sb.Append("\t\tpublic enum Enumeration\r\n\t\t\r\n" );
                foreach( String value in enumerations )
                {
                    sb.Append("\t\t\t").Append( value ).Append( ", \r\n" );
                }
                sb.Length = sb.Length - 4;
                sb.Append("\r\n\t\t}\r\n");

            }

            sb.Append("\t}\r\n");
            sb.Append("}\r\n");
            return sb.ToString();
        }

Usage Example

        private void processSimpleType(XmlNode simpleTypeNode)
        {
            ClassBuilder cb       = new ClassBuilder();
            XmlNodeList  children = simpleTypeNode.ChildNodes;

            foreach (XmlNode child in children)
            {
                cb.Name = simpleTypeNode.Attributes["name"].Value.Replace("cs:", "");
                if (child.Name.Equals("xs:annotation"))
                {
                    XmlNode docmentation = getChild("xs:documentation", child);
                    if (docmentation != null)
                    {
                        cb.Description = docmentation.Value;
                    }
                }
                else if (child.Name.Equals("xs:restriction"))
                {
                    XmlAttribute base_ = child.Attributes["base"];
                    if (base_ != null)
                    {
                        cb.Base_ = base_.Value.Replace("cs:", "");
                    }

                    XmlNode pattern = getChild("xs:pattern", child);
                    if (pattern != null)
                    {
                        cb.RegExp = pattern.Attributes["value"].Value;
                    }
                }
                else if (child.Name.Equals("xs:list"))
                {
                }
                else if (child.Name.Equals("xs:union"))
                {
                    XmlNodeList gcs = child.ChildNodes;
                    foreach (XmlNode gc in gcs)
                    {
                        if (gc.Name.Equals("xs:simpleType"))
                        {
                            processSimpleType(gc);
                        }
                    }
                }
                else if (child.Name.Equals("xs:enumeration"))
                {
                    cb.addEnumeration(child.Attributes["value"].Value);
                }
                else
                {
                }
            }

            Console.WriteLine(cb.writeClass());
        }
All Usage Examples Of ATMLWorkBench.utils.ClassBuilder::writeClass