// ----------------------------------------------------------------------------- public IADObject FilterObject(IADObject adObj) { if (adObj == null) { return(null); } // Just return object, iff no filtering is wanted ... //return adObj; var logCopy = adObj; adObj = _specialFilter.FilterObject(adObj); if (adObj == null) { WriteLogFilteredAway(logCopy, nameof(SpecialObjectsFilter)); return(null); } adObj = _ugoFilter.FilterObject(adObj); if (adObj == null) { WriteLogFilteredAway(logCopy, nameof(UserGroupOUFilter)); return(null); } adObj = _cacheFilter.FilterObject(adObj); if (adObj == null) { WriteLogFilteredAway(logCopy, nameof(IInCacheFilter)); return(null); } return(adObj); }