Class HtmlUnitPerformanceTimingMetrics
- All Implemented Interfaces:
PerformanceTimingMetrics<HtmlUnitPerformanceTimingMetrics>
PerformanceTimingMetrics.
The values returned from this object are not epoch values as querying the corresponding Javascript attribute
directly would return, but it rather handles navigationStart as zero and returns time values passed
since that point in time.
If a query for a certain metric returns 0 it means it happened at the same moment (at least in epoch)
than navigationStart.
A query for a certain metrics returns a negative value if the event has not been registered on the page, or it is not feasible/valid for the given page/page load/redirect.
Though the HtmlUnit PerformanceTiming class is a mock implementation of the PerformanceTiming API,
the lack of this adapter might cause issues.
Before retrieving performance timing metrics from HtmlUnit, please check the aforementioned class whether it is still a mock object or meanwhile it has been implemented properly to return real values.
-
Constructor Summary
ConstructorsConstructorDescriptionHtmlUnitPerformanceTimingMetrics(com.gargoylesoftware.htmlunit.javascript.host.performance.PerformanceTiming timing) Creates a newHtmlUnitPerformanceTimingMetricsobject delegating calls to the argumentPerformanceTiming.HtmlUnitPerformanceTimingMetrics(com.gargoylesoftware.htmlunit.javascript.host.performance.PerformanceTiming timing, TimeUnit timeUnit) Creates a newHtmlUnitPerformanceTimingMetricsobject delegating calls to the argumentPerformanceTiming. -
Method Summary
Modifier and TypeMethodDescriptionlonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglonglongAccording to the official documentation of the secureConnectionStart attribute this attribute is optional and may be set asundefined.longlongCreates a new metrics object instance that returns the metrics values in the givenTimeUnit.
-
Constructor Details
-
HtmlUnitPerformanceTimingMetrics
public HtmlUnitPerformanceTimingMetrics(com.gargoylesoftware.htmlunit.javascript.host.performance.PerformanceTiming timing) Creates a newHtmlUnitPerformanceTimingMetricsobject delegating calls to the argumentPerformanceTiming.Sets the time unit of these metrics to
TimeUnit.MILLISECONDS.- Parameters:
timing- the HtmlUnit performance timing object
-
HtmlUnitPerformanceTimingMetrics
public HtmlUnitPerformanceTimingMetrics(com.gargoylesoftware.htmlunit.javascript.host.performance.PerformanceTiming timing, TimeUnit timeUnit) Creates a newHtmlUnitPerformanceTimingMetricsobject delegating calls to the argumentPerformanceTiming.Sets the time unit of these metrics to the given time unit.
- Parameters:
timing- the HtmlUnit performance timing objecttimeUnit- the time unit to convert the metrics to
-
-
Method Details
-
in
Description copied from interface:PerformanceTimingMetricsCreates a new metrics object instance that returns the metrics values in the givenTimeUnit.When implementing this method take into account that there may be metric values that don't always return a
longvalue but may be undefined, or something else, like thesecureConnectionStartattribute.- Specified by:
inin interfacePerformanceTimingMetrics<HtmlUnitPerformanceTimingMetrics>- Parameters:
targetTimeUnit- the time unit to return the metrics in- Returns:
- the metrics in the given time unit
-
getUnloadEventStart
public long getUnloadEventStart()- Specified by:
getUnloadEventStartin interfacePerformanceTimingMetrics<HtmlUnitPerformanceTimingMetrics>
-
getUnloadEventEnd
public long getUnloadEventEnd()- Specified by:
getUnloadEventEndin interfacePerformanceTimingMetrics<HtmlUnitPerformanceTimingMetrics>
-
getRedirectStart
public long getRedirectStart()- Specified by:
getRedirectStartin interfacePerformanceTimingMetrics<HtmlUnitPerformanceTimingMetrics>
-
getRedirectEnd
public long getRedirectEnd()- Specified by:
getRedirectEndin interfacePerformanceTimingMetrics<HtmlUnitPerformanceTimingMetrics>
-
getFetchStart
public long getFetchStart()- Specified by:
getFetchStartin interfacePerformanceTimingMetrics<HtmlUnitPerformanceTimingMetrics>
-
getDomainLookupStart
public long getDomainLookupStart()- Specified by:
getDomainLookupStartin interfacePerformanceTimingMetrics<HtmlUnitPerformanceTimingMetrics>
-
getDomainLookupEnd
public long getDomainLookupEnd()- Specified by:
getDomainLookupEndin interfacePerformanceTimingMetrics<HtmlUnitPerformanceTimingMetrics>
-
getConnectStart
public long getConnectStart()- Specified by:
getConnectStartin interfacePerformanceTimingMetrics<HtmlUnitPerformanceTimingMetrics>
-
getConnectEnd
public long getConnectEnd()- Specified by:
getConnectEndin interfacePerformanceTimingMetrics<HtmlUnitPerformanceTimingMetrics>
-
getSecureConnectionStart
Description copied from interface:PerformanceTimingMetricsAccording to the official documentation of the secureConnectionStart attribute this attribute is optional and may be set asundefined.It is up to the user of this method to check whether it is present and convert it accordingly.
- Specified by:
getSecureConnectionStartin interfacePerformanceTimingMetrics<HtmlUnitPerformanceTimingMetrics>- Returns:
- the metrics value
-
getRequestStart
public long getRequestStart()- Specified by:
getRequestStartin interfacePerformanceTimingMetrics<HtmlUnitPerformanceTimingMetrics>
-
getResponseStart
public long getResponseStart()- Specified by:
getResponseStartin interfacePerformanceTimingMetrics<HtmlUnitPerformanceTimingMetrics>
-
getResponseEnd
public long getResponseEnd()- Specified by:
getResponseEndin interfacePerformanceTimingMetrics<HtmlUnitPerformanceTimingMetrics>
-
getDomLoading
public long getDomLoading()- Specified by:
getDomLoadingin interfacePerformanceTimingMetrics<HtmlUnitPerformanceTimingMetrics>
-
getDomInteractive
public long getDomInteractive()- Specified by:
getDomInteractivein interfacePerformanceTimingMetrics<HtmlUnitPerformanceTimingMetrics>
-
getDomContentLoadedEventStart
public long getDomContentLoadedEventStart()- Specified by:
getDomContentLoadedEventStartin interfacePerformanceTimingMetrics<HtmlUnitPerformanceTimingMetrics>
-
getDomContentLoadedEventEnd
public long getDomContentLoadedEventEnd()- Specified by:
getDomContentLoadedEventEndin interfacePerformanceTimingMetrics<HtmlUnitPerformanceTimingMetrics>
-
getDomComplete
public long getDomComplete()- Specified by:
getDomCompletein interfacePerformanceTimingMetrics<HtmlUnitPerformanceTimingMetrics>
-
getLoadEventStart
public long getLoadEventStart()- Specified by:
getLoadEventStartin interfacePerformanceTimingMetrics<HtmlUnitPerformanceTimingMetrics>
-
getLoadEventEnd
public long getLoadEventEnd()- Specified by:
getLoadEventEndin interfacePerformanceTimingMetrics<HtmlUnitPerformanceTimingMetrics>
-