MappingNode.java
001 /*
002  * MappingNode.java
003  *
004  * Copyright (c) 2002, The University of Sheffield.
005  *
006  * This file is part of GATE (see http://gate.ac.uk/), and is free
007  * software, licenced under the GNU Library General Public License,
008  * Version 2, June1991.
009  *
010  * A copy of this licence is included in the distribution in the file
011  * licence.html, and is also available at http://gate.ac.uk/gate/licence.html.
012  *
013  * borislav popov 02/2002
014  *
015  */
016 package gate.creole.gazetteer;
017 
018 import java.io.Serializable;
019 
020 
021 
022 /**Represents a single node from the mapping definition*/
023 public class MappingNode implements Serializable {
024 
025   private static final long serialVersionUID = -4410243081697344856L;
026 
027   /** the gazetteer list filename */
028   private String list;
029   /** the class associated with the list */
030   private String classID;
031   /** the ontology to which the class belongs */
032   private String ontologyID;
033 
034   /**Creates a new mapping node given a string representation.
035    @param node a node from the mapping definition
036    @throws InvalidFormatException if the node is misformatted
037    */
038   public MappingNode(String nodethrows InvalidFormatException {
039     int firstColumn = node.indexOf(':');
040     int lastColumn = node.lastIndexOf(':');
041     if (-== firstColumn || -== lastColumn ) {
042       throw new InvalidFormatException();
043     }
044     list = node.substring(0,firstColumn);
045     ontologyID = node.substring(firstColumn+1,lastColumn);
046     classID = node.substring(lastColumn+1);
047   }// MappingNode construct
048 
049   /**Creates a new mapping node given its members
050    @param aList the gaz list file name
051    @param anOntologyID the ontology
052    @param aClassID the class
053    */
054   public MappingNode(String aList, String anOntologyID,String aClassID) {
055     list = aList;
056     classID = aClassID;
057     ontologyID = anOntologyID;
058   }
059 
060   /**Sets gaz list for the node
061    @param aList a gazetteer list file name */
062   public void setList(String aList) {
063     list = aList;
064   }
065 
066   /** Gets the list of the node
067    *  @return the gazetteer list file name*/
068   public String getList(){
069     return list;
070   }
071 
072   /** Sets the class ID
073    @param theClassID  the class id */
074   public void setClassID(String theClassID) {
075     classID = theClassID;
076   }
077 
078   /** Gets the class id
079    *  @return the class id  */
080   public String getClassID(){
081     return classID;
082   }
083 
084   /** Sets the ontology id
085    *  @param id the ontology id */
086   public void setOntologyID(String id) {
087     ontologyID = id;
088   }
089 
090   /** Gets the ontology id
091    *  @return the ontology id  */
092   public String getOntologyID(){
093     return ontologyID;
094   }
095 
096   /**
097    * Gets the string representation of the node
098    @return the string representation of the node
099    */
100   @Override
101   public String toString() {
102     return list + ":" + ontologyID + ":" + classID;
103   }
104 // class MappingNode