Remove inconsistent null value checkings in the ChangeEmail class

Variable ChangeEmail.change is used widely in sending change emails,
sometimes its value is tested to see if it is null, sometimes it is
not tested, we just remove the null value checking for all places,
and let the users of ChangeEmail class to make sure to pass a valid
value.

Change-Id: I26b2d1c2f84e632603b74e5a680b72c922ead3e3
diff --git a/gerrit-server/src/main/java/com/google/gerrit/server/mail/ChangeEmail.java b/gerrit-server/src/main/java/com/google/gerrit/server/mail/ChangeEmail.java
index 380b40b..3561c0c 100644
--- a/gerrit-server/src/main/java/com/google/gerrit/server/mail/ChangeEmail.java
+++ b/gerrit-server/src/main/java/com/google/gerrit/server/mail/ChangeEmail.java
@@ -81,7 +81,7 @@
       final Change c, final String mc) {
     super(ea, anonymousCowardName, mc);
     change = c;
-    changeData = change != null ? new ChangeData(change) : null;
+    changeData = new ChangeData(change);
     emailOnlyAuthors = false;
   }
 
@@ -208,7 +208,7 @@
 
   /** Get a link to the change; null if the server doesn't know its own address. */
   public String getChangeUrl() {
-    if (change != null && getGerritUrl() != null) {
+    if (getGerritUrl() != null) {
       final StringBuilder r = new StringBuilder();
       r.append(getGerritUrl());
       r.append(change.getChangeId());
@@ -356,10 +356,6 @@
   /** Returns all watches that are relevant */
   protected final Watchers getWatches(NotifyType type) throws OrmException {
     Watchers matching = new Watchers();
-    if (changeData == null) {
-      return matching;
-    }
-
     Set<Account.Id> projectWatchers = new HashSet<Account.Id>();
 
     for (AccountProjectWatch w : args.db.get().accountProjectWatches()
@@ -545,7 +541,6 @@
 
   protected boolean isVisibleTo(final Account.Id to) throws OrmException {
     return projectState == null
-        || change == null
         || projectState.controlFor(args.identifiedUserFactory.create(to))
             .controlFor(change).isVisible(args.db.get());
   }
diff --git a/gerrit-server/src/main/java/com/google/gerrit/server/mail/CreateChangeSender.java b/gerrit-server/src/main/java/com/google/gerrit/server/mail/CreateChangeSender.java
index 3ff2c2a..20c2e15 100644
--- a/gerrit-server/src/main/java/com/google/gerrit/server/mail/CreateChangeSender.java
+++ b/gerrit-server/src/main/java/com/google/gerrit/server/mail/CreateChangeSender.java
@@ -73,7 +73,6 @@
 
   private boolean isOwnerOfProjectOrBranch(Account.Id user) {
     return projectState != null
-        && change != null
         && projectState.controlFor(args.identifiedUserFactory.create(user))
           .controlForRef(change.getDest())
           .isOwner();