electron/brightray/browser/net_log.h

45 lines
1 KiB
C
Raw Normal View History

2015-06-05 14:54:38 +00:00
// Copyright (c) 2015 GitHub, Inc.
// Use of this source code is governed by the MIT license that can be
// found in the LICENSE file.
#ifndef BRIGHTRAY_BROWSER_NET_LOG_H_
#define BRIGHTRAY_BROWSER_NET_LOG_H_
2015-06-05 14:54:38 +00:00
#include <memory>
#include "base/callback.h"
#include "base/files/file_path.h"
2015-06-05 14:54:38 +00:00
#include "net/log/net_log.h"
namespace net {
class FileNetLogObserver;
}
2015-06-05 14:54:38 +00:00
namespace brightray {
2015-08-11 10:29:55 +00:00
class NetLog : public net::NetLog {
2015-06-05 14:54:38 +00:00
public:
2015-08-11 10:29:55 +00:00
NetLog();
2015-06-06 09:03:07 +00:00
~NetLog() override;
2015-06-05 14:54:38 +00:00
void StartLogging();
void StopLogging();
void StartDynamicLogging(const base::FilePath& path);
bool IsDynamicLogging();
base::FilePath GetDynamicLoggingPath();
void StopDynamicLogging(base::OnceClosure callback = base::OnceClosure());
2015-06-05 14:54:38 +00:00
private:
// This observer handles writing NetLogs.
std::unique_ptr<net::FileNetLogObserver> file_net_log_observer_;
std::unique_ptr<net::FileNetLogObserver> dynamic_file_net_log_observer_;
base::FilePath dynamic_file_net_log_path_;
2015-06-05 14:54:38 +00:00
DISALLOW_COPY_AND_ASSIGN(NetLog);
};
} // namespace brightray
#endif // BRIGHTRAY_BROWSER_NET_LOG_H_