docs: public void writeThisMethod(CodeType codeType)
      {
          Record recClassInfo = this.getMainRecord();
          LogicFile recLogicFile = (LogicFile)this.getRecord(LogicFile.LOGIC_FILE_FILE);
          String strClassName = recClassInfo.getField(ClassInfo.CLASS_NAME).getString();
          MethodInfo methodInfo = new MethodInfo();
          m_MethodHelper.getTheMethodInfo(recLogicFile, methodInfo);   // Get the correct interface, etc..
          String strMethodName = recLogicFile.getField(LogicFile.METHOD_NAME).getString();
          String strMethodDesc = recLogicFile.getField(LogicFile.LOGIC_DESCRIPTION).getString();
          String strProtection = recLogicFile.getField(LogicFile.PROTECTION).getString();
          if (m_MethodNameList.addName(strMethodName) == false)
              return;     // Don't write it, its already here
          if (strMethodName.length() > 2) if (strMethodName.charAt(strMethodName.length() - 2) == '*')
              strMethodName = strMethodName.substring(0, strMethodName.length() - 2);
          if (strMethodName.equals(strClassName))
          {
              if (codeType == CodeType.THICK)
              {
                  if ("".equalsIgnoreCase(methodInfo.strMethodInterface))
                      return;    // Default constructor is already there
                  this.writeMethodInterface(strProtection, strMethodName, "", methodInfo.strMethodInterface, methodInfo.strMethodThrows, strMethodDesc, null);
                  this.writeDefaultMethodCode(strMethodName, methodInfo.strMethodReturns, methodInfo.strMethodInterface, strClassName);
              }
          }
          else
          {
              if (methodInfo.strMethodReturns.length() >= 7) if (methodInfo.strMethodReturns.substring(methodInfo.strMethodReturns.length() - 7, methodInfo.strMethodReturns.length()).equalsIgnoreCase("  "))
                  methodInfo.strMethodReturns = methodInfo.strMethodReturns.substring(0, methodInfo.strMethodReturns.length() - 6);
              String strCodeBody = null;
              if ((codeType == CodeType.INTERFACE) || ("interface".equals(recClassInfo.getField(ClassInfo.CLASS_TYPE).toString())))
              {
                  if (!((IncludeScopeField)recLogicFile.getField(LogicFile.INCLUDE_SCOPE)).includeThis(CodeType.INTERFACE, false))
                      return;
                  strCodeBody = ";\n";
              }
              else if (!((IncludeScopeField)recLogicFile.getField(LogicFile.INCLUDE_SCOPE)).includeThis(codeType, false))
              {   // Special case - write a default impl.
                  if ((methodInfo.strMethodReturns == null) || ("void".equals(methodInfo.strMethodReturns)) || (DBConstants.BLANK.equals(methodInfo.strMethodReturns)))
                      strCodeBody = "{\n\t// Empty implementation\n}\n";
                  else if ("boolean".equals(methodInfo.strMethodReturns))
                      strCodeBody = "{\n\treturn false; // Empty implementation\n}\n";
                  else if (("int".equals(methodInfo.strMethodReturns)) || ("short".equals(methodInfo.strMethodReturns)) || ("long".equals(methodInfo.strMethodReturns)))
                      strCodeBody = "{\n\treturn -1; // Empty implementation\n}\n";
                  else
                      strCodeBody = "{\n\treturn null; // Empty implementation\n}\n";
              }
              this.writeMethodInterface(strProtection, strMethodName, methodInfo.strMethodReturns, methodInfo.strMethodInterface, methodInfo.strMethodThrows, strMethodDesc, strCodeBody);
          }
          if ((codeType == CodeType.INTERFACE) || ("interface".equals(recClassInfo.getField(ClassInfo.CLASS_TYPE).toString())))
              return;
          if (!((IncludeScopeField)recLogicFile.getField(LogicFile.INCLUDE_SCOPE)).includeThis(codeType, false))
              return;
          if (!strMethodName.equals(strClassName))
          {
              if (recLogicFile.getField(LogicFile.LOGIC_SOURCE).getString().length() != 0)
              {
                  String strBaseClass;
                  strBaseClass = recClassInfo.getField(ClassInfo.BASE_CLASS_NAME).getString();
                  m_StreamOut.setTabs(+1);
                  this.writeTextField(recLogicFile.getField(LogicFile.LOGIC_SOURCE), strBaseClass, strMethodName, methodInfo.strMethodInterface, strClassName);
                  m_StreamOut.setTabs(-1);
              }
              else
                  this.writeDefaultMethodCode(strMethodName, methodInfo.strMethodReturns, methodInfo.strMethodInterface, strClassName);
          }
          m_StreamOut.writeit("}\n");
      }