/**
  * 获取模板引擎实例
  *
  * @param pTemplateType 引擎类型
  * @return 返回模板引擎实例
  */
 public static TemplateEngine getTemplateEngine(TemplateType pType) {
   if (pType == null) {
     return null;
   }
   if (ENGINES.containsKey(pType) == false) {
     throw new IllegalArgumentException(
         G4Constants.Exception_Head + "不支持的模板类别:" + pType.getType());
   }
   return (TemplateEngine) ENGINES.get(pType);
 }
 public TNode parse(Path path) {
   try {
     final TNode root = parse(Files.readAllBytes(path), TemplateType.fromPath(path));
     root.setUnparsedSize(Files.size(path));
     return root;
   } catch (IOException e) {
     throw new TemplateException(e);
   } catch (TemplateException e) {
     if (e.getCause() != null) {
       throw new TemplateException(
           "Error when parsing " + path + ":" + e.getCause().getMessage(), e.getCause());
     } else {
       throw new TemplateException("Error when parsing " + path + ":" + e.getMessage(), e);
     }
   }
 }
예제 #3
0
 public static Template createTemplate(
     String format, InputStream in, Map<String, Object> options) {
   TemplateType type = TemplateType.getByFormat(format);
   Template template;
   switch (type) {
     case EXCEL:
       template = new ExcelTemplate(in, options);
       break;
     case WORD:
       template = new WordTemplate(in, options);
       break;
     case WORD_PDF:
       template = new WordPdfTemplate(in, options);
       break;
     default:
       throw new IllegalArgumentException("Unknown template type for " + format);
   }
   return template;
 }
예제 #4
0
  public static Template fromJson(final JsonCommand command) {
    final String name = command.stringValueOfParameterNamed("name");
    final String text = command.stringValueOfParameterNamed("text");
    final TemplateEntity entity =
        TemplateEntity.values()[command.integerValueSansLocaleOfParameterNamed("entity")];
    final TemplateType type =
        TemplateType.values()[command.integerValueSansLocaleOfParameterNamed("type")];

    final JsonArray array = command.arrayOfParameterNamed("mappers");

    final List<TemplateMapper> mappersList = new ArrayList<>();

    for (final JsonElement element : array) {
      mappersList.add(
          new TemplateMapper(
              element.getAsJsonObject().get("mappersorder").getAsInt(),
              element.getAsJsonObject().get("mapperskey").getAsString(),
              element.getAsJsonObject().get("mappersvalue").getAsString()));
    }

    return new Template(name, text, entity, type, mappersList);
  }
예제 #5
0
 public String getTemplateExtension() {
   if (template != null) {
     return template.getExtension();
   }
   return null;
 }
예제 #6
0
 public String[] getTemplateRenamings() {
   if (template != null) {
     return template.getSourceRenamings();
   }
   return null;
 }
예제 #7
0
 public boolean[] getTemplateGenerates() {
   if (template != null) {
     return template.getSourceGenerates();
   }
   return null;
 }
예제 #8
0
 public String[] getTemplateLocations() {
   if (template != null) {
     return template.getSourceLocations();
   }
   return null;
 }
예제 #9
0
 public String[] getTemplateNames() {
   if (template != null) {
     return template.getSourceNames();
   }
   return null;
 }
예제 #10
0
 public String getTemplateLocation() {
   if (template != null) {
     return template.getLocation();
   }
   return null;
 }