Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(48)

Unified Diff: public/platform/WebRTCCertificate.h

Issue 1311853005: RTCCertificate and RTCPeerConnection.generateCertificate added to JavaScript (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Addressed jochen's comments Created 5 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: public/platform/WebRTCCertificate.h
diff --git a/Source/core/timing/PerformanceRenderTiming.h b/public/platform/WebRTCCertificate.h
similarity index 57%
copy from Source/core/timing/PerformanceRenderTiming.h
copy to public/platform/WebRTCCertificate.h
index 87e115b15e4c569fdfb72e8d1bf88501d20f8d34..73bf34b7a7b3b7816f31c632f0c3747e23b1c775 100644
--- a/Source/core/timing/PerformanceRenderTiming.h
+++ b/public/platform/WebRTCCertificate.h
@@ -1,6 +1,5 @@
/*
* Copyright (C) 2015 Google Inc. All rights reserved.
- * Copyright (C) 2015 Intel Inc. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
@@ -29,40 +28,37 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-#ifndef PerformanceRenderTiming_h
-#define PerformanceRenderTiming_h
+#ifndef WebRTCCertificate_h
+#define WebRTCCertificate_h
-#include "core/timing/PerformanceEntry.h"
-#include "platform/heap/Handle.h"
-#include "wtf/Forward.h"
-#include "wtf/text/WTFString.h"
+#include "public/platform/WebRTCKeyType.h"
+#include "wtf/Noncopyable.h"
namespace blink {
-class Document;
-
-class PerformanceRenderTiming final : public PerformanceEntry {
- DEFINE_WRAPPERTYPEINFO();
+// Interface defining what blink needs to know about certificates (abstracting away
+// Chrome and WebRTC layer implementation details). You can create shallow copies of the
+// WebRTCCertificate. When all copies are destroyed, the implementation-specific data must
+// be freed. WebRTCCertificate objects thus act like references to the reference counted
+// internal data.
+class WebRTCCertificate {
+ WTF_MAKE_NONCOPYABLE(WebRTCCertificate);
public:
- static PerformanceRenderTiming* create(Document* requestingDocument, unsigned sourceFrame, double startTime, double finishTime)
- {
- return new PerformanceRenderTiming(requestingDocument, sourceFrame, startTime, finishTime);
- }
-
- unsigned sourceFrame() const;
-
- bool isRender() override { return true; }
+ WebRTCCertificate() = default;
+ virtual ~WebRTCCertificate() = default;
- DECLARE_VIRTUAL_TRACE();
+ // Copies the WebRTCCertificate object without copying the underlying
+ // implementation-specific (WebRTC layer) certificate. When all copies are destroyed
+ // the underlying data is freed.
+ virtual WebRTCCertificate* shallowCopy() const = 0;
-private:
- PerformanceRenderTiming(Document* requestingDocument, unsigned sourceFrame, double startTime, double finishTime);
- ~PerformanceRenderTiming() override;
+ virtual const WebRTCKeyType& keyType() const = 0;
- unsigned m_sourceFrame;
- RefPtrWillBeMember<Document> m_requestingDocument;
+ // The date and time after which the certificate should be considered
+ // invalid. Expressed in time since 1970-01-01T00:00:00Z in milliseconds.
+ virtual double expires() const = 0;
};
} // namespace blink
-#endif // PerformanceRenderTiming_h
+#endif // WebRTCCertificate_h

Powered by Google App Engine
This is Rietveld 408576698