AbstractOntoGazetteer.java
001 /*
002  * AbstractOntoGazetteer.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 /**AbstratOntoGazetteer
019  * This class implements the methods common for all ontology-aware gazetteers.*/
020 public abstract class AbstractOntoGazetteer
021 extends AbstractGazetteer implements OntoGazetteer {
022 
023   private static final long serialVersionUID = 4883216941890639412L;
024 
025   /** the url of the mapping definition */
026   protected java.net.URL mappingURL;
027 
028   /** class name of the linear gazetteer to be called */
029   protected String gazetteerName;
030 
031   /** reference to the linear gazetteer */
032   protected Gazetteer gaz;
033 
034   /**
035    * Sets the class name of the linear gazetteer to be loaded.
036    @param name class name of a Gazetteer
037    */
038   @Override
039   public void setGazetteerName(String name) {
040     gazetteerName = name;
041   }
042 
043   /**
044    * Gets the class name of the linear gazetteer
045    @return the class name of the linear gazetteer
046    */
047   @Override
048   public String getGazetteerName() {
049     return gazetteerName;
050   }
051 
052   /**
053    * Sets the URL of the mapping definition
054    @param url the URL of the mapping definition
055    */
056   @Override
057   public void setMappingURL(java.net.URL url) {
058     mappingURL = url;
059   }
060 
061   /**
062    * Gets the URL of the mapping definition
063    @return the URL of the mapping definition
064    */
065   @Override
066   public java.net.URL getMappingURL() {
067     return mappingURL;
068   }
069 
070   /**
071    * Gets the linear gazetteer
072    @return the linear gazetteer
073    */
074   @Override
075   public Gazetteer getGazetteer(){
076     return gaz;
077   }
078 
079   /**
080    * Sets the linear gazetteer
081    @param gaze the linear gazetteer to be associated with this onto gazetteer.
082    */
083   @Override
084   public void setGazetteer(Gazetteer gaze) {
085     gaz = gaze;
086   }
087 
088   /**Overrides {@link gate.creole.gazetteer.Gazetteer}
089    * and retrieves the linear definition from the underlying
090    * linear gazetteer*/
091   @Override
092   public LinearDefinition getLinearDefinition() {
093     if (null == gaz){
094       throw new gate.util.GateRuntimeException(
095       "linear gazetteer should be set before \n"+
096       "attempting to retrieve the linear definition");
097     }
098     return gaz.getLinearDefinition();
099   }
100 
101 // class AbstractOntoGazetteer