[Operator] Improve check whether SSH is enabled

Change-Id: I6ebced1ea54f10df857f08e9c08b50d49dc19ab7
diff --git a/operator/src/main/java/com/google/gerrit/k8s/operator/cluster/GerritIstioGateway.java b/operator/src/main/java/com/google/gerrit/k8s/operator/cluster/GerritIstioGateway.java
index 830e1d2..5566c59 100644
--- a/operator/src/main/java/com/google/gerrit/k8s/operator/cluster/GerritIstioGateway.java
+++ b/operator/src/main/java/com/google/gerrit/k8s/operator/cluster/GerritIstioGateway.java
@@ -83,7 +83,7 @@
 
     boolean sshEnabled =
         client.resources(Gerrit.class).list().getItems().stream()
-            .anyMatch(g -> g.getSpec().getService().getSshPort() != null);
+            .anyMatch(g -> g.getSpec().getService().isSshEnabled());
 
     if (sshEnabled) {
       servers.add(
diff --git a/operator/src/main/java/com/google/gerrit/k8s/operator/gerrit/GerritConfigMapDependentResource.java b/operator/src/main/java/com/google/gerrit/k8s/operator/gerrit/GerritConfigMapDependentResource.java
index 7ebdb46..bc9f013 100644
--- a/operator/src/main/java/com/google/gerrit/k8s/operator/gerrit/GerritConfigMapDependentResource.java
+++ b/operator/src/main/java/com/google/gerrit/k8s/operator/gerrit/GerritConfigMapDependentResource.java
@@ -61,14 +61,14 @@
 
     if (gerritCluster.getSpec().getIngress().getType() == IngressType.ISTIO) {
       gerritConfigBuilder.withSsh(
-          gerrit.getSpec().getService().getSshPort() != null,
+          gerrit.getSpec().getService().isSshEnabled(),
           gerritCluster
                   .getSpec()
                   .getIngress()
                   .getFullHostnameForService(ServiceDependentResource.getName(gerrit))
               + ":29418");
     } else {
-      gerritConfigBuilder.withSsh(gerrit.getSpec().getService().getSshPort() != null);
+      gerritConfigBuilder.withSsh(gerrit.getSpec().getService().isSshEnabled());
     }
 
     configFiles.put("gerrit.config", gerritConfigBuilder.build().toText());
diff --git a/operator/src/main/java/com/google/gerrit/k8s/operator/gerrit/GerritIstioVirtualService.java b/operator/src/main/java/com/google/gerrit/k8s/operator/gerrit/GerritIstioVirtualService.java
index f30f866..625e294 100644
--- a/operator/src/main/java/com/google/gerrit/k8s/operator/gerrit/GerritIstioVirtualService.java
+++ b/operator/src/main/java/com/google/gerrit/k8s/operator/gerrit/GerritIstioVirtualService.java
@@ -65,7 +65,7 @@
 
   private List<TCPRoute> getTCPRoutes(Gerrit gerrit) {
     List<TCPRoute> routes = new ArrayList<>();
-    if (gerrit.getSpec().getService().getSshPort() != null) {
+    if (gerrit.getSpec().getService().isSshEnabled()) {
       routes.add(
           new TCPRouteBuilder()
               .withMatch(List.of(new L4MatchAttributesBuilder().withPort(29418).build()))
diff --git a/operator/src/main/java/com/google/gerrit/k8s/operator/gerrit/GerritServiceConfig.java b/operator/src/main/java/com/google/gerrit/k8s/operator/gerrit/GerritServiceConfig.java
index 841e02d..1237585 100644
--- a/operator/src/main/java/com/google/gerrit/k8s/operator/gerrit/GerritServiceConfig.java
+++ b/operator/src/main/java/com/google/gerrit/k8s/operator/gerrit/GerritServiceConfig.java
@@ -14,6 +14,7 @@
 
 package com.google.gerrit.k8s.operator.gerrit;
 
+import com.fasterxml.jackson.annotation.JsonIgnore;
 import java.io.Serializable;
 
 public class GerritServiceConfig implements Serializable {
@@ -46,4 +47,9 @@
   public void setSshPort(int sshPort) {
     this.sshPort = sshPort;
   }
+
+  @JsonIgnore
+  public boolean isSshEnabled() {
+    return this.sshPort != null;
+  }
 }
diff --git a/operator/src/main/java/com/google/gerrit/k8s/operator/gerrit/ServiceDependentResource.java b/operator/src/main/java/com/google/gerrit/k8s/operator/gerrit/ServiceDependentResource.java
index 34c15c0..5bc8549 100644
--- a/operator/src/main/java/com/google/gerrit/k8s/operator/gerrit/ServiceDependentResource.java
+++ b/operator/src/main/java/com/google/gerrit/k8s/operator/gerrit/ServiceDependentResource.java
@@ -83,7 +83,7 @@
             .withPort(gerrit.getSpec().getService().getHttpPort())
             .withNewTargetPort(HTTP_PORT)
             .build());
-    if (gerrit.getSpec().getService().getSshPort() != null) {
+    if (gerrit.getSpec().getService().isSshEnabled()) {
       ports.add(
           new ServicePortBuilder()
               .withName("ssh")
diff --git a/operator/src/main/java/com/google/gerrit/k8s/operator/gerrit/StatefulSetDependentResource.java b/operator/src/main/java/com/google/gerrit/k8s/operator/gerrit/StatefulSetDependentResource.java
index a02280c..dad0796 100644
--- a/operator/src/main/java/com/google/gerrit/k8s/operator/gerrit/StatefulSetDependentResource.java
+++ b/operator/src/main/java/com/google/gerrit/k8s/operator/gerrit/StatefulSetDependentResource.java
@@ -257,7 +257,7 @@
     List<ContainerPort> containerPorts = new ArrayList<>();
     containerPorts.add(new ContainerPort(HTTP_PORT, null, null, "http", null));
 
-    if (gerrit.getSpec().getService().getSshPort() != null) {
+    if (gerrit.getSpec().getService().isSshEnabled()) {
       containerPorts.add(new ContainerPort(SSH_PORT, null, null, "ssh", null));
     }