1/*2 * $Id: VelocityDirectiveGenerator.java 1643653 2014-12-07 06:47:59Z nlebas $3 *4 * Licensed to the Apache Software Foundation (ASF) under one5 * or more contributor license agreements. See the NOTICE file6 * distributed with this work for additional information7 * regarding copyright ownership. The ASF licenses this file8 * to you under the Apache License, Version 2.0 (the9 * "License"); you may not use this file except in compliance10 * with the License. You may obtain a copy of the License at11 *12 * http://www.apache.org/licenses/LICENSE-2.013 *14 * Unless required by applicable law or agreed to in writing,15 * software distributed under the License is distributed on an16 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY17 * KIND, either express or implied. See the License for the18 * specific language governing permissions and limitations19 * under the License.20 */21package org.apache.tiles.autotag.velocity;
2223import java.util.Map;
2425import org.apache.tiles.autotag.generate.AbstractTemplateClassGenerator;
26import org.apache.tiles.autotag.model.TemplateClass;
27import org.apache.tiles.autotag.model.TemplateSuite;
28import org.apache.velocity.app.VelocityEngine;
2930/**31 * Generates a Velocity directive using a template class.32 *33 * @version $Rev: 1643653 $ $Date: 2014-12-07 07:47:59 +0100 (Sun, 07 Dec 2014) $34 */35publicclassVelocityDirectiveGeneratorextendsAbstractTemplateClassGenerator {
3637/**38 * Constructor.39 *40 * @param velocityEngine The Velocity engine.41 */42publicVelocityDirectiveGenerator(VelocityEngine velocityEngine) {
43super(velocityEngine);
44 }
4546 @Override
47protected String getDirectoryName(String packageName,
48TemplateSuite suite, TemplateClass clazz, Map<String, String> parameters,
49 String runtimeClass, String requestClass) {
50return packageName.replaceAll("\\.", "/");
51 }
5253 @Override
54protected String getFilename(String packageName,
55TemplateSuite suite, TemplateClass clazz, Map<String, String> parameters,
56 String runtimeClass, String requestClass) {
57return clazz.getTagClassPrefix() + "Directive.java";
58 }
5960 @Override
61protected String getTemplatePath(String packageName,
62TemplateSuite suite, TemplateClass clazz, Map<String, String> parameters,
63 String runtimeClass, String requestClass) {
64return"/org/apache/tiles/autotag/velocity/velocityDirective.vm";
65 }
66 }