f7901bd34d367c3af33c52324e3d151a92d798d2
[platform/framework/web/crosswalk.git] / src / chrome / browser / media / wv_test_license_server_config.h
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.
4
5 #ifndef CHROME_BROWSER_MEDIA_WV_TEST_LICENSE_SERVER_CONFIG_H_
6 #define CHROME_BROWSER_MEDIA_WV_TEST_LICENSE_SERVER_CONFIG_H_
7
8 #include "chrome/browser/media/test_license_server_config.h"
9
10 // License configuration to run the Widevine test license server.
11 class WVTestLicenseServerConfig : public TestLicenseServerConfig {
12  public:
13   WVTestLicenseServerConfig();
14   ~WVTestLicenseServerConfig() override;
15
16   std::string GetServerURL() override;
17
18   bool GetServerCommandLine(base::CommandLine* command_line) override;
19
20   bool IsPlatformSupported() override;
21
22  private:
23   // Server port. The port value should be set by calling SelectServerPort().
24   uint16 port_;
25
26   // Retrieves the path for the WV license server root:
27   // third_party/widevine/test/license_server/
28   void GetLicenseServerRootPath(base::FilePath* path);
29
30   // Retrieves the path for the WV license server:
31   // <license_server_root_path>/<platform>/
32   void GetLicenseServerPath(base::FilePath* path);
33
34   // Sets the server port to a randomly available port within a limited range.
35   bool SelectServerPort();
36
37   DISALLOW_COPY_AND_ASSIGN(WVTestLicenseServerConfig);
38 };
39
40 #endif  // CHROME_BROWSER_MEDIA_WV_TEST_LICENSE_SERVER_CONFIG_H_