private boolean moveServerToUpMode(ServerMap serverMap) {

    String serverStatus =
        GuiTables.getServer(storageSahiTasks, serverMap.getServerName()).get(GuiTables.STATUS);
    if (!serverStatus.equalsIgnoreCase(GuiTables.Status.UP.get())) {
      storageSahiTasks.div("Activate").click();
    }

    HashMap<String, String> row = null;
    row =
        GuiTables.waitAndGetExpectedResult(
            storageSahiTasks,
            GuiTables.TableType.SERVERS,
            serverMap.getServerName(),
            GuiTables.STATUS,
            GuiTables.Status.UP.get(),
            1000 * 5,
            10);

    if (!row.get(GuiTables.STATUS).equalsIgnoreCase(GuiTables.Status.UP.get())) {
      storageSahiTasks._logger.log(
          Level.WARNING,
          "Server["
              + serverMap.getServerName()
              + "("
              + serverMap.getServerHostIP()
              + ")] is not in "
              + GuiTables.Status.UP.get()
              + " mode!");
      return false;
    }

    return true;
  }
  public boolean renameServerInUpState(ServerMap server, String newServerName) {
    boolean foundServer = false;

    if (!storageSahiTasks.selectPage(server.getResourceLocation())) {
      return false;
    }
    storageSahiTasks.clickRefresh("Host");

    String serverStatus =
        GuiTables.getServer(storageSahiTasks, server.getServerName()).get(GuiTables.STATUS);
    if (!serverStatus.equalsIgnoreCase(GuiTables.Status.UP.get())) {
      storageSahiTasks._logger.log(
          Level.WARNING,
          "Server [" + server.getServerName() + "] not " + GuiTables.Status.UP.get() + "!");
      return false;
    }

    editServer(server, newServerName, null);

    LinkedList<HashMap<String, String>> serversTable = GuiTables.getServersTable(storageSahiTasks);

    for (HashMap<String, String> row : serversTable) {
      // Find the desired row by server's IP
      if (row.get(GuiTables.HOST_IP).equals(server.getServerHostIP())) {
        if (!row.get(GuiTables.NAME).equals(newServerName)) {
          storageSahiTasks._logger.log(
              Level.WARNING,
              "Server["
                  + row.get(GuiTables.NAME)
                  + "] does not contain expected new server name ["
                  + newServerName
                  + "]!");
          editServer(server, server.getServerName(), null);
          return false;
        }
        foundServer = true;
      }
    }

    if (!foundServer) {
      storageSahiTasks._logger.log(
          Level.WARNING, "Server[expectedServerName] not found in server table!");
      editServer(server, server.getServerName(), null);
      return false;
    }

    // Return back to original name, as not to impact any subsequent tests that depend on original
    // name.
    editServer(server, server.getServerName(), null);

    return true;
  }
  public boolean waitForServerUpStatus(ServerMap serverMap) {
    HashMap<String, String> row = null;
    row =
        GuiTables.waitAndGetExpectedResult(
            storageSahiTasks,
            GuiTables.TableType.SERVERS,
            serverMap.getServerName(),
            GuiTables.STATUS,
            GuiTables.Status.UP.get(),
            1000,
            30);
    Assert.assertTrue(row != null, "server row exists in server table");

    if (!row.get(GuiTables.STATUS).equalsIgnoreCase(GuiTables.Status.UP.get())) {
      storageSahiTasks._logger.log(
          Level.WARNING,
          "Server["
              + serverMap.getServerName()
              + "("
              + serverMap.getServerHostIP()
              + ")] is not "
              + GuiTables.Status.UP.get()
              + "!");
      return false;
    }
    if (!storageSahiTasks.div(serverMap.getServerHostIP()).exists()) {
      storageSahiTasks._logger.log(
          Level.WARNING,
          "Server ["
              + serverMap.getServerName()
              + "("
              + serverMap.getServerHostIP()
              + ")] is not available on the list!");
      return false;
    }
    return true;
  }