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

Package com.sas.services.publish

# Interface ResultSetProviderInterface

All Superinterfaces:
  `Remote`

All Known Subinterfaces:
  `DatasetEntryInterface`

@SASScope("ALL") @BinaryCompatibilityOnly public interface ResultSetProviderInterface extends Remote
An object which provides result sets which may be remote.

Since:
  1.0

- ## Method Summary

  Modifier and Type
  Method
  Description
  `RemoteResultSetInterface`
  `getRemoteResultSet()`
  Gets a remote result set This method is invoked on a remote object or if the returned ResultSet needs to be remoted.
  `ResultSet`
  `getResultSet()`
  Gets a ResultSet.
  `Object`
  `hasResultSet()`
  Check if getResultSet will succeed.

- ## Method Details

  - ### hasResultSet

    Object hasResultSet() throws UnmarshalException, RemoteException
    Check if getResultSet will succeed. See `getResultSet()` to determine whether this method should be used.
    Returns:
      non-null if getResultSet() would succeed; throws UnmarshalException if it would fail
    Throws:
      `UnmarshalException` - if invoked on a remote object
      `RemoteException` - if a network I/O error occurs.

  - ### getResultSet

    ResultSet getResultSet() throws UnmarshalException, TransportException, RemoteException
    Gets a ResultSet. If this method is invoked on a remote object, a UnmarshalException exception is thrown if the ResultSet was successfully created since ResultSet is not serializable. However, the ResultSet will have been created. If this is an issue `hasResultSet()` may be invoked to determine if getResultSet would succeed. If a ResultSet is needed in a remote context getRemoteResultSet should be invoked.
    Returns:
      a result set from the provider;null if the provider does not provide the result set
    Throws:
      `UnmarshalException` - if invoked on a remote object
      `TransportException` - if an exception occurred while constructing the ResultSet
      `RemoteException` - if a network I/O error occurs.

  - ### getRemoteResultSet

    RemoteResultSetInterface getRemoteResultSet() throws TransportException, RemoteException
    Gets a remote result set This method is invoked on a remote object or if the returned ResultSet needs to be remoted.
    Returns:
      a ResultSet from the provider.
    Throws:
      `UnmarshalException` - if invoked on a remote object
      `TransportException` - if an exception occurred while constructing the RemoteResultSetInterface
      `RemoteException` - if a network I/O error occurs.