Program: 160402
Project: 160402
Buggy source:
public String generate(Object argument){
  final StringBuffer stringBuffer=new StringBuffer();
  stringBuffer.append(TEXT_1);
  stringBuffer.append(TEXT_2);
  stringBuffer.append(TEXT_3);
  stringBuffer.append(Licenser.getCommentedLicenseText(new File("String_Node_Str")));
  stringBuffer.append(TEXT_4);
  try {
    Object[] argumentsArray=(Object[])argument;
    MetaDataManager metaDataManager=(MetaDataManager)argumentsArray[0];
    @SuppressWarnings("String_Node_Str") Set<EPackage> ePackages=(Set<EPackage>)argumentsArray[1];
    for (    EPackage ePackage : ePackages) {
      for (      EClassifier eClassifier : ePackage.getEClassifiers()) {
        if (eClassifier instanceof EClass) {
          EClass eClass=(EClass)eClassifier;
          stringBuffer.append(TEXT_5);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_6);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_7);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_8);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_9);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_10);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_11);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_12);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_13);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_14);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_15);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_16);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_17);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_18);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_19);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_20);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_21);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_22);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_23);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_24);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_25);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_26);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_27);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_28);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_29);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_30);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_31);
          if (metaDataManager.getPackageMetaData(ePackage.getName()).getDirectSubClasses(eClass) != null && !metaDataManager.getPackageMetaData(ePackage.getName()).getDirectSubClasses(eClass).isEmpty()) {
            for (            EClass subClass : metaDataManager.getPackageMetaData(ePackage.getName()).getDirectSubClasses(eClass)) {
              stringBuffer.append(TEXT_32);
              stringBuffer.append(metaDataManager.getPackageMetaData(ePackage.getName()).getDirectSubClasses(eClass).iterator().next() == subClass ? "String_Node_Str" : "String_Node_Str");
              stringBuffer.append(TEXT_33);
              stringBuffer.append(subClass.getName());
              stringBuffer.append(TEXT_34);
              stringBuffer.append(subClass.getName());
              stringBuffer.append(TEXT_35);
            }
          }
          stringBuffer.append(TEXT_36);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_37);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_38);
          if (eClass.getEAnnotation("String_Node_Str") == null) {
            stringBuffer.append(TEXT_39);
          }
          for (          EAttribute eAttribute : eClass.getEAllAttributes()) {
            if (eAttribute.getEType() instanceof EEnum) {
              stringBuffer.append(TEXT_40);
              stringBuffer.append(StringUtils.firstUpperCase(eAttribute.getName()));
              stringBuffer.append(TEXT_41);
              stringBuffer.append(eAttribute.getEType().getName());
              stringBuffer.append(TEXT_42);
              stringBuffer.append(StringUtils.firstUpperCase(eAttribute.getName()));
              stringBuffer.append(TEXT_43);
            }
 else {
              if (eAttribute.isMany()) {
                stringBuffer.append(TEXT_44);
                stringBuffer.append(StringUtils.firstUpperCase(eAttribute.getName()));
                stringBuffer.append(TEXT_45);
                stringBuffer.append(eAttribute.getEType() == EcorePackage.eINSTANCE.getEBoolean() ? "String_Node_Str" : "String_Node_Str");
                stringBuffer.append(StringUtils.firstUpperCase(eAttribute.getName()));
                stringBuffer.append(TEXT_46);
              }
 else {
                stringBuffer.append(TEXT_47);
                stringBuffer.append(StringUtils.firstUpperCase(eAttribute.getName()));
                stringBuffer.append(TEXT_48);
                stringBuffer.append(eAttribute.getEType() == EcorePackage.eINSTANCE.getEBoolean() ? "String_Node_Str" : "String_Node_Str");
                stringBuffer.append(StringUtils.firstUpperCase(eAttribute.getName()));
                stringBuffer.append(TEXT_49);
              }
            }
          }
          for (          EReference eReference : eClass.getEAllReferences()) {
            if (eReference.isMany()) {
              if (eReference.getEAnnotation("String_Node_Str") != null) {
                stringBuffer.append(TEXT_50);
                stringBuffer.append(eReference.getEType().getName());
                stringBuffer.append(TEXT_51);
                stringBuffer.append(eReference.getName());
                stringBuffer.append(TEXT_52);
                stringBuffer.append(eReference.getEType().getName());
                stringBuffer.append(TEXT_53);
                stringBuffer.append(eReference.getEType().getName());
                stringBuffer.append(TEXT_54);
                stringBuffer.append(StringUtils.firstUpperCase(eReference.getName()));
                stringBuffer.append(TEXT_55);
                stringBuffer.append(eReference.getName());
                stringBuffer.append(TEXT_56);
                stringBuffer.append(StringUtils.firstUpperCase(eReference.getName()));
                stringBuffer.append(TEXT_57);
                stringBuffer.append(eReference.getName());
                stringBuffer.append(TEXT_58);
              }
 else {
                stringBuffer.append(TEXT_59);
                stringBuffer.append(eReference.getName());
                stringBuffer.append(TEXT_60);
                stringBuffer.append(eReference.getEType().getName());
                stringBuffer.append(TEXT_61);
                stringBuffer.append(StringUtils.firstUpperCase(eReference.getName()));
                stringBuffer.append(TEXT_62);
                stringBuffer.append(eReference.getName());
                stringBuffer.append(TEXT_63);
                stringBuffer.append(StringUtils.firstUpperCase(eReference.getName()));
                stringBuffer.append(TEXT_64);
                stringBuffer.append(eReference.getName());
                stringBuffer.append(TEXT_65);
              }
            }
 else {
              if (eReference.getEAnnotation("String_Node_Str") != null) {
                stringBuffer.append(TEXT_66);
                stringBuffer.append(eReference.getEType().getName());
                stringBuffer.append(TEXT_67);
                stringBuffer.append(eReference.getName());
                stringBuffer.append(TEXT_68);
                stringBuffer.append(StringUtils.firstUpperCase(eReference.getName()));
                stringBuffer.append(TEXT_69);
                stringBuffer.append(StringUtils.firstUpperCase(eReference.getName()));
                stringBuffer.append(TEXT_70);
                stringBuffer.append(eReference.getName());
                stringBuffer.append(TEXT_71);
              }
 else {
                stringBuffer.append(TEXT_72);
                stringBuffer.append(eReference.getEType().getName());
                stringBuffer.append(TEXT_73);
                stringBuffer.append(eReference.getName());
                stringBuffer.append(TEXT_74);
                stringBuffer.append(StringUtils.firstUpperCase(eReference.getName()));
                stringBuffer.append(TEXT_75);
                stringBuffer.append(StringUtils.firstUpperCase(eReference.getName()));
                stringBuffer.append(TEXT_76);
                stringBuffer.append(eReference.getName());
                stringBuffer.append(TEXT_77);
                stringBuffer.append(eReference.getName());
                stringBuffer.append(TEXT_78);
              }
            }
          }
          stringBuffer.append(TEXT_79);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_80);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_81);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_82);
          stringBuffer.append(StringUtils.firstUpperCase(eClass.getEPackage().getName()));
          stringBuffer.append(TEXT_83);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_84);
          if (eClass.getEAnnotation("String_Node_Str") == null) {
            stringBuffer.append(TEXT_85);
          }
          stringBuffer.append(TEXT_86);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_87);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_88);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_89);
          if (!metaDataManager.getPackageMetaData(ePackage.getName()).getDirectSubClasses(eClass).isEmpty()) {
            for (            EClass subClass : metaDataManager.getPackageMetaData(ePackage.getName()).getDirectSubClasses(eClass)) {
              stringBuffer.append(TEXT_90);
              stringBuffer.append(metaDataManager.getPackageMetaData(ePackage.getName()).getDirectSubClasses(eClass).iterator().next() == subClass ? "String_Node_Str" : "String_Node_Str");
              stringBuffer.append(TEXT_91);
              stringBuffer.append(subClass.getName());
              stringBuffer.append(TEXT_92);
              stringBuffer.append(subClass.getName());
              stringBuffer.append(TEXT_93);
            }
          }
          for (          EAttribute eAttribute : eClass.getEAllAttributes()) {
            if (eAttribute.getEType() instanceof EEnum) {
              stringBuffer.append(TEXT_94);
              stringBuffer.append(StringUtils.firstUpperCase(eAttribute.getName()));
              stringBuffer.append(TEXT_95);
              stringBuffer.append(eAttribute.getEType().getName());
              stringBuffer.append(TEXT_96);
              stringBuffer.append(StringUtils.firstUpperCase(eAttribute.getName()));
              stringBuffer.append(TEXT_97);
            }
 else {
              if (eAttribute.isMany()) {
                stringBuffer.append(TEXT_98);
                stringBuffer.append(StringUtils.firstUpperCase(eAttribute.getName()));
                stringBuffer.append(TEXT_99);
                stringBuffer.append(eAttribute.getEType() == EcorePackage.eINSTANCE.getEBoolean() ? "String_Node_Str" : "String_Node_Str");
                stringBuffer.append(StringUtils.firstUpperCase(eAttribute.getName()));
                stringBuffer.append(TEXT_100);
              }
 else {
                stringBuffer.append(TEXT_101);
                stringBuffer.append(StringUtils.firstUpperCase(eAttribute.getName()));
                stringBuffer.append(TEXT_102);
                stringBuffer.append(eAttribute.getEType() == EcorePackage.eINSTANCE.getEBoolean() ? "String_Node_Str" : "String_Node_Str");
                stringBuffer.append(StringUtils.firstUpperCase(eAttribute.getName()));
                stringBuffer.append(TEXT_103);
              }
            }
          }
          for (          EReference eReference : eClass.getEAllReferences()) {
            if (eReference.isMany()) {
              if (eReference.getEAnnotation("String_Node_Str") != null) {
                stringBuffer.append(TEXT_104);
                stringBuffer.append(eReference.getEType().getName());
                stringBuffer.append(TEXT_105);
                stringBuffer.append(eReference.getName());
                stringBuffer.append(TEXT_106);
                stringBuffer.append(StringUtils.firstUpperCase(eReference.getName()));
                stringBuffer.append(TEXT_107);
                stringBuffer.append(eReference.getEType().getName());
                stringBuffer.append(TEXT_108);
                stringBuffer.append(StringUtils.firstUpperCase(eReference.getName()));
                stringBuffer.append(TEXT_109);
                stringBuffer.append(eReference.getName());
                stringBuffer.append(TEXT_110);
              }
 else {
                stringBuffer.append(TEXT_111);
                stringBuffer.append(eReference.getEType().getName());
                stringBuffer.append(TEXT_112);
                stringBuffer.append(eReference.getName());
                stringBuffer.append(TEXT_113);
                stringBuffer.append(StringUtils.firstUpperCase(eReference.getName()));
                stringBuffer.append(TEXT_114);
                stringBuffer.append(StringUtils.firstUpperCase(eReference.getName()));
                stringBuffer.append(TEXT_115);
                stringBuffer.append(eReference.getName());
                stringBuffer.append(TEXT_116);
                stringBuffer.append(eReference.getEType().getName());
                stringBuffer.append(TEXT_117);
                stringBuffer.append(StringUtils.firstUpperCase(eReference.getEType().getEPackage().getName()));
                stringBuffer.append(TEXT_118);
                stringBuffer.append(eReference.getEType().getName());
                stringBuffer.append(TEXT_119);
              }
            }
 else {
              if (eReference.getEAnnotation("String_Node_Str") != null) {
                stringBuffer.append(TEXT_120);
                stringBuffer.append(StringUtils.firstUpperCase(eReference.getName()));
                stringBuffer.append(TEXT_121);
                stringBuffer.append(StringUtils.firstUpperCase(eReference.getName()));
                stringBuffer.append(TEXT_122);
              }
 else {
                stringBuffer.append(TEXT_123);
                stringBuffer.append(StringUtils.firstUpperCase(eReference.getName()));
                stringBuffer.append(TEXT_124);
                stringBuffer.append(eReference.getEType().getName());
                stringBuffer.append(TEXT_125);
                stringBuffer.append(StringUtils.firstUpperCase(eReference.getEType().getEPackage().getName()));
                stringBuffer.append(TEXT_126);
                stringBuffer.append(eReference.getEType().getName());
                stringBuffer.append(TEXT_127);
                stringBuffer.append(StringUtils.firstUpperCase(eReference.getName()));
                stringBuffer.append(TEXT_128);
              }
            }
          }
          stringBuffer.append(TEXT_129);
        }
 else         if (eClassifier instanceof EEnum) {
          EEnum eEnum=(EEnum)eClassifier;
          stringBuffer.append(TEXT_130);
          stringBuffer.append(eEnum.getName());
          stringBuffer.append(TEXT_131);
          stringBuffer.append(eEnum.getName());
          stringBuffer.append(TEXT_132);
          stringBuffer.append(eEnum.getName());
          stringBuffer.append(TEXT_133);
          stringBuffer.append(eEnum.getName());
          stringBuffer.append(TEXT_134);
          stringBuffer.append(eEnum.getName());
          stringBuffer.append(TEXT_135);
          stringBuffer.append(eEnum.getName());
          stringBuffer.append(TEXT_136);
        }
      }
    }
  }
 catch (  Exception e) {
    e.printStackTrace();
  }
  stringBuffer.append(TEXT_137);
  return stringBuffer.toString();
}

Fixed version (ground truth):
public String generate(Object argument){
  final StringBuffer stringBuffer=new StringBuffer();
  stringBuffer.append(TEXT_1);
  stringBuffer.append(TEXT_2);
  stringBuffer.append(TEXT_3);
  stringBuffer.append(Licenser.getCommentedLicenseText(new File("String_Node_Str")));
  stringBuffer.append(TEXT_4);
  try {
    Object[] argumentsArray=(Object[])argument;
    MetaDataManager metaDataManager=(MetaDataManager)argumentsArray[0];
    @SuppressWarnings("String_Node_Str") Set<EPackage> ePackages=(Set<EPackage>)argumentsArray[1];
    for (    EPackage ePackage : ePackages) {
      for (      EClassifier eClassifier : ePackage.getEClassifiers()) {
        if (eClassifier instanceof EClass) {
          EClass eClass=(EClass)eClassifier;
          stringBuffer.append(TEXT_5);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_6);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_7);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_8);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_9);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_10);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_11);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_12);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_13);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_14);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_15);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_16);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_17);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_18);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_19);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_20);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_21);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_22);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_23);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_24);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_25);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_26);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_27);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_28);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_29);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_30);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_31);
          if (metaDataManager.getPackageMetaData(ePackage.getName()).getDirectSubClasses(eClass) != null && !metaDataManager.getPackageMetaData(ePackage.getName()).getDirectSubClasses(eClass).isEmpty()) {
            for (            EClass subClass : metaDataManager.getPackageMetaData(ePackage.getName()).getDirectSubClasses(eClass)) {
              stringBuffer.append(TEXT_32);
              stringBuffer.append(metaDataManager.getPackageMetaData(ePackage.getName()).getDirectSubClasses(eClass).iterator().next() == subClass ? "String_Node_Str" : "String_Node_Str");
              stringBuffer.append(TEXT_33);
              stringBuffer.append(subClass.getName());
              stringBuffer.append(TEXT_34);
              stringBuffer.append(subClass.getName());
              stringBuffer.append(TEXT_35);
            }
          }
          stringBuffer.append(TEXT_36);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_37);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_38);
          if (eClass.getEAnnotation("String_Node_Str") == null) {
            stringBuffer.append(TEXT_39);
          }
          for (          EAttribute eAttribute : eClass.getEAllAttributes()) {
            if (eAttribute.getEType() instanceof EEnum) {
              stringBuffer.append(TEXT_40);
              stringBuffer.append(StringUtils.firstUpperCase(eAttribute.getName()));
              stringBuffer.append(TEXT_41);
              stringBuffer.append(eAttribute.getEType().getName());
              stringBuffer.append(TEXT_42);
              stringBuffer.append(StringUtils.firstUpperCase(eAttribute.getName()));
              stringBuffer.append(TEXT_43);
            }
 else {
              if (eAttribute.isMany()) {
                stringBuffer.append(TEXT_44);
                stringBuffer.append(StringUtils.firstUpperCase(eAttribute.getName()));
                stringBuffer.append(TEXT_45);
                stringBuffer.append(eAttribute.getEType() == EcorePackage.eINSTANCE.getEBoolean() ? "String_Node_Str" : "String_Node_Str");
                stringBuffer.append(StringUtils.firstUpperCase(eAttribute.getName()));
                stringBuffer.append(TEXT_46);
              }
 else {
                stringBuffer.append(TEXT_47);
                stringBuffer.append(StringUtils.firstUpperCase(eAttribute.getName()));
                stringBuffer.append(TEXT_48);
                stringBuffer.append(eAttribute.getEType() == EcorePackage.eINSTANCE.getEBoolean() ? "String_Node_Str" : "String_Node_Str");
                stringBuffer.append(StringUtils.firstUpperCase(eAttribute.getName()));
                stringBuffer.append(TEXT_49);
              }
            }
          }
          for (          EReference eReference : eClass.getEAllReferences()) {
            if (eReference.isMany()) {
              if (eReference.getEAnnotation("String_Node_Str") != null) {
                stringBuffer.append(TEXT_50);
                stringBuffer.append(eReference.getEType().getName());
                stringBuffer.append(TEXT_51);
                stringBuffer.append(eReference.getName());
                stringBuffer.append(TEXT_52);
                stringBuffer.append(eReference.getEType().getName());
                stringBuffer.append(TEXT_53);
                stringBuffer.append(eReference.getEType().getName());
                stringBuffer.append(TEXT_54);
                stringBuffer.append(StringUtils.firstUpperCase(eReference.getName()));
                stringBuffer.append(TEXT_55);
                stringBuffer.append(eReference.getName());
                stringBuffer.append(TEXT_56);
                stringBuffer.append(StringUtils.firstUpperCase(eReference.getName()));
                stringBuffer.append(TEXT_57);
                stringBuffer.append(eReference.getName());
                stringBuffer.append(TEXT_58);
              }
 else {
                stringBuffer.append(TEXT_59);
                stringBuffer.append(eReference.getName());
                stringBuffer.append(TEXT_60);
                stringBuffer.append(eReference.getEType().getName());
                stringBuffer.append(TEXT_61);
                stringBuffer.append(StringUtils.firstUpperCase(eReference.getName()));
                stringBuffer.append(TEXT_62);
                stringBuffer.append(eReference.getName());
                stringBuffer.append(TEXT_63);
                stringBuffer.append(StringUtils.firstUpperCase(eReference.getName()));
                stringBuffer.append(TEXT_64);
                stringBuffer.append(eReference.getName());
                stringBuffer.append(TEXT_65);
              }
            }
 else {
              if (eReference.getEAnnotation("String_Node_Str") != null) {
                stringBuffer.append(TEXT_66);
                stringBuffer.append(eReference.getEType().getName());
                stringBuffer.append(TEXT_67);
                stringBuffer.append(eReference.getName());
                stringBuffer.append(TEXT_68);
                stringBuffer.append(StringUtils.firstUpperCase(eReference.getName()));
                stringBuffer.append(TEXT_69);
                stringBuffer.append(StringUtils.firstUpperCase(eReference.getName()));
                stringBuffer.append(TEXT_70);
                stringBuffer.append(eReference.getName());
                stringBuffer.append(TEXT_71);
              }
 else {
                stringBuffer.append(TEXT_72);
                stringBuffer.append(eReference.getEType().getName());
                stringBuffer.append(TEXT_73);
                stringBuffer.append(eReference.getName());
                stringBuffer.append(TEXT_74);
                stringBuffer.append(StringUtils.firstUpperCase(eReference.getName()));
                stringBuffer.append(TEXT_75);
                stringBuffer.append(StringUtils.firstUpperCase(eReference.getName()));
                stringBuffer.append(TEXT_76);
                stringBuffer.append(eReference.getName());
                stringBuffer.append(TEXT_77);
                stringBuffer.append(eReference.getName());
                stringBuffer.append(TEXT_78);
              }
            }
          }
          stringBuffer.append(TEXT_79);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_80);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_81);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_82);
          stringBuffer.append(StringUtils.firstUpperCase(eClass.getEPackage().getName()));
          stringBuffer.append(TEXT_83);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_84);
          if (eClass.getEAnnotation("String_Node_Str") == null) {
            stringBuffer.append(TEXT_85);
          }
          stringBuffer.append(TEXT_86);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_87);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_88);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_89);
          stringBuffer.append(StringUtils.firstUpperCase(eClass.getEPackage().getName()));
          stringBuffer.append(TEXT_90);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_91);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_92);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_93);
          stringBuffer.append(eClass.getName());
          stringBuffer.append(TEXT_94);
          if (!metaDataManager.getPackageMetaData(ePackage.getName()).getDirectSubClasses(eClass).isEmpty()) {
            for (            EClass subClass : metaDataManager.getPackageMetaData(ePackage.getName()).getDirectSubClasses(eClass)) {
              stringBuffer.append(TEXT_95);
              stringBuffer.append(metaDataManager.getPackageMetaData(ePackage.getName()).getDirectSubClasses(eClass).iterator().next() == subClass ? "String_Node_Str" : "String_Node_Str");
              stringBuffer.append(TEXT_96);
              stringBuffer.append(subClass.getName());
              stringBuffer.append(TEXT_97);
              stringBuffer.append(subClass.getName());
              stringBuffer.append(TEXT_98);
            }
          }
          for (          EAttribute eAttribute : eClass.getEAllAttributes()) {
            if (eAttribute.getEType() instanceof EEnum) {
              stringBuffer.append(TEXT_99);
              stringBuffer.append(StringUtils.firstUpperCase(eAttribute.getName()));
              stringBuffer.append(TEXT_100);
              stringBuffer.append(eAttribute.getEType().getName());
              stringBuffer.append(TEXT_101);
              stringBuffer.append(StringUtils.firstUpperCase(eAttribute.getName()));
              stringBuffer.append(TEXT_102);
            }
 else {
              if (eAttribute.isMany()) {
                stringBuffer.append(TEXT_103);
                stringBuffer.append(StringUtils.firstUpperCase(eAttribute.getName()));
                stringBuffer.append(TEXT_104);
                stringBuffer.append(eAttribute.getEType() == EcorePackage.eINSTANCE.getEBoolean() ? "String_Node_Str" : "String_Node_Str");
                stringBuffer.append(StringUtils.firstUpperCase(eAttribute.getName()));
                stringBuffer.append(TEXT_105);
              }
 else {
                stringBuffer.append(TEXT_106);
                stringBuffer.append(StringUtils.firstUpperCase(eAttribute.getName()));
                stringBuffer.append(TEXT_107);
                stringBuffer.append(eAttribute.getEType() == EcorePackage.eINSTANCE.getEBoolean() ? "String_Node_Str" : "String_Node_Str");
                stringBuffer.append(StringUtils.firstUpperCase(eAttribute.getName()));
                stringBuffer.append(TEXT_108);
              }
            }
          }
          for (          EReference eReference : eClass.getEAllReferences()) {
            if (eReference.isMany()) {
              if (eReference.getEAnnotation("String_Node_Str") != null) {
                stringBuffer.append(TEXT_109);
                stringBuffer.append(eReference.getEType().getName());
                stringBuffer.append(TEXT_110);
                stringBuffer.append(eReference.getName());
                stringBuffer.append(TEXT_111);
                stringBuffer.append(StringUtils.firstUpperCase(eReference.getName()));
                stringBuffer.append(TEXT_112);
                stringBuffer.append(eReference.getEType().getName());
                stringBuffer.append(TEXT_113);
                stringBuffer.append(StringUtils.firstUpperCase(eReference.getName()));
                stringBuffer.append(TEXT_114);
                stringBuffer.append(eReference.getName());
                stringBuffer.append(TEXT_115);
              }
 else {
                stringBuffer.append(TEXT_116);
                stringBuffer.append(eReference.getEType().getName());
                stringBuffer.append(TEXT_117);
                stringBuffer.append(eReference.getName());
                stringBuffer.append(TEXT_118);
                stringBuffer.append(StringUtils.firstUpperCase(eReference.getName()));
                stringBuffer.append(TEXT_119);
                stringBuffer.append(StringUtils.firstUpperCase(eReference.getName()));
                stringBuffer.append(TEXT_120);
                stringBuffer.append(eReference.getName());
                stringBuffer.append(TEXT_121);
                stringBuffer.append(eReference.getEType().getName());
                stringBuffer.append(TEXT_122);
                stringBuffer.append(StringUtils.firstUpperCase(eReference.getEType().getEPackage().getName()));
                stringBuffer.append(TEXT_123);
                stringBuffer.append(eReference.getEType().getName());
                stringBuffer.append(TEXT_124);
              }
            }
 else {
              if (eReference.getEAnnotation("String_Node_Str") != null) {
                stringBuffer.append(TEXT_125);
                stringBuffer.append(StringUtils.firstUpperCase(eReference.getName()));
                stringBuffer.append(TEXT_126);
                stringBuffer.append(StringUtils.firstUpperCase(eReference.getName()));
                stringBuffer.append(TEXT_127);
              }
 else {
                stringBuffer.append(TEXT_128);
                stringBuffer.append(StringUtils.firstUpperCase(eReference.getName()));
                stringBuffer.append(TEXT_129);
                stringBuffer.append(eReference.getEType().getName());
                stringBuffer.append(TEXT_130);
                stringBuffer.append(StringUtils.firstUpperCase(eReference.getEType().getEPackage().getName()));
                stringBuffer.append(TEXT_131);
                stringBuffer.append(eReference.getEType().getName());
                stringBuffer.append(TEXT_132);
                stringBuffer.append(StringUtils.firstUpperCase(eReference.getName()));
                stringBuffer.append(TEXT_133);
              }
            }
          }
          stringBuffer.append(TEXT_134);
        }
 else         if (eClassifier instanceof EEnum) {
          EEnum eEnum=(EEnum)eClassifier;
          stringBuffer.append(TEXT_135);
          stringBuffer.append(eEnum.getName());
          stringBuffer.append(TEXT_136);
          stringBuffer.append(eEnum.getName());
          stringBuffer.append(TEXT_137);
          stringBuffer.append(eEnum.getName());
          stringBuffer.append(TEXT_138);
          stringBuffer.append(eEnum.getName());
          stringBuffer.append(TEXT_139);
          stringBuffer.append(eEnum.getName());
          stringBuffer.append(TEXT_140);
          stringBuffer.append(eEnum.getName());
          stringBuffer.append(TEXT_141);
        }
      }
    }
  }
 catch (  Exception e) {
    e.printStackTrace();
  }
  stringBuffer.append(TEXT_142);
  return stringBuffer.toString();
}