Fix replace_address after CASSANDRA-7356 broke it

Patch by Tyler Hobbs and Marcus Eriksson; reviewed by Brandon Williams for CASSANDRA-7356
diff --git a/src/java/org/apache/cassandra/config/DatabaseDescriptor.java b/src/java/org/apache/cassandra/config/DatabaseDescriptor.java
index 3c58b57..1e534f9 100644
--- a/src/java/org/apache/cassandra/config/DatabaseDescriptor.java
+++ b/src/java/org/apache/cassandra/config/DatabaseDescriptor.java
@@ -777,8 +777,6 @@
             logger.info("Replace address on first boot requested; this node is already bootstrapped");
             return false;
         }
-        if (getReplaceAddress() != null && SystemTable.bootstrapComplete())
-            throw new RuntimeException("Cannot replace address with a node that is already bootstrapped");
         return getReplaceAddress() != null;
     }
 
diff --git a/src/java/org/apache/cassandra/service/StorageService.java b/src/java/org/apache/cassandra/service/StorageService.java
index 449a371..1f3d1e1 100644
--- a/src/java/org/apache/cassandra/service/StorageService.java
+++ b/src/java/org/apache/cassandra/service/StorageService.java
@@ -608,6 +608,8 @@
             throw new RuntimeException("Replace method removed; use cassandra.replace_address instead");
         if (DatabaseDescriptor.isReplacing())
         {
+            if (SystemTable.bootstrapComplete())
+                throw new RuntimeException("Cannot replace address with a node that is already bootstrapped");
             if (!DatabaseDescriptor.isAutoBootstrap())
                 throw new RuntimeException("Trying to replace_address with auto_bootstrap disabled will not work, check your configuration");
             tokens = prepareReplacementInfo();