public void reComputeRollUpBitMask(final StatisticsDataSourceData oldStatisticsDataSourceData,
                                       final StatisticsDataSourceData newStatisticsDataSourceData) {
        // grab the mask list from this presenter
        oldStatisticsDataSourceData.setCustomRollUpMasks(new HashSet<>(maskList.getMasks()));
        restFactory
                .create(STATISTIC_ROLLUP_RESOURCE)
                .method(res -> res.fieldChange(new StatisticsDataSourceFieldChangeRequest(oldStatisticsDataSourceData,
                        newStatisticsDataSourceData)))
                .onSuccess(result -> {
                    newStatisticsDataSourceData.setCustomRollUpMasks(result.getCustomRollUpMasks());

                    updateState(result.getCustomRollUpMasks());
                })
                .taskMonitorFactory(getView())
                .exec();
    }
Call this method to inform this that it needs to update its display based
on state that has changed on another tab

@param customRollUpMasks The rollup masks as updated by another tab
stroom-statistics/stroom-statistics-client/src/main/java/stroom/statistics/impl/sql/client/presenter/StatisticsCustomMaskListPresenter.java