diff -r a151135b0cf9 -r aa2539c91954 tracefw/tracecompiler/src/com.nokia.tracecompiler/src/com/nokia/tracecompiler/engine/propertyfile/ValueElementParser.java --- a/tracefw/tracecompiler/src/com.nokia.tracecompiler/src/com/nokia/tracecompiler/engine/propertyfile/ValueElementParser.java Wed Sep 29 17:45:35 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,89 +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: -* -* Value element parser -* -*/ -package com.nokia.tracecompiler.engine.propertyfile; - -import org.w3c.dom.Element; - -import com.nokia.tracecompiler.engine.TraceCompilerEngineErrorCodes.StringErrorParameters; -import com.nokia.tracecompiler.engine.TraceCompilerEngineErrorCodes.TraceCompilerErrorCode; -import com.nokia.tracecompiler.model.TraceCompilerException; -import com.nokia.tracecompiler.model.TraceConstantTable; -import com.nokia.tracecompiler.model.TraceModelExtension; - -/** - * Value element parser - * - */ -final class ValueElementParser implements PropertyFileElementParser { - - /* - * (non-Javadoc) - * - * @see com.nokia.tracecompiler.engine.propertyfile.PropertyFileElementParser# - * parse(java.lang.Object, org.w3c.dom.Element) - */ - public void parse(Object owner, Element element) - throws TraceCompilerException { - // Value element must be parsed within context of TraceConstantTable - // Struct has not yet been implemented - if (owner instanceof TraceConstantTable) { - parseConstantTableEntry((TraceConstantTable) owner, element); - } else { - StringErrorParameters parameter = new StringErrorParameters(); - parameter.string = PropertyFileConstants.VALUE_ELEMENT; - throw new TraceCompilerException( - TraceCompilerErrorCode.PROPERTY_FILE_ELEMENT_MISPLACED, - parameter, null); - } - } - - /** - * Parses a constant table entry - * - * @param table - * the constant table - * @param element - * the table entry - * @throws TraceCompilerException - * if entry is not valid - */ - private void parseConstantTableEntry(TraceConstantTable table, - Element element) throws TraceCompilerException { - String idstr = element.getAttribute(PropertyFileConstants.ID_ATTRIBUTE); - if (idstr != null) { - try { - int id = Integer.parseInt(idstr); - String value = element.getTextContent(); - table.getModel().getVerifier().checkConstantProperties(table, - null, id, value); - // Document element reference is stored to the model - TraceModelExtension[] exts = new TraceModelExtension[] { new DocumentElementWrapper( - element) }; - table.getModel().getFactory().createConstantTableEntry(table, - id, value, exts); - } catch (NumberFormatException e) { - StringErrorParameters parameter = new StringErrorParameters(); - parameter.string = PropertyFileConstants.ID_ATTRIBUTE; - throw new TraceCompilerException( - TraceCompilerErrorCode.PROPERTY_FILE_ATTRIBUTE_INVALID, - parameter, null); - } - } - } -} \ No newline at end of file