1 /* ========================================== 2 * JGraphT : a free Java graph-theory library 3 * ========================================== 4 * 5 * Project Info: http://jgrapht.sourceforge.net/ 6 * Project Creator: Barak Naveh (http://sourceforge.net/users/barak_naveh) 7 * 8 * (C) Copyright 2003-2006, by Barak Naveh and Contributors. 9 * 10 * This library is free software; you can redistribute it and/or modify it 11 * under the terms of the GNU Lesser General Public License as published by 12 * the Free Software Foundation; either version 2.1 of the License, or 13 * (at your option) any later version. 14 * 15 * This library is distributed in the hope that it will be useful, but 16 * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY 17 * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public 18 * License for more details. 19 * 20 * You should have received a copy of the GNU Lesser General Public License 21 * along with this library; if not, write to the Free Software Foundation, 22 * Inc., 23 * 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. 24 */ 25 /* ------------------ 26 * StringNameProvider.java 27 * ------------------ 28 * (C) Copyright 2005-2006, by Charles Fry and Contributors. 29 * 30 * Original Author: Charles Fry 31 * 32 * $Id: StringNameProvider.java 504 2006-07-03 02:37:26Z perfecthash $ 33 * 34 * Changes 35 * ------- 36 * 13-Dec-2005 : Initial Version (CF); 37 * 38 */ 39 package org.jgrapht.ext; 40 41 import org.jgrapht.event.*; 42 43 44 /** 45 * Generates vertex names by invoking {@link #toString()} on them. This assumes 46 * that the vertex's {@link #toString()} method returns a unique String 47 * representation for each vertex. 48 * 49 * @author Charles Fry 50 */ 51 public class StringNameProvider<V> 52 implements VertexNameProvider<V> 53 { 54 55 //~ Constructors ---------------------------------------------------------- 56 57 public StringNameProvider() 58 { 59 } 60 61 //~ Methods --------------------------------------------------------------- 62 63 /** 64 * Returns the String representation of the unique integer representing a 65 * vertex. 66 * 67 * @param vertex the vertex to be named 68 * 69 * @return the name of 70 * 71 * @see GraphListener#edgeAdded(GraphEdgeChangeEvent) 72 */ 73 public String getVertexName(V vertex) 74 { 75 return vertex.toString(); 76 } 77 } 78