AU: Proxy Resolver classes
A collection of classes (abstract ProxyResolver interface and two
concrete implementations). The abstraction is one that should suit us
moving forward: a string URL is provided and a collection of proxy
servers is returned. One implementation always returns [no
proxy]. Another returns [manual settings from chrome, if applicable,
..., no proxy].
A future concrete implementation will consult Chrome via DBus with the
URL in question, however this is delayed until Chrome exposes such an
API.
As a result of this API missing from Chrome, this CL only resolves
proxies for a URL with manually input proxy settings.
Future CLs will integrate this into the rest of the update system.
BUG=3167
TEST=unit tests, (with future CLs) working proxy support on device
Review URL: http://codereview.chromium.org/5151005
Change-Id: If9dc6d09da681bca6f6ae74c896ba946ab81cb4d
diff --git a/SConstruct b/SConstruct
index f772882..97cc6e3 100644
--- a/SConstruct
+++ b/SConstruct
@@ -236,6 +236,7 @@
buffered_file_writer.cc
bzip.cc
bzip_extent_writer.cc
+ chrome_proxy_resolver.cc
cycle_breaker.cc
dbus_service.cc
decompressing_file_writer.cc
@@ -261,6 +262,7 @@
payload_signer.cc
postinstall_runner_action.cc
prefs.cc
+ proxy_resolver.cc
simple_key_value_store.cc
split_file_writer.cc
subprocess.cc
@@ -278,6 +280,7 @@
action_processor_unittest.cc
buffered_file_writer_unittest.cc
bzip_extent_writer_unittest.cc
+ chrome_proxy_resolver_unittest.cc
cycle_breaker_unittest.cc
decompressing_file_writer_unittest.cc
delta_diff_generator_unittest.cc