001: /*
002: * Copyright 2002-2008 Andy Clark
003: *
004: * Licensed under the Apache License, Version 2.0 (the "License");
005: * you may not use this file except in compliance with the License.
006: * You may obtain a copy of the License at
007: *
008: * http://www.apache.org/licenses/LICENSE-2.0
009: *
010: * Unless required by applicable law or agreed to in writing, software
011: * distributed under the License is distributed on an "AS IS" BASIS,
012: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
013: * See the License for the specific language governing permissions and
014: * limitations under the License.
015: */
016:
017: package org.cyberneko.html;
018:
019: /**
020: * This interface is used to pass augmentated information to the
021: * application through the XNI pipeline.
022: *
023: * @author Andy Clark
024: *
025: * @version $Id: HTMLEventInfo.java,v 1.4 2005/02/14 03:56:54 andyc Exp $
026: */
027: public interface HTMLEventInfo {
028:
029: //
030: // HTMLEventInfo methods
031: //
032:
033: // location information
034:
035: /** Returns the line number of the beginning of this event.*/
036: public int getBeginLineNumber();
037:
038: /** Returns the column number of the beginning of this event.*/
039: public int getBeginColumnNumber();
040:
041: /** Returns the line number of the end of this event.*/
042: public int getEndLineNumber();
043:
044: /** Returns the column number of the end of this event.*/
045: public int getEndColumnNumber();
046:
047: // other information
048:
049: /** Returns true if this corresponding event was synthesized. */
050: public boolean isSynthesized();
051:
052: /**
053: * Synthesized infoset item.
054: *
055: * @author Andy Clark
056: */
057: public static class SynthesizedItem implements HTMLEventInfo {
058:
059: //
060: // HTMLEventInfo methods
061: //
062:
063: // location information
064:
065: /** Returns the line number of the beginning of this event.*/
066: public int getBeginLineNumber() {
067: return -1;
068: } // getBeginLineNumber():int
069:
070: /** Returns the column number of the beginning of this event.*/
071: public int getBeginColumnNumber() {
072: return -1;
073: } // getBeginColumnNumber():int
074:
075: /** Returns the line number of the end of this event.*/
076: public int getEndLineNumber() {
077: return -1;
078: } // getEndLineNumber():int
079:
080: /** Returns the column number of the end of this event.*/
081: public int getEndColumnNumber() {
082: return -1;
083: } // getEndColumnNumber():int
084:
085: // other information
086:
087: /** Returns true if this corresponding event was synthesized. */
088: public boolean isSynthesized() {
089: return true;
090: } // isSynthesized():boolean
091:
092: //
093: // Object methods
094: //
095:
096: /** Returns a string representation of this object. */
097: public String toString() {
098: return "synthesized";
099: } // toString():String
100:
101: } // class SynthesizedItem
102:
103: } // interface HTMLEventInfo
|