/* * @(#)NameBase.java 1.6 03/12/19 * * Copyright 2004 Sun Microsystems, Inc. All rights reserved. * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. */ package com.sun.corba.se.impl.orbutil.fsm ; import com.sun.corba.se.spi.orbutil.fsm.Action ; import com.sun.corba.se.spi.orbutil.fsm.State ; import com.sun.corba.se.spi.orbutil.fsm.Guard ; import com.sun.corba.se.spi.orbutil.fsm.Input ; import java.util.StringTokenizer ; public class NameBase { private String name ; private String toStringName ; // Return just the name of the class, not the full qualified name. private String getClassName() { String fqn = this.getClass().getName() ; StringTokenizer st = new StringTokenizer( fqn, "." ) ; String token = st.nextToken() ; while (st.hasMoreTokens()) token = st.nextToken() ; return token ; } private String getPreferredClassName() { if (this instanceof Action) return "Action" ; if (this instanceof State) return "State" ; if (this instanceof Guard) return "Guard" ; if (this instanceof Input) return "Input" ; return getClassName() ; } public NameBase( String name ) { this.name = name ; toStringName = getPreferredClassName() + "[" + name + "]" ; } public String getName() { return name ; } public String toString() { return toStringName ; } }