class TipsAndTricksDtoRequestValidator implements ConstraintValidator<ValidTipsAndTricksDtoRequest, TipsAndTricksDtoRequest> {

    @Override
    public boolean isValid(TipsAndTricksDtoRequest dto, ConstraintValidatorContext constraintValidatorContext) {
        if (dto.getSource() != null && !dto.getSource().isEmpty()) {
            isUrlValid(dto.getSource());
        }
        if (tagService.isValidNumOfUniqueTags(dto.getTags())) {
            if (tagService.isAllTipsAndTricksValid(dto.getTags())) {
                return true;
            }
            throw new TagNotFoundDuringValidation(ErrorMessage.TAGS_NOT_FOUND);
        }
        return true;
    }

}