1// Copyright (c) 2011 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.
4
5#ifndef CHROME_COMMON_AUTO_START_LINUX_H_
6#define CHROME_COMMON_AUTO_START_LINUX_H_
7
8#include <string>
9
10#include "base/basictypes.h"
11
12class AutoStart {
13 public:
14  // Registers an application to autostart on user login. |is_terminal_app|
15  // specifies whether the app will run in a terminal window.
16  static bool AddApplication(const std::string& autostart_filename,
17                             const std::string& application_name,
18                             const std::string& command_line,
19                             bool is_terminal_app);
20  // Removes an autostart file.
21  static bool Remove(const std::string& autostart_filename);
22  // Gets the entire contents of an autostart file.
23  static bool GetAutostartFileContents(const std::string& autostart_filename,
24                                       std::string* contents);
25  // Gets a specific value from an autostart file.
26  static bool GetAutostartFileValue(const std::string& autostart_filename,
27                                    const std::string& value_name,
28                                    std::string* value);
29 private:
30  DISALLOW_IMPLICIT_CONSTRUCTORS(AutoStart);
31};
32
33#endif  // CHROME_COMMON_AUTO_START_LINUX_H_
34