01: /*
02: * Copyright 2002,2004 The Apache Software Foundation.
03: *
04: * Licensed under the Apache License, Version 2.0 (the "License");
05: * you may not use this file except in compliance with the License.
06: * You may obtain a copy of the License at
07: *
08: * http://www.apache.org/licenses/LICENSE-2.0
09: *
10: * Unless required by applicable law or agreed to in writing, software
11: * distributed under the License is distributed on an "AS IS" BASIS,
12: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13: * See the License for the specific language governing permissions and
14: * limitations under the License.
15: */
16:
17: package org.apache.commons.jelly;
18:
19: /**
20: * <p><code>LocationAware</code> represents a Tag or Exception which is location aware.
21: * That is to say it is capable of recording where in a Jelly script a tag or exception
22: * is used which can aid debugging and tracing.</p>
23: *
24: * @author <a href="mailto:jstrachan@apache.org">James Strachan</a>
25: * @version $Revision: 155420 $
26: */
27:
28: public interface LocationAware {
29:
30: /**
31: * @return the line number of the tag
32: */
33: int getLineNumber();
34:
35: /**
36: * Sets the line number of the tag
37: */
38: void setLineNumber(int lineNumber);
39:
40: /**
41: * @return the column number of the tag
42: */
43: int getColumnNumber();
44:
45: /**
46: * Sets the column number of the tag
47: */
48: void setColumnNumber(int columnNumber);
49:
50: /**
51: * @return the Jelly file which caused the problem
52: */
53: String getFileName();
54:
55: /**
56: * Sets the Jelly file which caused the problem
57: */
58: void setFileName(String fileName);
59:
60: /**
61: * @return the element name which caused the problem
62: */
63: String getElementName();
64:
65: /**
66: * Sets the element name which caused the problem
67: */
68: void setElementName(String elementName);
69: }
|