I got a null pointer exception at the line mentioned. What could have caused it?

private ARTTimerTask timerTask = ARTTimerTask.getInstance();
...
public void notify(String messageId, Long messageTime) {
    ...
    //NPE in the line below
    timerTask.addMessage(messageId,
                  System.currentTimeMillis() - messageTime);
}

Here’s the relevant section from ARTTimerTask:

private static final ARTTimerTask _INSTANCE
                                = new ARTTimerTask();

public static ARTTimerTask getInstance() {
    return _INSTANCE;
}

(Debashish comes over to the desk, takes a look and proclaims, “This Axxx Bxxxxx is pathetic”. 7 seconds!)