// Copyright (c) 2017 GitHub, Inc. // Use of this source code is governed by the MIT license that can be // found in the LICENSE file. #ifndef ATOM_BROWSER_LOADER_LAYERED_RESOURCE_HANDLER_H_ #define ATOM_BROWSER_LOADER_LAYERED_RESOURCE_HANDLER_H_ #include "content/browser/loader/layered_resource_handler.h" namespace atom { // Resource handler that notifies on various stages of a resource request. class LayeredResourceHandler : public content::LayeredResourceHandler { public: class Delegate { public: Delegate() {} virtual ~Delegate() {} virtual void OnResponseStarted(content::ResourceResponse* response) = 0; }; LayeredResourceHandler(net::URLRequest* request, std::unique_ptr next_handler, Delegate* delegate); ~LayeredResourceHandler() override; // content::LayeredResourceHandler: void OnResponseStarted( content::ResourceResponse* response, std::unique_ptr controller) override; private: Delegate* delegate_; DISALLOW_COPY_AND_ASSIGN(LayeredResourceHandler); }; } // namespace atom #endif // ATOM_BROWSER_LOADER_LAYERED_RESOURCE_HANDLER_H_