1/* 2 * Copyright (C) 2018 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 */ 16 17syntax = "proto3"; 18 19package sysprop; 20 21enum Access { 22 Readonly = 0; 23 Writeonce = 1; 24 ReadWrite = 2; 25} 26 27enum Owner { 28 Platform = 0; 29 Vendor = 1; 30 Odm = 2; 31} 32 33enum Scope { 34 Public = 0; 35 System = 1 [deprecated=true]; 36 Internal = 2; 37} 38 39enum Type { 40 Boolean = 0; 41 Integer = 1; 42 Long = 2; 43 Double = 3; 44 String = 4; 45 Enum = 5; 46 UInt = 6; 47 ULong = 7; 48 49 BooleanList = 20; 50 IntegerList = 21; 51 LongList = 22; 52 DoubleList = 23; 53 StringList = 24; 54 EnumList = 25; 55 UIntList = 26; 56 ULongList = 27; 57} 58 59message Property { 60 string api_name = 1; 61 Type type = 2; 62 Access access = 3; 63 Scope scope = 4; 64 string prop_name = 5; 65 string enum_values = 6; 66 bool integer_as_bool = 7; 67 bool deprecated = 8; 68 string legacy_prop_name = 9; 69} 70 71message Properties { 72 Owner owner = 1; 73 string module = 2; 74 repeated Property prop = 3; 75} 76 77message SyspropLibraryApis { 78 repeated Properties props = 1; 79} 80