public synchronized SiteNode addPath(HistoryReference ref){
  if (Constant.isLowMemoryOptionSet()) {
    throw new InvalidParameterException("SiteMap should not be accessed when the low memory option is set");
  }
  HttpMessage msg=null;
  try {
    msg=ref.getHttpMessage();
  }
 catch (  Exception e) {
    log.error(e.getMessage(),e);
    return null;
  }
  return addPath(ref,msg);
}

public synchronized SiteNode addPath ( HistoryReference ref ) { if ( Constant . isLowMemoryOptionSet ( ) ) { throw new InvalidParameterException ( "SiteMap should not be accessed when the low memory option is set" ) ; } HttpMessage msg = null ; try { msg = ref . getHttpMessage ( ) ; } catch ( Exception e ) { log . error ( e . getMessage ( ) , e ) ; return null ; } return addPath ( ref , msg ) ; }
add the historyreference into the sitemap . this method will rely on reading message from the history table . note that this method must only be called on the eventdispatchthread
