1 /* Copyright 2004-2005 the original author or authors.
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
7 * http://www.apache.org/licenses/LICENSE-2.0
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
15 package org
.codehaus
.groovy
.grails
.commons
;
20 * <p>Represents a Grails tab library class</p>
22 * @author Graeme Rocher
25 public interface GrailsTagLibClass
extends InjectableGrailsClass
{
27 public static final String DEFAULT_NAMESPACE
= "g";
30 * The name of the application (ie global) tag library appropriate for all controller classes
32 String SUPPORTS_CONTROLLER
= "supportsController";
34 String NAMESPACE_FIELD_NAME
= "namespace";
37 * Whether this tag library supports the specified controller
38 * @param controllerClass The controllerClass to check
39 * @return True if the controller is supported
41 boolean supportsController(GrailsControllerClass controllerClass
);
45 * @param tagName The name of the tag
46 * @return Whether the tag library contains the specified tag
48 boolean hasTag(String tagName
);
52 * @return The tag names in this library
58 * @return the namespace that this taglib occupies.
60 String
getNamespace();