Saya menggunakan spring boot untuk mengembangkan proyek shell yang digunakan untuk mengirim email, misalnya
sendmail -from foo@bar.com -password foobar -subject "hello world" -to aaa@bbb.com
Jika fromdan passwordargumen tidak ada, saya menggunakan pengirim dan kata sandi default, misalnya noreply@bar.comdan 123456.
Jadi, jika pengguna melewati fromargumen mereka juga harus melewati passwordargumen dan sebaliknya. Dengan kata lain, keduanya bukan nol, atau keduanya nol.
Bagaimana saya memeriksanya dengan elegan?
Sekarang jalan saya
if ((from != null && password == null) || (from == null && password != null)) {
throw new RuntimeException("from and password either both exist or both not exist");
}
FromAlamat e-mail tidak selalu nama otentikasi SMTP.