summaryrefslogtreecommitdiffstats
path: root/netwerk/protocol/http/InterceptedChannel.cpp
diff options
context:
space:
mode:
authorMoonchild <mcwerewolf@gmail.com>2018-04-29 14:44:20 +0200
committerGitHub <noreply@github.com>2018-04-29 14:44:20 +0200
commit6fe08dcf34417e825b7b9b6b33141a4a3b46ba24 (patch)
treef5d213986dcdb7c281e23ce93e176b7ca9fca92c /netwerk/protocol/http/InterceptedChannel.cpp
parentdc35e5c26dfa8c7fe6d27f7bc96f7a6e3c02de9b (diff)
parente040ed925030f899f845d458c226f7e439f4ec8b (diff)
downloadUXP-6fe08dcf34417e825b7b9b6b33141a4a3b46ba24.tar
UXP-6fe08dcf34417e825b7b9b6b33141a4a3b46ba24.tar.gz
UXP-6fe08dcf34417e825b7b9b6b33141a4a3b46ba24.tar.lz
UXP-6fe08dcf34417e825b7b9b6b33141a4a3b46ba24.tar.xz
UXP-6fe08dcf34417e825b7b9b6b33141a4a3b46ba24.zip
Merge pull request #293 from janekptacijarabaci/js_dom_performance-resource-timing_1
moebius#158: The Performance Resource Timing (added support for "workerStart")
Diffstat (limited to 'netwerk/protocol/http/InterceptedChannel.cpp')
-rw-r--r--netwerk/protocol/http/InterceptedChannel.cpp35
1 files changed, 35 insertions, 0 deletions
diff --git a/netwerk/protocol/http/InterceptedChannel.cpp b/netwerk/protocol/http/InterceptedChannel.cpp
index 9e38e2734..2dadbe760 100644
--- a/netwerk/protocol/http/InterceptedChannel.cpp
+++ b/netwerk/protocol/http/InterceptedChannel.cpp
@@ -10,6 +10,7 @@
#include "nsInputStreamPump.h"
#include "nsIPipe.h"
#include "nsIStreamListener.h"
+#include "nsITimedChannel.h"
#include "nsHttpChannel.h"
#include "HttpChannelChild.h"
#include "nsHttpResponseHead.h"
@@ -134,6 +135,40 @@ InterceptedChannelBase::SetReleaseHandle(nsISupports* aHandle)
return NS_OK;
}
+NS_IMETHODIMP
+InterceptedChannelBase::SaveTimeStampsToUnderlyingChannel()
+{
+ MOZ_ASSERT(NS_IsMainThread());
+
+ nsCOMPtr<nsIChannel> underlyingChannel;
+ nsresult rv = GetChannel(getter_AddRefs(underlyingChannel));
+ MOZ_ASSERT(NS_SUCCEEDED(rv));
+
+ nsCOMPtr<nsITimedChannel> timedChannel =
+ do_QueryInterface(underlyingChannel);
+ MOZ_ASSERT(timedChannel);
+
+ rv = timedChannel->SetLaunchServiceWorkerStart(mLaunchServiceWorkerStart);
+ MOZ_ASSERT(NS_SUCCEEDED(rv));
+
+ rv = timedChannel->SetLaunchServiceWorkerEnd(mLaunchServiceWorkerEnd);
+ MOZ_ASSERT(NS_SUCCEEDED(rv));
+
+ rv = timedChannel->SetDispatchFetchEventStart(mDispatchFetchEventStart);
+ MOZ_ASSERT(NS_SUCCEEDED(rv));
+
+ rv = timedChannel->SetDispatchFetchEventEnd(mDispatchFetchEventEnd);
+ MOZ_ASSERT(NS_SUCCEEDED(rv));
+
+ rv = timedChannel->SetHandleFetchEventStart(mHandleFetchEventStart);
+ MOZ_ASSERT(NS_SUCCEEDED(rv));
+
+ rv = timedChannel->SetHandleFetchEventEnd(mHandleFetchEventEnd);
+ MOZ_ASSERT(NS_SUCCEEDED(rv));
+
+ return rv;
+}
+
/* static */
already_AddRefed<nsIURI>
InterceptedChannelBase::SecureUpgradeChannelURI(nsIChannel* aChannel)