1b3fa53bf760bd0a6fd1ef9df28cb425586d733f6Alex Deymo//
2b3fa53bf760bd0a6fd1ef9df28cb425586d733f6Alex Deymo// Copyright (C) 2016 The Android Open Source Project
3b3fa53bf760bd0a6fd1ef9df28cb425586d733f6Alex Deymo//
4b3fa53bf760bd0a6fd1ef9df28cb425586d733f6Alex Deymo// Licensed under the Apache License, Version 2.0 (the "License");
5b3fa53bf760bd0a6fd1ef9df28cb425586d733f6Alex Deymo// you may not use this file except in compliance with the License.
6b3fa53bf760bd0a6fd1ef9df28cb425586d733f6Alex Deymo// You may obtain a copy of the License at
7b3fa53bf760bd0a6fd1ef9df28cb425586d733f6Alex Deymo//
8b3fa53bf760bd0a6fd1ef9df28cb425586d733f6Alex Deymo//      http://www.apache.org/licenses/LICENSE-2.0
9b3fa53bf760bd0a6fd1ef9df28cb425586d733f6Alex Deymo//
10b3fa53bf760bd0a6fd1ef9df28cb425586d733f6Alex Deymo// Unless required by applicable law or agreed to in writing, software
11b3fa53bf760bd0a6fd1ef9df28cb425586d733f6Alex Deymo// distributed under the License is distributed on an "AS IS" BASIS,
12b3fa53bf760bd0a6fd1ef9df28cb425586d733f6Alex Deymo// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13b3fa53bf760bd0a6fd1ef9df28cb425586d733f6Alex Deymo// See the License for the specific language governing permissions and
14b3fa53bf760bd0a6fd1ef9df28cb425586d733f6Alex Deymo// limitations under the License.
15b3fa53bf760bd0a6fd1ef9df28cb425586d733f6Alex Deymo//
16b3fa53bf760bd0a6fd1ef9df28cb425586d733f6Alex Deymo
17b3fa53bf760bd0a6fd1ef9df28cb425586d733f6Alex Deymo#ifndef UPDATE_ENGINE_OMAHA_UTILS_H_
18b3fa53bf760bd0a6fd1ef9df28cb425586d733f6Alex Deymo#define UPDATE_ENGINE_OMAHA_UTILS_H_
19b3fa53bf760bd0a6fd1ef9df28cb425586d733f6Alex Deymo
20b3fa53bf760bd0a6fd1ef9df28cb425586d733f6Alex Deymo#include <string>
21b3fa53bf760bd0a6fd1ef9df28cb425586d733f6Alex Deymo
22b3fa53bf760bd0a6fd1ef9df28cb425586d733f6Alex Deymonamespace chromeos_update_engine {
23b3fa53bf760bd0a6fd1ef9df28cb425586d733f6Alex Deymo
24b3fa53bf760bd0a6fd1ef9df28cb425586d733f6Alex Deymo// The end-of-life status of the device.
25b3fa53bf760bd0a6fd1ef9df28cb425586d733f6Alex Deymoenum class EolStatus {
26b3fa53bf760bd0a6fd1ef9df28cb425586d733f6Alex Deymo  kSupported = 0,
27b3fa53bf760bd0a6fd1ef9df28cb425586d733f6Alex Deymo  kSecurityOnly,
28b3fa53bf760bd0a6fd1ef9df28cb425586d733f6Alex Deymo  kEol,
29b3fa53bf760bd0a6fd1ef9df28cb425586d733f6Alex Deymo};
30b3fa53bf760bd0a6fd1ef9df28cb425586d733f6Alex Deymo
31b3fa53bf760bd0a6fd1ef9df28cb425586d733f6Alex Deymo// Returns the string representation of the |eol_status|.
32b3fa53bf760bd0a6fd1ef9df28cb425586d733f6Alex Deymoconst char* EolStatusToString(EolStatus eol_status);
33b3fa53bf760bd0a6fd1ef9df28cb425586d733f6Alex Deymo
34b3fa53bf760bd0a6fd1ef9df28cb425586d733f6Alex Deymo// Converts the end-of-life status string to an EolStatus numeric value. In case
35b3fa53bf760bd0a6fd1ef9df28cb425586d733f6Alex Deymo// of an invalid string, the default "supported" value will be used instead.
36b3fa53bf760bd0a6fd1ef9df28cb425586d733f6Alex DeymoEolStatus StringToEolStatus(const std::string& eol_status);
37b3fa53bf760bd0a6fd1ef9df28cb425586d733f6Alex Deymo
38b3fa53bf760bd0a6fd1ef9df28cb425586d733f6Alex Deymo}  // namespace chromeos_update_engine
39b3fa53bf760bd0a6fd1ef9df28cb425586d733f6Alex Deymo
40b3fa53bf760bd0a6fd1ef9df28cb425586d733f6Alex Deymo#endif  // UPDATE_ENGINE_OMAHA_UTILS_H_
41