All Downloads are FREE. Search and download functionalities are using the official Maven repository.

net.sourceforge.pmd.lang.vm.directive.Include Maven / Gradle / Ivy

There is a newer version: 7.0.0-rc4
Show newest version
package net.sourceforge.pmd.lang.vm.directive;

/*
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership.  The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the
 * "License"); you may not use this file except in compliance
 * with the License.  You may obtain a copy of the License at
 *
 *   http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the License is distributed on an
 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 * KIND, either express or implied.  See the License for the
 * specific language governing permissions and limitations
 * under the License.    
 */

/**
 * 

Pluggable directive that handles the #include() statement in VTL. * This #include() can take multiple arguments of either * StringLiteral or Reference.

* *

Notes:

*
    *
  1. For security reasons, the included source material can only come * from somewhere within the template root tree. If you want to include * content from elsewhere on your disk, add extra template roots, or use * a link from somwhere under template root to that content.
  2. * *
  3. By default, there is no output to the render stream in the event of * a problem. You can override this behavior with two property values : * include.output.errormsg.start * include.output.errormsg.end * If both are defined in velocity.properties, they will be used to * in the render output to bracket the arg string that caused the * problem. * Ex. : if you are working in html then * include.output.errormsg.start=<!-- #include error : * include.output.errormsg.end= --> * might be an excellent way to start...
  4. * *
  5. As noted above, #include() can take multiple arguments. * Ex : #include('foo.vm' 'bar.vm' $foo) * will include all three if valid to output without any * special separator.
  6. *
* * @author Geir Magnusson Jr. * @author Jason van Zyl * @author Kasper Nielsen * @version $Id: Include.java 746438 2009-02-21 05:41:24Z nbubna $ */ public class Include extends InputBase { /** * Return name of this directive. * @return The name of this directive. */ public String getName() { return "include"; } /** * Return type of this directive. * @return The type of this directive. */ public int getType() { return LINE; } /** * Since there is no processing of content, * there is never a need for an internal scope. */ public boolean isScopeProvided() { return false; } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy