DOMTimeMilliSec nsDOMNavigationTiming::TimeStampToDOMOrFetchStart(mozilla::TimeStamp aStamp) const { if (!aStamp.IsNull()) { return TimeStampToDOM(aStamp); } else { return GetFetchStart(); } }
nsresult nsDOMNavigationTiming::TimeStampToDOMOrFetchStart(mozilla::TimeStamp aStamp, DOMTimeMilliSec* aResult) { if (!aStamp.IsNull()) { return TimeStampToDOM(aStamp, aResult); } else { return GetFetchStart(aResult); } }
NS_IMETHODIMP nsPerformanceTiming::GetConnectStart(DOMTimeMilliSec* aTime) { if (!mChannel) { return GetFetchStart(aTime); } mozilla::TimeStamp stamp; mChannel->GetConnectStart(&stamp); return mDOMTiming->TimeStampToDOMOrFetchStart(stamp, aTime); }
NS_IMETHODIMP nsPerformanceTiming::GetDomainLookupEnd(DOMTimeMilliSec* aTime) { if (!mChannel) { return GetFetchStart(aTime); } mozilla::TimeStamp stamp; mChannel->GetDomainLookupEnd(&stamp); return mDOMTiming->TimeStampToDOM(stamp, aTime); }
NS_IMETHODIMP nsPerformanceTiming::GetResponseEnd(DOMTimeMilliSec* aTime) { if (!mChannel) { return GetFetchStart(aTime); } mozilla::TimeStamp stamp; mChannel->GetResponseEnd(&stamp); mozilla::TimeStamp cacheStamp; mChannel->GetCacheReadEnd(&cacheStamp); if (stamp.IsNull() || (!cacheStamp.IsNull() && cacheStamp < stamp)) { stamp = cacheStamp; } return mDOMTiming->TimeStampToDOMOrFetchStart(stamp, aTime); }