/***
 * Excerpted from "Domain-Driven Design Using Naked Objects",
 * published by The Pragmatic Bookshelf.
 * Copyrights apply to this code. It may not be used to create training material, 
 * courses, books, articles, and the like. Contact us if you are in doubt.
 * We make no guarantees that this code is fit for any purpose. 
 * Visit http://www.pragmaticprogrammer.com/titles/dhnako for more book information.
***/
@MemberOrder(sequence = "1.3")
@Disabled(When.UNTIL_PERSISTED)
public void remind() {
    emailService.sendEmail(
        "customer-service@carserv.com", 
        getEmailAddress(), 
        "Car Servicing Reminder", 
        "Your car is due for servicing soon");
}
public String disableRemind() {
    return getEmailAddress() == null || getEmailAddress().length() == 0?
        "No email address":null;
}
