class ChangesDelegator extends BaseDelegator implements IChangesDelegator {

    @Override
    public List<IChangelistSummary> getChangelists(
            final int maxMostRecent,
            final List<IFileSpec> fileSpecs,
            final String clientName,
            final String userName,
            final boolean includeIntegrated,
            final Type type,
            final boolean longDesc)
            throws ConnectionException, RequestException, AccessException {

        try {
            GetChangelistsOptions getChangelistsOptions = new GetChangelistsOptions()
                    .setClientName(clientName)
                    .setIncludeIntegrated(includeIntegrated)
                    .setLongDesc(longDesc)
                    .setMaxMostRecent(maxMostRecent)
                    .setType(type)
                    .setUserName(userName);

            return getChangelists(fileSpecs, getChangelistsOptions);
        } catch (final ConnectionException | RequestException | AccessException exc) {
            throw exc;
        } catch (P4JavaException exc) {
            throw new RequestException(exc.getMessage(), exc);
        }
    }

    public  ChangesDelegator(final IOptionsServer server);

}