private int getLeaderStatus()

in src/main/java/com/amazonaws/fixengineonaws/FixEngine.java [501:532]


    private int getLeaderStatus(CallableStatement heartbeatSprocStmt, boolean iAmTheLeader, boolean useJdbcHeartbeat) throws SQLException {
//      LOGGER.fine(MY_IP+"*********************HEARTBEAT********************");  
        int leaderStatus = LEADER_STATUS_STILL_NOT_LEADER;
        String lastIpAdd = "";
        Timestamp lastTimestamp = null;
        Timestamp timeNow = null;
        int timeDiffSec = 0;
//      LOGGER.fine(MY_IP+"****HEARTBEAT: USE_JDBC: " + USE_JDBC + "; heartbeatSprocStmt = " + heartbeatSprocStmt);
        if(!useJdbcHeartbeat) {
            if(iAmTheLeader) {
                leaderStatus =  LEADER_STATUS_STILL_LEADER;
            } else {
                leaderStatus = LEADER_STATUS_JUST_BECAME_LEADER;
            }
            LOGGER.info(MY_IP+"****HEARTBEAT: NO SQL CONNECTION. DEFAULT LEADER STATUS: " + leaderStatus);
        } else {    
            try {
                heartbeatSprocStmt.executeQuery();
                leaderStatus = heartbeatSprocStmt.getInt(2);
                lastIpAdd = heartbeatSprocStmt.getString(3);
                lastTimestamp = heartbeatSprocStmt.getTimestamp(4);
                timeNow = heartbeatSprocStmt.getTimestamp(5);
                timeDiffSec = heartbeatSprocStmt.getInt(6);
				LOGGER.info(MY_IP+"****HEARTBEAT: SQL SPROC SAYS: leaderStatus: " + leaderStatus + "; lastIpAdd: " + lastIpAdd + "; lastTimestamp: " + lastTimestamp + "; timeNow: " + timeNow + "; timeDiffSec: " + timeDiffSec);
            } catch (SQLException e) {
                LOGGER.severe(MY_IP+"HEARTBEAT: Exception executing SQL SPROC: " + e);
                e.printStackTrace();
                throw e;
            }
        }
		return leaderStatus;
    }