1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef WebEncryptedMediaRequest_h
6 #define WebEncryptedMediaRequest_h
8 #include "public/platform/WebCommon.h"
9 #include "public/platform/WebPrivatePtr.h"
10 #include "public/platform/WebString.h"
14 class EncryptedMediaRequest
;
15 class WebContentDecryptionModuleAccess
;
16 struct WebMediaKeySystemConfiguration
;
17 class WebSecurityOrigin
;
18 template <typename T
> class WebVector
;
20 class WebEncryptedMediaRequest
{
22 BLINK_PLATFORM_EXPORT
WebEncryptedMediaRequest(const WebEncryptedMediaRequest
&);
23 BLINK_PLATFORM_EXPORT
~WebEncryptedMediaRequest();
25 BLINK_PLATFORM_EXPORT WebString
keySystem() const;
26 BLINK_PLATFORM_EXPORT
const WebVector
<WebMediaKeySystemConfiguration
>& supportedConfigurations() const;
28 BLINK_PLATFORM_EXPORT WebSecurityOrigin
securityOrigin() const;
30 BLINK_PLATFORM_EXPORT
void requestSucceeded(WebContentDecryptionModuleAccess
*);
31 BLINK_PLATFORM_EXPORT
void requestNotSupported(const WebString
& errorMessage
);
34 BLINK_PLATFORM_EXPORT
explicit WebEncryptedMediaRequest(EncryptedMediaRequest
*);
38 void assign(const WebEncryptedMediaRequest
&);
41 WebPrivatePtr
<EncryptedMediaRequest
> m_private
;
46 #endif // WebEncryptedMediaRequest_h