public override String GetText()
 {
     //comments
     if (HeaderComment != null)
     {
         Template = Template.Replace(headerCommentToken, HeaderComment.GetText());
     }
     if (HttpHeaderFunctionComment != null)
     {
         Template = Template.Replace(httpHeaderFunctionCommentToken, HttpHeaderFunctionComment.GetText());
     }
     if (ConstructorComment != null)
     {
         Template = Template.Replace(constructorCommentToken, ConstructorComment.GetText());
     }
     if (ConstructorParamters.Any())
     {
         Template = Template.Replace(ConstructorParamterTag, ConstructorParamters.Aggregate((a, b) => a + "," + b));
     }
     //class name
     Template = Template.Replace(classNameToken, Name);
     //Properties
     if (jsProperties.Any())
     {
         Template = Template.Replace(PropertiesToken, jsProperties.Select(x => x.GetText()).Aggregate((a, b) => a + "\r\n" + b));
     }
     //Methods
     if (Methods.Any())
     {
         Template = Template.Replace(MethodToken, Methods.Select(x => x.GetText()).Aggregate((a, b) => a + "\r\n" + b));
     }
     //remove unusedTokens
     CleanTemplateUp();
     return(Template);
 }