package rose;

/**
 * COM Interface 'IRoseAddIn'. Generated 1/31/00 1:49:58 PM
 * from 'C:\Program Files\Rational\Rose 2000\rationalrose.tlb'<P>
 * Generated using version 1.3.1  of <B>J-Integra[tm]</B> -- pure Java/COM integration technology from Linar Ltd.
 * See  <A HREF="http://www.linar.com/">http://www.linar.com/</A><P>
 */
public interface IRoseAddIn {
  /**
   * getEventHandler. 
   *
   * @return    return value.  A reference to another Automation Object (IDispatch)
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public Object getEventHandler  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * setEventHandler. 
   *
   * @param     rhs A reference to another Automation Object (IDispatch))
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public void setEventHandler  (
              Object rhs) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getVersion. 
   *
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public String getVersion  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * setVersion. 
   *
   * @param     rhs The rhs)
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public void setVersion  (
              String rhs) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getCompanyName. 
   *
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public String getCompanyName  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * setCompanyName. 
   *
   * @param     rhs The rhs)
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public void setCompanyName  (
              String rhs) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getHelpFilePath. 
   *
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public String getHelpFilePath  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * setHelpFilePath. 
   *
   * @param     rhs The rhs)
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public void setHelpFilePath  (
              String rhs) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getMenuFilePath. 
   *
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public String getMenuFilePath  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * setMenuFilePath. 
   *
   * @param     rhs The rhs)
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public void setMenuFilePath  (
              String rhs) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getPropertyFilePath. 
   *
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public String getPropertyFilePath  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * setPropertyFilePath. 
   *
   * @param     rhs The rhs)
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public void setPropertyFilePath  (
              String rhs) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getInstallDirectory. 
   *
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public String getInstallDirectory  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * setInstallDirectory. 
   *
   * @param     rhs The rhs)
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public void setInstallDirectory  (
              String rhs) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getRootRegistryPath. 
   *
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public String getRootRegistryPath  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * setRootRegistryPath. 
   *
   * @param     rhs The rhs)
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public void setRootRegistryPath  (
              String rhs) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getFundamentalTypes. 
   *
   * @return    return value.  An reference to a IRoseStringCollection
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseStringCollection getFundamentalTypes  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * setFundamentalTypes. 
   *
   * @param     rhs An reference to a IRoseStringCollection)
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public void setFundamentalTypes  (
              rose.IRoseStringCollection rhs) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getToolNames. 
   *
   * @return    return value.  An reference to a IRoseStringCollection
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseStringCollection getToolNames  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * setToolNames. 
   *
   * @param     rhs An reference to a IRoseStringCollection)
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public void setToolNames  (
              rose.IRoseStringCollection rhs) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getServerName. 
   *
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public String getServerName  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * setServerName. 
   *
   * @param     rhs The rhs)
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public void setServerName  (
              String rhs) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getName. 
   *
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public String getName  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * setName. 
   *
   * @param     rhs The rhs)
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public void setName  (
              String rhs) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getCopyright. 
   *
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public String getCopyright  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * setCopyright. 
   *
   * @param     rhs The rhs)
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public void setCopyright  (
              String rhs) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * isLanguageAddIn. 
   *
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public boolean isLanguageAddIn  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * deactivate. 
   *
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public void deactivate  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * activate. 
   *
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public void activate  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * isActive. 
   *
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public boolean isActive  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * executeScript. 
   *
   * @param     FileName The FileName (in)
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public void executeScript  (
              String FileName) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * readSetting. 
   *
   * @param     Section The Section (in)
   * @param     Entry The Entry (in)
   * @param     Default The Default (in)
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public String readSetting  (
              String Section,
              String Entry,
              String Default) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * writeSetting. 
   *
   * @param     Section The Section (in)
   * @param     Entry The Entry (in)
   * @param     Value The Value (in)
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public boolean writeSetting  (
              String Section,
              String Entry,
              String Value) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * identifyClass. 
   *
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public String identifyClass  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * isClass. 
   *
   * @param     theClassName The theClassName (in)
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public boolean isClass  (
              String theClassName) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * addContextMenuItem. 
   *
   * @param     itemType The itemType (in)
   * @param     fullCaption The fullCaption (in)
   * @param     internalName The internalName (in)
   * @return    return value.  An reference to a IRoseContextMenuItem
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseContextMenuItem addContextMenuItem  (
              short itemType,
              String fullCaption,
              String internalName) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getContextMenuItems. 
   *
   * @param     itemType The itemType (in)
   * @return    return value.  An reference to a IRoseContextMenuItemCollection
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseContextMenuItemCollection getContextMenuItems  (
              short itemType) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getDisplayName. 
   *
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public String getDisplayName  () throws java.io.IOException, com.linar.jintegra.AutomationException;


  // Constants to help J-Integra dynamically map DCOM invocations to
  // interface members.  Don't worry, you will never need to explicitly use these constants.
  int IIDd5352fc0_346c_11d1_883b_3c8b00c10000 = 1;
  /** Dummy reference to interface proxy to make sure it gets compiled */
  int xxDummy = IRoseAddInProxy.xxDummy;
  /** Used internally by J-Integra, please ignore */
  String IID = "00020400-0000-0000-C000-000000000046";
  String DISPID_12528_GET_NAME = "getEventHandler";
  String DISPID_12528_PUT_NAME = "setEventHandler";
  String DISPID_12530_GET_NAME = "getVersion";
  String DISPID_12530_PUT_NAME = "setVersion";
  String DISPID_12531_GET_NAME = "getCompanyName";
  String DISPID_12531_PUT_NAME = "setCompanyName";
  String DISPID_12532_GET_NAME = "getHelpFilePath";
  String DISPID_12532_PUT_NAME = "setHelpFilePath";
  String DISPID_12533_GET_NAME = "getMenuFilePath";
  String DISPID_12533_PUT_NAME = "setMenuFilePath";
  String DISPID_12534_GET_NAME = "getPropertyFilePath";
  String DISPID_12534_PUT_NAME = "setPropertyFilePath";
  String DISPID_12535_GET_NAME = "getInstallDirectory";
  String DISPID_12535_PUT_NAME = "setInstallDirectory";
  String DISPID_12536_GET_NAME = "getRootRegistryPath";
  String DISPID_12536_PUT_NAME = "setRootRegistryPath";
  String DISPID_12537_GET_NAME = "getFundamentalTypes";
  String DISPID_12537_PUT_NAME = "setFundamentalTypes";
  String DISPID_12538_GET_NAME = "getToolNames";
  String DISPID_12538_PUT_NAME = "setToolNames";
  String DISPID_12539_GET_NAME = "getServerName";
  String DISPID_12539_PUT_NAME = "setServerName";
  String DISPID_12540_GET_NAME = "getName";
  String DISPID_12540_PUT_NAME = "setName";
  String DISPID_12645_GET_NAME = "getCopyright";
  String DISPID_12645_PUT_NAME = "setCopyright";
  String DISPID_12541_NAME = "isLanguageAddIn";
  String DISPID_12542_NAME = "deactivate";
  String DISPID_12543_NAME = "activate";
  String DISPID_12553_NAME = "isActive";
  String DISPID_12595_NAME = "executeScript";
  String DISPID_12596_NAME = "readSetting";
  String DISPID_12597_NAME = "writeSetting";
  String DISPID_12668_NAME = "identifyClass";
  String DISPID_12669_NAME = "isClass";
  String DISPID_12684_NAME = "addContextMenuItem";
  String DISPID_12685_NAME = "getContextMenuItems";
  String DISPID_12689_NAME = "getDisplayName";
}
