### *** This interface provides Binary Compatibility only, not Source Compatibility ***

Package com.sas.services.connection

# Interface ConnectionInterface

@SASScope("ALL") @BinaryCompatibilityOnly public interface ConnectionInterface
The factory-managed connection handle.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `close()`
  Return the connection to the allocating factory's connection pool.
  `void`
  `generatePassword(String userName, StringHolder qualUserNameHolder, StringHolder genPasswordHolder)`
  Generate a password for a user name.
  `Object`
  `getObject()`
  Get the remote object reference to the toplevel object on the IOM server.

- ## Method Details

  - ### getObject

    Object getObject()
    Get the remote object reference to the toplevel object on the IOM server. This connection to the server has been allocated to the caller by the connection factory, and every call to this method returns the same object reference until `close()` is called. After the call to `close()`, any call to this method will throw an `IllegalStateException`.
    Returns:
      the remote object reference to the toplevel object on the IOM server

  - ### generatePassword

    void generatePassword(String userName, StringHolder qualUserNameHolder, StringHolder genPasswordHolder) throws ConnectionFactoryException
    Generate a password for a user name. The server will generate a password for the user name in a generated password domain. The output of this method is the generated password and the user name qualified with the generated password domain. The qualified user name and generated password can then be used to connect to the server that generated the password.
    Parameters:
      `userName` - the user name for which to generate a password
      `qualUserNameHolder` - (OUTPUT) a wrapper which will, after the method call, contain the user name qualified with the generated password domain
      `genPasswordHolder` - (OUTPUT) a wrapper which will, after the method call, contain the generated password for the user name.
    Throws:
      `ConnectionFactoryException` - if the server does not support password generation or if the current client does not have permission to generate passwords

  - ### close

    void close()
    Return the connection to the allocating factory's connection pool. Multiple calls to this method have no effect.