diff -r a151135b0cf9 -r aa2539c91954 tracefw/tracecompiler/src/com.nokia.tracecompiler/src/com/nokia/tracecompiler/source/SourceLocationBase.java --- a/tracefw/tracecompiler/src/com.nokia.tracecompiler/src/com/nokia/tracecompiler/source/SourceLocationBase.java Wed Sep 29 17:45:35 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,215 +0,0 @@ -/* -* Copyright (c) 2007 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* -* Base class for locations -* -*/ -package com.nokia.tracecompiler.source; - -/** - * Base class for locations - * - */ -public class SourceLocationBase { - - /** - * Source parser - */ - private SourceParser parser; - - /** - * Position abstraction - */ - private SourceLocationInterface position; - - /** - * Line number is cached and updated when changes occur - */ - private int currentLine = -1; - - /** - * Constructor - * - * @param parser - * the source parser - * @param offset - * the offset to the location - */ - protected SourceLocationBase(SourceParser parser, int offset) { - this.parser = parser; - position = parser.getDocumentFramework() - .createLocation(this, offset, 0); - } - - /** - * Constructor - * - * @param parser - * the source parser - * @param offset - * the offset to the location - * @param length - * the location length - */ - protected SourceLocationBase(SourceParser parser, int offset, int length) { - this.parser = parser; - position = parser.getDocumentFramework().createLocation(this, offset, - length); - } - - /** - * Gets the offset - * - * @return offset - */ - public final int getOffset() { - return position.getOffset(); - } - - /** - * Sets the offset - * - * @param offset - * new offset - */ - public final void setOffset(int offset) { - position.setOffset(offset); - } - - /** - * Gets the length - * - * @return length - */ - public final int getLength() { - return position.getLength(); - } - - /** - * Sets the length - * - * @param length - * the length - */ - public final void setLength(int length) { - position.setLength(length); - } - - /** - * Returns deleted flag - * - * @return the flag - */ - public final boolean isDeleted() { - return position.isDeleted(); - } - - /** - * Sets the deleted flag - */ - public final void delete() { - position.delete(); - } - - /** - * Gets the location interface - * - * @return the location interface - */ - final SourceLocationInterface getLocation() { - return position; - } - - /** - * Gets the source parser - * - * @return the parser - */ - public SourceParser getParser() { - return parser; - } - - /** - * Resets the source parser - */ - protected void resetParser() { - parser = null; - } - - /** - * Gets the line number of this location - * - * @return line number - */ - public int getLineNumber() { - // Line number is set to -1 when notifyUpdate is called - if (parser != null) { - if (currentLine == -1) { - currentLine = parser.getLineNumber(getOffset()); - } - } else { - currentLine = -1; - } - return currentLine; - } - - /** - * Resets the line number - */ - protected void resetLineNumber() { - currentLine = -1; - } - - /** - * Gets the source file name - * - * @return the file name - */ - public String getFileName() { - String retval = null; - if (parser != null) { - SourceDocumentInterface owner = parser.getSource(); - if (owner != null) { - SourcePropertyProvider propertyProvider = owner - .getPropertyProvider(); - if (propertyProvider != null) { - retval = propertyProvider.getFileName(); - } - } - } - return retval; - } - - /** - * Gets the source file path - * - * @return the path - */ - public String getFilePath() { - String retval = null; - if (parser != null) { - SourceDocumentInterface owner = parser.getSource(); - if (owner != null) { - SourcePropertyProvider propertyProvider = owner - .getPropertyProvider(); - if (propertyProvider != null) { - retval = propertyProvider.getFilePath(); - } - } - } - return retval; - } - -}