Eclipseplugins
pAHeader.java
1 package com.proalpha.pds.templates.jet.version61;
2 
3 import com.openedge.pdt.core.template.TemplateGenerationException;
4 import com.proalpha.pds.templates.jet.IpaTemplateGenerator;
5 import com.proalpha.pds.templates.data.GeneratorSettingsConstans;
6 
7 import java.util.Map;
8 import java.util.Date;
9 import java.text.SimpleDateFormat;
10 import com.proalpha.pds.templates.helper.CodeFormatter;
11 
12 public class pAHeader implements IpaTemplateGenerator
13 {
14  protected static String nl;
15  public static synchronized pAHeader create(String lineSeparator)
16  {
17  nl = lineSeparator;
18  pAHeader result = new pAHeader();
19  nl = null;
20  return result;
21  }
22 
23  public final String NL = nl == null ? (System.getProperties().getProperty("line.separator")) : nl;
24  protected final String TEXT_1 = "&ANALYZE-SUSPEND _VERSION-NUMBER UIB_v8r2 GUI" + NL + "&ANALYZE-RESUME" + NL;
25  protected final String TEXT_2 = NL + "&ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _DECLARATIONS V-table-Win " + NL + "routine-level on error undo, throw." + NL + "" + NL + "/* _UIB-CODE-BLOCK-END */ " + NL + "&ANALYZE-RESUME" + NL + NL;
26  protected final String TEXT_3 = NL + "&ANALYZE-SUSPEND _UIB-CODE-BLOCK _XFTR \"Update Information\" Procedure _INLINE" + NL + "/* Actions: ? ? ? ? adm/support/proc/ds_pa_01.w */" + NL + "" + NL + "/* _UIB-CODE-BLOCK-END */" + NL + "&ANALYZE-RESUME" + NL + "" + NL + "&ANALYZE-SUSPEND _UIB-CODE-BLOCK _CUSTOM _DEFINITIONS Procedure" + NL + "/******************************************************************************/" + NL + "/* @COPYRIGHT@ */" + NL + "/* Project: proALPHA */" + NL + "/* */";
27  protected final String TEXT_4 = NL;
28  protected final String TEXT_5 = NL + "/* */";
29  protected final String TEXT_6 = NL + "/* Current: @PAVERSION@ as of @PADATE@/@PALASTAUTHOR@ */" + NL + "/* */" + NL + "/*----------------------------------------------------------------------------*/" + NL + "/* DESCRIPTION */" + NL + "/*----------------------------------------------------------------------------*/" + NL + "/* */";
30  protected final String TEXT_7 = NL + "/* */" + NL + "/*----------------------------------------------------------------------------*/" + NL + "/* PARAMETERS */" + NL + "/*----------------------------------------------------------------------------*/" + NL + "/* Name Description */" + NL + "/*----------------------------------------------------------------------------*/" + NL + "/* */" + NL + "/*----------------------------------------------------------------------------*/" + NL + "/* HISTORY */" + NL + "/*----------------------------------------------------------------------------*/" + NL + "/*@FILEHISTORY@*/" + NL + "/******************************************************************************/";
31 
32 /* (non-javadoc)
33  * @see ITemplateGenerator#generate(Object)
34  */
35 public String generate(Map<String, Object> wizardSettings) throws TemplateGenerationException
36  {
37  final StringBuffer stringBuffer = new StringBuffer();
38  String author = (String)wizardSettings.get(GeneratorSettingsConstans.AUTHOR);
39  String description = (String)wizardSettings.get(GeneratorSettingsConstans.DESCRIPTION);
40  String fileName = (String)wizardSettings.get(GeneratorSettingsConstans.FILE_NAME);
41  String product = (String)wizardSettings.get(GeneratorSettingsConstans.PRODUCT);
42  String productDesc = (String)wizardSettings.get(GeneratorSettingsConstans.PRODUCT_DESCRIPTION);
43  String module = (String)wizardSettings.get("Module");
44  String moduleDesc = (String)wizardSettings.get(GeneratorSettingsConstans.MODULE_DESCRIPTION);
45  String version = (String)wizardSettings.get(GeneratorSettingsConstans.VERSION);
46  String xbasename = fileName.replace(".","_");
47  Date date = new Date();
48  SimpleDateFormat year = new SimpleDateFormat("yyyy");
49  SimpleDateFormat today = new SimpleDateFormat("dd.MM.yyyy");
50  stringBuffer.append(TEXT_1);
51  if ((fileName.endsWith(".p")) || (fileName.endsWith(".w") || (fileName.endsWith(".cls"))))
52 {
53  stringBuffer.append(TEXT_2);
54  }
55  stringBuffer.append(TEXT_3);
56  stringBuffer.append(TEXT_4);
57  stringBuffer.append(CodeFormatter.SingleLineComment("Name : " + fileName));
58  stringBuffer.append(TEXT_4);
59  stringBuffer.append(CodeFormatter.SingleLineComment("Product: " + product + " - " + productDesc ));
60  stringBuffer.append(TEXT_4);
61  stringBuffer.append(CodeFormatter.SingleLineComment("Module : " + module + " - " + moduleDesc ));
62  stringBuffer.append(TEXT_5);
63  stringBuffer.append(TEXT_4);
64  stringBuffer.append(CodeFormatter.SingleLineComment("Created: " + version + " as of " + today.format(date) + "/" + author));
65  stringBuffer.append(TEXT_6);
66  stringBuffer.append(TEXT_4);
67  stringBuffer.append(CodeFormatter.MultiLineComment(description));
68  stringBuffer.append(TEXT_7);
69  return stringBuffer.toString();
70  }
71 }