class Username {

    public static Username fromLocalPartWithDomain(String localPart, String domain) {
        Preconditions.checkNotNull(domain);

        return fromLocalPartWithDomain(localPart, Domain.of(domain));
    }

    private  Username(String localPart, Optional<Domain> domainPart);

}