private static void PerformActionsOnScope(IAdapterService adapterService, Action <DataScope <TSession, TMetaData> > toPerform, DataScope <TSession, TMetaData> scope)
        {
            var before = adapterService.GetBeforeAction();

            if (before != null)
            {
                before(scope.Adapter);
            }

            toPerform(scope);

            var after = adapterService.GetAfterAction();

            if (after != null)
            {
                after(scope.Adapter);
            }
        }