class FstatDelegator extends BaseDelegator implements IFstatDelegator {

    @Override
    public List<IExtendedFileSpec> getExtendedFiles(final List<IFileSpec> fileSpecs,
            final int maxFiles, final int sinceChangelist, final int affectedByChangelist,
            final FileStatOutputOptions outputOptions,
            final FileStatAncilliaryOptions ancilliaryOptions)
            throws ConnectionException, AccessException {

        try {
            GetExtendedFilesOptions extendedFilesOptions = new GetExtendedFilesOptions()
                    .setAncilliaryOptions(ancilliaryOptions).setMaxResults(maxFiles)
                    .setOutputOptions(outputOptions).setSinceChangelist(sinceChangelist)
                    .setAffectedByChangelist(affectedByChangelist);
            return getExtendedFiles(fileSpecs, extendedFilesOptions);
        } catch (final ConnectionException | AccessException exc) {
            throw exc;
        } catch (P4JavaException exc) {
            // TODO Not sure why this should result in an empty list.
            Log.warn("Unexpected exception in IServer.getExtendedFiles: %s", exc);
            return Collections.emptyList();
        }
    }

    public  FstatDelegator(final IOptionsServer server);

}