001/* ----------------------------------------------------------------------------
002 * This file was automatically generated by SWIG (http://www.swig.org).
003 * Version 2.0.11
004 *
005 * Do not make changes to this file unless you know what you are doing--modify
006 * the SWIG interface file instead.
007 * ----------------------------------------------------------------------------- */
008
009package org.sbml.libsbml;
010
011public class SBMLFileResolver extends SBMLResolver {
012   private long swigCPtr;
013
014   protected SBMLFileResolver(long cPtr, boolean cMemoryOwn)
015   {
016     super(libsbmlJNI.SBMLFileResolver_SWIGUpcast(cPtr), cMemoryOwn);
017     swigCPtr = cPtr;
018   }
019
020   protected static long getCPtr(SBMLFileResolver obj)
021   {
022     return (obj == null) ? 0 : obj.swigCPtr;
023   }
024
025   protected static long getCPtrAndDisown (SBMLFileResolver obj)
026   {
027     long ptr = 0;
028
029     if (obj != null)
030     {
031       ptr             = obj.swigCPtr;
032       obj.swigCMemOwn = false;
033     }
034
035     return ptr;
036   }
037
038  protected void finalize() {
039    delete();
040  }
041
042  public synchronized void delete() {
043    if (swigCPtr != 0) {
044      if (swigCMemOwn) {
045        swigCMemOwn = false;
046        libsbmlJNI.delete_SBMLFileResolver(swigCPtr);
047      }
048      swigCPtr = 0;
049    }
050    super.delete();
051  }
052
053  public SBMLFileResolver() {
054    this(libsbmlJNI.new_SBMLFileResolver__SWIG_0(), true);
055  }
056
057  public SBMLFileResolver(SBMLFileResolver c) {
058    this(libsbmlJNI.new_SBMLFileResolver__SWIG_1(SBMLFileResolver.getCPtr(c), c), true);
059  }
060
061  
062/**
063   *  (NOTICE) Package developers MUST OVERRIDE this pure virtual function 
064   *           in their derived class.
065   * <p>
066   * Creates and returns a deep copy of this {@link SBMLExtension} object.
067   * <p>
068   * @return a (deep) copy of this {@link SBase} object
069   * @internal
070   */ public
071 SBMLResolver cloneObject() {
072    long cPtr = libsbmlJNI.SBMLFileResolver_cloneObject(swigCPtr, this);
073    return (cPtr == 0) ? null : new SBMLFileResolver(cPtr, true);
074  }
075
076  public SBMLDocument resolve(String uri, String baseUri) {
077    long cPtr = libsbmlJNI.SBMLFileResolver_resolve__SWIG_0(swigCPtr, this, uri, baseUri);
078    return (cPtr == 0) ? null : new SBMLDocument(cPtr, false);
079  }
080
081  public SBMLDocument resolve(String uri) {
082    long cPtr = libsbmlJNI.SBMLFileResolver_resolve__SWIG_1(swigCPtr, this, uri);
083    return (cPtr == 0) ? null : new SBMLDocument(cPtr, false);
084  }
085
086  public SBMLUri resolveUri(String uri, String baseUri) {
087    long cPtr = libsbmlJNI.SBMLFileResolver_resolveUri__SWIG_0(swigCPtr, this, uri, baseUri);
088    return (cPtr == 0) ? null : new SBMLUri(cPtr, false);
089  }
090
091  public SBMLUri resolveUri(String uri) {
092    long cPtr = libsbmlJNI.SBMLFileResolver_resolveUri__SWIG_1(swigCPtr, this, uri);
093    return (cPtr == 0) ? null : new SBMLUri(cPtr, false);
094  }
095
096  public void setAdditionalDirs(SWIGTYPE_p_std__vectorT_std__string_t dirs) {
097    libsbmlJNI.SBMLFileResolver_setAdditionalDirs(swigCPtr, this, SWIGTYPE_p_std__vectorT_std__string_t.getCPtr(dirs));
098  }
099
100  public void clearAdditionalDirs() {
101    libsbmlJNI.SBMLFileResolver_clearAdditionalDirs(swigCPtr, this);
102  }
103
104  public void addAdditionalDir(String dir) {
105    libsbmlJNI.SBMLFileResolver_addAdditionalDir(swigCPtr, this, dir);
106  }
107
108}