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

Unified Diff: tools/telemetry/telemetry/core/temporary_http_server.py

Issue 12294002: Revert 182991 (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 7 years, 10 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: tools/telemetry/telemetry/core/temporary_http_server.py
===================================================================
--- tools/telemetry/telemetry/core/temporary_http_server.py (revision 182999)
+++ tools/telemetry/telemetry/core/temporary_http_server.py (working copy)
@@ -1,67 +0,0 @@
-# Copyright (c) 2012 The Chromium Authors. All rights reserved.
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-import os
-import socket
-import subprocess
-import sys
-import urlparse
-
-from telemetry.core import util
-
-class TemporaryHTTPServer(object):
- def __init__(self, browser_backend, path):
- self._server = None
- self._devnull = None
- self._path = path
- self._forwarder = None
-
- self._host_port = util.GetAvailableLocalPort()
-
- assert os.path.exists(path), path
- assert os.path.isdir(path), path
-
- self._devnull = open(os.devnull, 'w')
- self._server = subprocess.Popen(
- [sys.executable, '-m', 'SimpleHTTPServer', str(self._host_port)],
- cwd=self._path,
- stdout=self._devnull, stderr=self._devnull)
-
- self._forwarder = browser_backend.CreateForwarder(
- util.PortPair(self._host_port,
- browser_backend.GetRemotePort(self._host_port)))
-
- def IsServerUp():
- return not socket.socket().connect_ex(('localhost', self._host_port))
- util.WaitFor(IsServerUp, 5)
-
- @property
- def path(self):
- return self._path
-
- def __enter__(self):
- return self
-
- def __exit__(self, *args):
- self.Close()
-
- def __del__(self):
- self.Close()
-
- def Close(self):
- if self._forwarder:
- self._forwarder.Close()
- self._forwarder = None
- if self._server:
- self._server.kill()
- self._server = None
- if self._devnull:
- self._devnull.close()
- self._devnull = None
-
- @property
- def url(self):
- return self._forwarder.url
-
- def UrlOf(self, path):
- return urlparse.urljoin(self.url, path)
« no previous file with comments | « tools/telemetry/telemetry/core/tab_unittest.py ('k') | tools/telemetry/telemetry/core/temporary_http_server_unittest.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698