Usei o spring boot para desenvolver um projeto de shell usado para enviar email, por exemplo
sendmail -from foo@bar.com -password foobar -subject "hello world" -to aaa@bbb.com
Se os argumentos frome passwordestiverem ausentes, eu uso um remetente e uma senha padrão, por exemplo, noreply@bar.come 123456.
Portanto, se o usuário passar o fromargumento, ele também deve passar o passwordargumento e vice-versa. Ou seja, ambos são não nulos ou ambos são nulos.
Como verifico isso com elegância?
Agora meu caminho é
if ((from != null && password == null) || (from == null && password != null)) {
throw new RuntimeException("from and password either both exist or both not exist");
}
Fromendereço de email nem sempre é o nome da autenticação SMTP.