1 // Copyright 2015 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.
5 #ifndef CHROMECAST_CRASH_LINUX_DUMMY_MINIDUMP_GENERATOR_H_
6 #define CHROMECAST_CRASH_LINUX_DUMMY_MINIDUMP_GENERATOR_H_
10 #include "base/macros.h"
11 #include "chromecast/crash/linux/minidump_generator.h"
13 namespace chromecast
{
15 class DummyMinidumpGenerator
: public MinidumpGenerator
{
17 // A dummy minidump generator to move an existing minidump into
18 // crash_uploader's monitoring path ($HOME/minidumps). The path is monitored
19 // with file lock-control, so that third process should not write to it
21 explicit DummyMinidumpGenerator(const std::string
& existing_minidump_path
);
23 // MinidumpGenerator implementation:
24 // Moves the minidump located at |existing_minidump_path_| to |minidump_path|.
25 // Returns true if successful, false otherwise. Note that this function MUST
26 // be called on a thread without IO restrictions, or it will fail fatally.
27 bool Generate(const std::string
& minidump_path
) override
;
30 const std::string existing_minidump_path_
;
32 DISALLOW_COPY_AND_ASSIGN(DummyMinidumpGenerator
);
35 } // namespace chromecast
37 #endif // CHROMECAST_CRASH_LINUX_DUMMY_MINIDUMP_GENERATOR_H_