Module java.naming
Package javax.naming.ldap

# Interface HasControls

All Known Subinterfaces:
  `UnsolicitedNotification`

public interface HasControls
This interface is for returning controls with objects returned in NamingEnumerations. For example, suppose a server sends back controls with the results of a search operation, the service provider would return a NamingEnumeration of objects that are both SearchResult and implement HasControls.

>        NamingEnumeration elts = ectx.search((Name)name, filter, sctls);
>        while (elts.hasMore()) {
>          Object entry = elts.next();

>          // Get search result
>          SearchResult res = (SearchResult)entry;
>          // do something with it

>          // Get entry controls
>          if (entry instanceof HasControls) {
>              Control[] entryCtls = ((HasControls)entry).getControls();
>              // do something with controls
>          }
>        }

Since:
  1.3

## Method Summary

Modifier and Type
Method
Description
`Control[]`
`getControls()`
Retrieves an array of `Control`s from the object that implements this interface.

## Method Details

### getControls

Control[] getControls() throws NamingException
Retrieves an array of `Control`s from the object that implements this interface. It is null if there are no controls.

Returns:
  A possibly null array of `Control` objects.
Throws:
  `NamingException` - If cannot return controls due to an error.