/* * This file or a portion of this file is licensed under the terms of * the Globus Toolkit Public License, found in file GTPL, or at * http://www.globus.org/toolkit/download/license.html. This notice must * appear in redistributions of this file, with or without modification. * * Redistributions of this Software, with or without modification, must * reproduce the GTPL in: (1) the Software, or (2) the Documentation or * some other similar material which is provided with the Software (if * any). * * Copyright 1999-2004 University of Chicago and The University of * Southern California. All rights reserved. */ package org.griphyn.vdl.parser; /** * Class to pass the name of a definition from scanner to parser. * The class is used for both, the namespace::name:version info as * well as the namespace::name:min,max mapping. * This class is module-local on purpose. * * @author Jens-S. Vöckler * @version $Revision$ * */ class VDLtFQDN implements VDLtToken { /** * The name of the identifier */ private String m_value[]; /** * Contructs an empty fqdn to pass. */ public VDLtFQDN() { this.m_value = new String[4]; } /** * Sets a part of the fqdn to the given value. * @param index is the part to set * @param value is the new value to set the part for * @return the old value at the slot. For an index out of bounds, * null will always be returned. */ public String setValue( int index, String value ) { if ( index >= 0 && index < m_value.length ) { String old = m_value[index]; m_value[index] = value; return old; } else { // out of bounds, ignore return null; } } /** * Obtains the current name value of an fqdn part. * @param index is the part to obtain the value for * @return the name of the identifer, which may be null. null is * always returned for index out of bounds. */ public String getValue( int index ) { if ( index >=0 && index < m_value.length ) return this.m_value[index]; else return null; } }