public virtual T Found <T>(ValidationExtensionPoint <T> extensionPoint)
 {
 }
 public virtual void NotSupported <T>(ValidationExtensionPoint <T> extensionPoint)
 {
     throw new NotSupportedException();
 }
        public virtual T NotNull <T>(ValidationExtensionPoint <T> extensionPoint, string name)
        {
            ArgumentValidation.Validate(name, extensionPoint.ExtendedValue, DefaultValidators.NotNullValidator);

            return(extensionPoint.ExtendedValue);
        }