blob: bd3ff42c878d0bab49b51d06b481d6d09ea70a25 [file] [log] [blame]
Bertrand SIMONNET52e5b992015-08-10 15:18:00 -07001/*
2 * Copyright (C) 2015 The Android Open Source Project
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
Bertrand SIMONNET46b49da2014-06-25 14:38:07 -070016
17#ifndef METRICS_UPLOADER_SYSTEM_PROFILE_SETTER_H_
18#define METRICS_UPLOADER_SYSTEM_PROFILE_SETTER_H_
19
20namespace metrics {
21class ChromeUserMetricsExtension;
22}
23
24// Abstract class used to delegate populating SystemProfileProto with system
25// information to simplify testing.
26class SystemProfileSetter {
27 public:
Yunlian Jiange2c2d892014-09-02 10:40:19 -070028 virtual ~SystemProfileSetter() {}
Bertrand SIMONNET46b49da2014-06-25 14:38:07 -070029 // Populates the protobuf with system informations.
Bertrand SIMONNET1f146552015-08-19 18:13:02 -070030 virtual bool Populate(metrics::ChromeUserMetricsExtension* profile_proto) = 0;
Bertrand SIMONNET46b49da2014-06-25 14:38:07 -070031};
32
33#endif // METRICS_UPLOADER_SYSTEM_PROFILE_SETTER_H_