class BranchesDelegator extends BaseDelegator implements IBranchesDelegator {

    @Override
    public List<IBranchSpecSummary> getBranchSpecs(final GetBranchSpecsOptions opts)
            throws P4JavaException {
        List<Map<String, Object>> resultMaps = execMapCmdList(BRANCHES,
                processParameters(opts, server), null);

        return ResultListBuilder.buildNonNullObjectListFromCommandResultMaps(
                resultMaps,
                new Function<Map, IBranchSpecSummary>() {
                    @Override
                    public IBranchSpecSummary apply(Map map) {
                        return new BranchSpecSummary(map, true);
                    }
                });
    }

    public  BranchesDelegator(IOptionsServer server);

}