Eclipseplugins
TemplatesUtils.java
1 package com.proalpha.pds.templates.helper;
2 
3 import java.util.regex.Matcher;
4 import java.util.regex.Pattern;
5 
6 import com.openedge.core.metadata.DataTypes;
7 import com.openedge.core.metadata.IDataType;
8 import com.openedge.core.reflect.IParameter;
9 
10 public class TemplatesUtils {
11 
12  public static String generateReturnStatement(String returnType,
13  String returnValue, String NL) {
14  StringBuilder buf = new StringBuilder();
15  if (!isVoid(returnType)) {
16  buf.append("RETURN ");
17  buf.append(returnValue);
18  buf.append(".");
19  }
20  buf.append(NL);
21  return buf.toString();
22  }
23 
24  public static String generateReturnVariableComment(String returnType,
25  String returnValue, String NL) {
26  StringBuilder buf = new StringBuilder();
27  if (!isVoid(returnType)) {
28  buf.append("/* ");
29  buf.append(returnValue);
30  buf.append(" method return value */");
31  }
32 
33  return buf.toString();
34  }
35 
36  public static String generateReturnVariable(String returnType,
37  String returnValue, String NL, Integer extent) {
38  StringBuilder buf = new StringBuilder();
39  if (!isVoid(returnType)) {
40  buf.append("DEFINE VARIABLE ");
41  buf.append(returnValue);
42  buf.append(" AS ");
43  buf.append(returnType);
44  buf.append(" NO-UNDO");
45  if (extent != 0)
46  buf.append(" EXTENT");
47  if (extent > 0) {
48  buf.append(" ");
49  buf.append("<EnterExtentValueHere>");
50  }
51  buf.append(".");
52  }
53  return buf.toString();
54  }
55 
56  public static String generateParameter(IParameter parameter, String NL) {
57  StringBuilder buf = new StringBuilder();
58 
59  buf.append(parameter.getMode());
60  buf.append(" ");
61  buf.append(parameter.getName());
62  buf.append(" AS ");
63  buf.append(parameter.getDataType());
64  if (parameter.getExtent() != 0)
65  buf.append(" EXTENT");
66  if (parameter.getExtent() > 0) {
67  buf.append(" ");
68  buf.append("<EnterExtentValueHere>");
69  }
70 
71  return buf.toString();
72  }
73 
74  private static Boolean isVoid(String returnType) {
75  IDataType dataType = DataTypes.getDataType(returnType);
76  return (dataType != null && dataType.equals(DataTypes.VOID));
77  }
78 
88  public static Boolean isFileUserExitInclude(String fileName) {
89  Pattern pattern = Pattern.compile(".*\\..{1}x.{1}",
90  Pattern.CASE_INSENSITIVE);
91  Matcher matcher = pattern.matcher(fileName);
92 
93  return matcher.matches();
94  }
95 }
static Boolean isFileUserExitInclude(String fileName)