1*b7c941bbSAndroid Build Coastguard Worker// Copyright (C) 2018 The Android Open Source Project 2*b7c941bbSAndroid Build Coastguard Worker// 3*b7c941bbSAndroid Build Coastguard Worker// Licensed under the Apache License, Version 2.0 (the "License"); 4*b7c941bbSAndroid Build Coastguard Worker// you may not use this file except in compliance with the License. 5*b7c941bbSAndroid Build Coastguard Worker// You may obtain a copy of the License at 6*b7c941bbSAndroid Build Coastguard Worker// 7*b7c941bbSAndroid Build Coastguard Worker// http://www.apache.org/licenses/LICENSE-2.0 8*b7c941bbSAndroid Build Coastguard Worker// 9*b7c941bbSAndroid Build Coastguard Worker// Unless required by applicable law or agreed to in writing, software 10*b7c941bbSAndroid Build Coastguard Worker// distributed under the License is distributed on an "AS IS" BASIS, 11*b7c941bbSAndroid Build Coastguard Worker// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12*b7c941bbSAndroid Build Coastguard Worker// See the License for the specific language governing permissions and 13*b7c941bbSAndroid Build Coastguard Worker// limitations under the License. 14*b7c941bbSAndroid Build Coastguard Worker 15*b7c941bbSAndroid Build Coastguard Worker// [START declaration] 16*b7c941bbSAndroid Build Coastguard Workersyntax = "proto3"; 17*b7c941bbSAndroid Build Coastguard Workerpackage com_android_cts_releaseparser; 18*b7c941bbSAndroid Build Coastguard Worker// [END declaration] 19*b7c941bbSAndroid Build Coastguard Worker 20*b7c941bbSAndroid Build Coastguard Worker// [START java_declaration] 21*b7c941bbSAndroid Build Coastguard Workeroption java_package = "com.android.cts.releaseparser"; 22*b7c941bbSAndroid Build Coastguard Workeroption java_outer_classname = "ReleaseProto"; 23*b7c941bbSAndroid Build Coastguard Worker// [END java_declaration] 24*b7c941bbSAndroid Build Coastguard Worker 25*b7c941bbSAndroid Build Coastguard Worker// [START messages] 26*b7c941bbSAndroid Build Coastguard Workermessage Option { 27*b7c941bbSAndroid Build Coastguard Worker string name = 1; 28*b7c941bbSAndroid Build Coastguard Worker string key = 2; 29*b7c941bbSAndroid Build Coastguard Worker string value =3; 30*b7c941bbSAndroid Build Coastguard Worker} 31*b7c941bbSAndroid Build Coastguard Worker 32*b7c941bbSAndroid Build Coastguard Workermessage TestModuleConfig { 33*b7c941bbSAndroid Build Coastguard Worker string module_name = 1; 34*b7c941bbSAndroid Build Coastguard Worker string component = 2; 35*b7c941bbSAndroid Build Coastguard Worker string description = 3; 36*b7c941bbSAndroid Build Coastguard Worker repeated Option options = 4; 37*b7c941bbSAndroid Build Coastguard Worker 38*b7c941bbSAndroid Build Coastguard Worker message TargetPreparer { 39*b7c941bbSAndroid Build Coastguard Worker string test_class = 1; 40*b7c941bbSAndroid Build Coastguard Worker repeated Option options = 2; 41*b7c941bbSAndroid Build Coastguard Worker } 42*b7c941bbSAndroid Build Coastguard Worker repeated TargetPreparer target_preparers = 5; 43*b7c941bbSAndroid Build Coastguard Worker repeated string test_file_names = 6; 44*b7c941bbSAndroid Build Coastguard Worker 45*b7c941bbSAndroid Build Coastguard Worker message TestClass { 46*b7c941bbSAndroid Build Coastguard Worker string test_class = 1; 47*b7c941bbSAndroid Build Coastguard Worker string package = 2; 48*b7c941bbSAndroid Build Coastguard Worker repeated Option options = 3; 49*b7c941bbSAndroid Build Coastguard Worker } 50*b7c941bbSAndroid Build Coastguard Worker repeated TestClass test_classes = 7; 51*b7c941bbSAndroid Build Coastguard Worker repeated string test_jars = 8; 52*b7c941bbSAndroid Build Coastguard Worker} 53*b7c941bbSAndroid Build Coastguard Worker 54*b7c941bbSAndroid Build Coastguard Workermessage Element { 55*b7c941bbSAndroid Build Coastguard Worker string name = 1; 56*b7c941bbSAndroid Build Coastguard Worker string value = 2; 57*b7c941bbSAndroid Build Coastguard Worker} 58*b7c941bbSAndroid Build Coastguard Worker 59*b7c941bbSAndroid Build Coastguard Workermessage ApiAnnotation { 60*b7c941bbSAndroid Build Coastguard Worker int32 visibility = 1; 61*b7c941bbSAndroid Build Coastguard Worker string type = 2; 62*b7c941bbSAndroid Build Coastguard Worker 63*b7c941bbSAndroid Build Coastguard Worker repeated Element elements = 3; 64*b7c941bbSAndroid Build Coastguard Worker} 65*b7c941bbSAndroid Build Coastguard Worker 66*b7c941bbSAndroid Build Coastguard Workermessage ApiField { 67*b7c941bbSAndroid Build Coastguard Worker string defining_class = 1; 68*b7c941bbSAndroid Build Coastguard Worker string name = 2; 69*b7c941bbSAndroid Build Coastguard Worker string type = 3; 70*b7c941bbSAndroid Build Coastguard Worker int32 access_flags = 4; 71*b7c941bbSAndroid Build Coastguard Worker string initial_value = 5; 72*b7c941bbSAndroid Build Coastguard Worker repeated ApiAnnotation annotations = 6; 73*b7c941bbSAndroid Build Coastguard Worker string value = 7; 74*b7c941bbSAndroid Build Coastguard Worker} 75*b7c941bbSAndroid Build Coastguard Worker 76*b7c941bbSAndroid Build Coastguard Workermessage ApiMethod { 77*b7c941bbSAndroid Build Coastguard Worker string defining_class = 1; 78*b7c941bbSAndroid Build Coastguard Worker string name = 2; 79*b7c941bbSAndroid Build Coastguard Worker repeated string parameters = 3; 80*b7c941bbSAndroid Build Coastguard Worker string return_type = 4; 81*b7c941bbSAndroid Build Coastguard Worker int32 access_flags = 5; 82*b7c941bbSAndroid Build Coastguard Worker string known_failure_filter = 6; 83*b7c941bbSAndroid Build Coastguard Worker repeated ApiAnnotation annotations = 7; 84*b7c941bbSAndroid Build Coastguard Worker} 85*b7c941bbSAndroid Build Coastguard Worker 86*b7c941bbSAndroid Build Coastguard Workermessage ApiClass { 87*b7c941bbSAndroid Build Coastguard Worker string name = 1; 88*b7c941bbSAndroid Build Coastguard Worker string type = 2; 89*b7c941bbSAndroid Build Coastguard Worker string super_class = 3; 90*b7c941bbSAndroid Build Coastguard Worker repeated string interfaces = 4; 91*b7c941bbSAndroid Build Coastguard Worker TestClassType test_class_type = 5; 92*b7c941bbSAndroid Build Coastguard Worker int32 access_flags = 6; 93*b7c941bbSAndroid Build Coastguard Worker repeated ApiAnnotation annotations = 7; 94*b7c941bbSAndroid Build Coastguard Worker repeated ApiMethod methods = 8; 95*b7c941bbSAndroid Build Coastguard Worker repeated ApiField fields = 9; 96*b7c941bbSAndroid Build Coastguard Worker} 97*b7c941bbSAndroid Build Coastguard Worker 98*b7c941bbSAndroid Build Coastguard Workermessage ApiPackage { 99*b7c941bbSAndroid Build Coastguard Worker string name = 1; 100*b7c941bbSAndroid Build Coastguard Worker string package_file = 2; 101*b7c941bbSAndroid Build Coastguard Worker string content_id = 3; 102*b7c941bbSAndroid Build Coastguard Worker string op_codes = 4; 103*b7c941bbSAndroid Build Coastguard Worker 104*b7c941bbSAndroid Build Coastguard Worker repeated ApiClass classes = 5; 105*b7c941bbSAndroid Build Coastguard Worker string error = 6; 106*b7c941bbSAndroid Build Coastguard Worker} 107*b7c941bbSAndroid Build Coastguard Worker 108*b7c941bbSAndroid Build Coastguard Workerenum TestClassType { 109*b7c941bbSAndroid Build Coastguard Worker UNKNOWN = 0; 110*b7c941bbSAndroid Build Coastguard Worker JUNIT3 = 1; 111*b7c941bbSAndroid Build Coastguard Worker JUNIT4 = 2; 112*b7c941bbSAndroid Build Coastguard Worker PARAMETERIZED = 3; 113*b7c941bbSAndroid Build Coastguard Worker JAVAHOST = 4; 114*b7c941bbSAndroid Build Coastguard Worker} 115*b7c941bbSAndroid Build Coastguard Worker 116*b7c941bbSAndroid Build Coastguard Workermessage TestSuite { 117*b7c941bbSAndroid Build Coastguard Worker string name = 1; 118*b7c941bbSAndroid Build Coastguard Worker // Version 119*b7c941bbSAndroid Build Coastguard Worker string version = 2; 120*b7c941bbSAndroid Build Coastguard Worker // Build Number 121*b7c941bbSAndroid Build Coastguard Worker string build_number = 3; 122*b7c941bbSAndroid Build Coastguard Worker // Content ID 123*b7c941bbSAndroid Build Coastguard Worker string content_id = 4; 124*b7c941bbSAndroid Build Coastguard Worker 125*b7c941bbSAndroid Build Coastguard Worker enum TestType { 126*b7c941bbSAndroid Build Coastguard Worker UNKNOWN = 0; 127*b7c941bbSAndroid Build Coastguard Worker ANDROIDJUNIT = 1; 128*b7c941bbSAndroid Build Coastguard Worker JAVAHOST = 2; 129*b7c941bbSAndroid Build Coastguard Worker GTEST = 3; 130*b7c941bbSAndroid Build Coastguard Worker LIBCORE = 4; 131*b7c941bbSAndroid Build Coastguard Worker DALVIK = 5; 132*b7c941bbSAndroid Build Coastguard Worker DEQP = 6; 133*b7c941bbSAndroid Build Coastguard Worker } 134*b7c941bbSAndroid Build Coastguard Worker 135*b7c941bbSAndroid Build Coastguard Worker message Module { 136*b7c941bbSAndroid Build Coastguard Worker string name = 1; 137*b7c941bbSAndroid Build Coastguard Worker string config_file = 2; 138*b7c941bbSAndroid Build Coastguard Worker TestType test_type = 3; 139*b7c941bbSAndroid Build Coastguard Worker string test_class = 4; 140*b7c941bbSAndroid Build Coastguard Worker repeated ApiPackage packages = 5; 141*b7c941bbSAndroid Build Coastguard Worker } 142*b7c941bbSAndroid Build Coastguard Worker repeated Module modules = 5; 143*b7c941bbSAndroid Build Coastguard Worker} 144*b7c941bbSAndroid Build Coastguard Worker 145*b7c941bbSAndroid Build Coastguard Workermessage Service { 146*b7c941bbSAndroid Build Coastguard Worker string name = 1; 147*b7c941bbSAndroid Build Coastguard Worker string file = 2; 148*b7c941bbSAndroid Build Coastguard Worker repeated string arguments = 3; 149*b7c941bbSAndroid Build Coastguard Worker string clazz = 4; 150*b7c941bbSAndroid Build Coastguard Worker string user = 5; 151*b7c941bbSAndroid Build Coastguard Worker string group = 6; 152*b7c941bbSAndroid Build Coastguard Worker string writepid = 7; 153*b7c941bbSAndroid Build Coastguard Worker repeated string options = 8; 154*b7c941bbSAndroid Build Coastguard Worker} 155*b7c941bbSAndroid Build Coastguard Worker 156*b7c941bbSAndroid Build Coastguard Workermessage Api { 157*b7c941bbSAndroid Build Coastguard Worker string name = 1; 158*b7c941bbSAndroid Build Coastguard Worker string version = 2; 159*b7c941bbSAndroid Build Coastguard Worker // map of Package Name & Package Message 160*b7c941bbSAndroid Build Coastguard Worker map<string, ApiPackage> packages = 3; 161*b7c941bbSAndroid Build Coastguard Worker} 162*b7c941bbSAndroid Build Coastguard Worker 163*b7c941bbSAndroid Build Coastguard Workermessage UsesFeature { 164*b7c941bbSAndroid Build Coastguard Worker string name = 1; 165*b7c941bbSAndroid Build Coastguard Worker string required = 2; 166*b7c941bbSAndroid Build Coastguard Worker} 167*b7c941bbSAndroid Build Coastguard Worker 168*b7c941bbSAndroid Build Coastguard Workermessage UsesLibrary { 169*b7c941bbSAndroid Build Coastguard Worker string name = 1; 170*b7c941bbSAndroid Build Coastguard Worker string required = 2; 171*b7c941bbSAndroid Build Coastguard Worker} 172*b7c941bbSAndroid Build Coastguard Worker 173*b7c941bbSAndroid Build Coastguard Workermessage AppInfo { 174*b7c941bbSAndroid Build Coastguard Worker string package_name = 1; 175*b7c941bbSAndroid Build Coastguard Worker string version_code = 2; 176*b7c941bbSAndroid Build Coastguard Worker string version_name = 3; 177*b7c941bbSAndroid Build Coastguard Worker string sdk_version = 4; 178*b7c941bbSAndroid Build Coastguard Worker string target_sdk_version = 5; 179*b7c941bbSAndroid Build Coastguard Worker repeated UsesFeature uses_features = 6; 180*b7c941bbSAndroid Build Coastguard Worker repeated UsesLibrary uses_libraries = 7; 181*b7c941bbSAndroid Build Coastguard Worker repeated string native_code = 8; 182*b7c941bbSAndroid Build Coastguard Worker repeated string uses_permissions = 9; 183*b7c941bbSAndroid Build Coastguard Worker repeated string activities = 10; 184*b7c941bbSAndroid Build Coastguard Worker repeated string services = 11; 185*b7c941bbSAndroid Build Coastguard Worker repeated string providers = 12; 186*b7c941bbSAndroid Build Coastguard Worker map<string, string> properties = 13; 187*b7c941bbSAndroid Build Coastguard Worker repeated ApiPackage external_api_packages = 14; 188*b7c941bbSAndroid Build Coastguard Worker repeated ApiPackage internal_api_packages = 15; 189*b7c941bbSAndroid Build Coastguard Worker PackageFileContent package_file_content = 16; 190*b7c941bbSAndroid Build Coastguard Worker string package_signature = 17; 191*b7c941bbSAndroid Build Coastguard Worker} 192*b7c941bbSAndroid Build Coastguard Worker 193*b7c941bbSAndroid Build Coastguard Workermessage ImageSection { 194*b7c941bbSAndroid Build Coastguard Worker uint32 offset = 1; 195*b7c941bbSAndroid Build Coastguard Worker uint32 size = 2; 196*b7c941bbSAndroid Build Coastguard Worker} 197*b7c941bbSAndroid Build Coastguard Worker 198*b7c941bbSAndroid Build Coastguard Worker// art/runtime/image.h 199*b7c941bbSAndroid Build Coastguard Workermessage ArtInfo { 200*b7c941bbSAndroid Build Coastguard Worker bool valid = 1; 201*b7c941bbSAndroid Build Coastguard Worker // skip magic_[4] 202*b7c941bbSAndroid Build Coastguard Worker string version = 2; 203*b7c941bbSAndroid Build Coastguard Worker uint32 image_begin = 3; 204*b7c941bbSAndroid Build Coastguard Worker uint32 image_size = 4; 205*b7c941bbSAndroid Build Coastguard Worker uint32 oat_checksum = 5; 206*b7c941bbSAndroid Build Coastguard Worker uint32 oat_file_begin = 6; 207*b7c941bbSAndroid Build Coastguard Worker uint32 oat_data_begin = 7; 208*b7c941bbSAndroid Build Coastguard Worker uint32 oat_data_end = 8; 209*b7c941bbSAndroid Build Coastguard Worker uint32 oat_file_end = 9; 210*b7c941bbSAndroid Build Coastguard Worker 211*b7c941bbSAndroid Build Coastguard Worker // app image headers only 212*b7c941bbSAndroid Build Coastguard Worker uint32 boot_image_begin = 10; 213*b7c941bbSAndroid Build Coastguard Worker uint32 boot_image_size = 11; 214*b7c941bbSAndroid Build Coastguard Worker uint32 boot_oat_begin = 12; 215*b7c941bbSAndroid Build Coastguard Worker uint32 boot_oat_size = 13; 216*b7c941bbSAndroid Build Coastguard Worker 217*b7c941bbSAndroid Build Coastguard Worker int32 patch_delta = 14; 218*b7c941bbSAndroid Build Coastguard Worker uint32 image_roots = 15; 219*b7c941bbSAndroid Build Coastguard Worker uint32 pointer_size = 16; 220*b7c941bbSAndroid Build Coastguard Worker uint32 compile_pic = 17; 221*b7c941bbSAndroid Build Coastguard Worker uint32 is_pic = 18; 222*b7c941bbSAndroid Build Coastguard Worker 223*b7c941bbSAndroid Build Coastguard Worker repeated ImageSection image_sections = 19; 224*b7c941bbSAndroid Build Coastguard Worker repeated uint64 image_methods = 20; 225*b7c941bbSAndroid Build Coastguard Worker 226*b7c941bbSAndroid Build Coastguard Worker uint32 storage_mode = 21; 227*b7c941bbSAndroid Build Coastguard Worker uint32 data_size = 22; 228*b7c941bbSAndroid Build Coastguard Worker} 229*b7c941bbSAndroid Build Coastguard Worker 230*b7c941bbSAndroid Build Coastguard Worker// art/dex2oat/linker/oat_writer.cc OatDexFile 231*b7c941bbSAndroid Build Coastguard Workermessage OatDexInfo { 232*b7c941bbSAndroid Build Coastguard Worker string dex_file_location_data = 1; 233*b7c941bbSAndroid Build Coastguard Worker // The checksum of the dex file. 234*b7c941bbSAndroid Build Coastguard Worker uint32 dex_file_location_checksum = 2; 235*b7c941bbSAndroid Build Coastguard Worker // Offset of the dex file in the vdex file. 236*b7c941bbSAndroid Build Coastguard Worker uint32 dex_file_offset = 3; 237*b7c941bbSAndroid Build Coastguard Worker // The lookup table offset in the oat file. Set in WriteTypeLookupTables. 238*b7c941bbSAndroid Build Coastguard Worker uint32 lookup_table_offset = 4; 239*b7c941bbSAndroid Build Coastguard Worker // Class and BSS offsets set in PrepareLayout. 240*b7c941bbSAndroid Build Coastguard Worker uint32 class_offsets_offset = 5; 241*b7c941bbSAndroid Build Coastguard Worker uint32 method_bss_mapping_offset = 6; 242*b7c941bbSAndroid Build Coastguard Worker uint32 type_bss_mapping_offset = 7; 243*b7c941bbSAndroid Build Coastguard Worker uint32 string_bss_mapping_offset = 8; 244*b7c941bbSAndroid Build Coastguard Worker // Offset of dex sections that will have different runtime madvise states. 245*b7c941bbSAndroid Build Coastguard Worker uint32 dex_sections_layout_offset = 9; 246*b7c941bbSAndroid Build Coastguard Worker} 247*b7c941bbSAndroid Build Coastguard Worker 248*b7c941bbSAndroid Build Coastguard Worker// art/runtime/oat.h 249*b7c941bbSAndroid Build Coastguard Workermessage OatInfo { 250*b7c941bbSAndroid Build Coastguard Worker // skip magic_[4] 251*b7c941bbSAndroid Build Coastguard Worker string version = 1; 252*b7c941bbSAndroid Build Coastguard Worker uint32 adler32_checksum = 2; 253*b7c941bbSAndroid Build Coastguard Worker // art/libartbase/arch/instruction_set.h 254*b7c941bbSAndroid Build Coastguard Worker 255*b7c941bbSAndroid Build Coastguard Worker uint32 instruction_set = 3; 256*b7c941bbSAndroid Build Coastguard Worker uint32 instruction_set_features_bitmap = 4; 257*b7c941bbSAndroid Build Coastguard Worker uint32 dex_file_count = 5; 258*b7c941bbSAndroid Build Coastguard Worker uint32 oat_dex_files_offset = 6; 259*b7c941bbSAndroid Build Coastguard Worker uint32 executable_offset = 7; 260*b7c941bbSAndroid Build Coastguard Worker uint32 interpreter_to_interpreter_bridge_offset = 8; 261*b7c941bbSAndroid Build Coastguard Worker uint32 interpreter_to_compiled_code_bridge_offset = 9; 262*b7c941bbSAndroid Build Coastguard Worker uint32 jni_dlsym_lookup_offset = 10; 263*b7c941bbSAndroid Build Coastguard Worker uint32 quick_generic_jni_trampoline_offset = 11; 264*b7c941bbSAndroid Build Coastguard Worker uint32 quick_imt_conflict_trampoline_offset = 12; 265*b7c941bbSAndroid Build Coastguard Worker uint32 quick_resolution_trampoline_offset = 13; 266*b7c941bbSAndroid Build Coastguard Worker uint32 quick_to_interpreter_bridge_offset = 14; 267*b7c941bbSAndroid Build Coastguard Worker 268*b7c941bbSAndroid Build Coastguard Worker // for backward compatibility, removed from version 162, see aosp/e0669326c0282b5b645aba75160425eef9d57617 269*b7c941bbSAndroid Build Coastguard Worker uint32 image_patch_delta = 15; 270*b7c941bbSAndroid Build Coastguard Worker 271*b7c941bbSAndroid Build Coastguard Worker uint32 image_file_location_oat_checksum = 16; 272*b7c941bbSAndroid Build Coastguard Worker // for backward compatibility, removed from version 162, see aosp/e0669326c0282b5b645aba75160425eef9d57617 273*b7c941bbSAndroid Build Coastguard Worker uint32 image_file_location_oat_data_begin = 17; 274*b7c941bbSAndroid Build Coastguard Worker 275*b7c941bbSAndroid Build Coastguard Worker uint32 key_value_store_size = 18; 276*b7c941bbSAndroid Build Coastguard Worker 277*b7c941bbSAndroid Build Coastguard Worker // int8_t key_value_store_[0]; 278*b7c941bbSAndroid Build Coastguard Worker map<string, string> key_value_store = 19; 279*b7c941bbSAndroid Build Coastguard Worker repeated OatDexInfo oat_dex_info = 20; 280*b7c941bbSAndroid Build Coastguard Worker bool valid = 21; 281*b7c941bbSAndroid Build Coastguard Worker int32 bits = 22; 282*b7c941bbSAndroid Build Coastguard Worker string architecture = 23; 283*b7c941bbSAndroid Build Coastguard Worker} 284*b7c941bbSAndroid Build Coastguard Worker 285*b7c941bbSAndroid Build Coastguard Workermessage DexSectionHeader { 286*b7c941bbSAndroid Build Coastguard Worker uint32 dex_size = 1; 287*b7c941bbSAndroid Build Coastguard Worker uint32 dex_shared_data_size = 2; 288*b7c941bbSAndroid Build Coastguard Worker uint32 quickening_info_size = 3; 289*b7c941bbSAndroid Build Coastguard Worker} 290*b7c941bbSAndroid Build Coastguard Worker 291*b7c941bbSAndroid Build Coastguard Worker// art/runtime/vdex_file.h 292*b7c941bbSAndroid Build Coastguard Workermessage VdexInfo { 293*b7c941bbSAndroid Build Coastguard Worker bool valid = 1; 294*b7c941bbSAndroid Build Coastguard Worker 295*b7c941bbSAndroid Build Coastguard Worker // skip magic_[4] 296*b7c941bbSAndroid Build Coastguard Worker string verifier_deps_version = 2; 297*b7c941bbSAndroid Build Coastguard Worker string dex_section_version = 3; 298*b7c941bbSAndroid Build Coastguard Worker uint32 number_of_dex_files = 4; 299*b7c941bbSAndroid Build Coastguard Worker uint32 verifier_deps_size = 5; 300*b7c941bbSAndroid Build Coastguard Worker repeated uint32 checksums = 6; 301*b7c941bbSAndroid Build Coastguard Worker repeated DexSectionHeader dex_section_headers = 7; 302*b7c941bbSAndroid Build Coastguard Worker} 303*b7c941bbSAndroid Build Coastguard Worker 304*b7c941bbSAndroid Build Coastguard Workermessage Permission { 305*b7c941bbSAndroid Build Coastguard Worker string name = 1; 306*b7c941bbSAndroid Build Coastguard Worker repeated Element elements = 2; 307*b7c941bbSAndroid Build Coastguard Worker} 308*b7c941bbSAndroid Build Coastguard Worker 309*b7c941bbSAndroid Build Coastguard Workermessage PermissionList { 310*b7c941bbSAndroid Build Coastguard Worker string name = 1; 311*b7c941bbSAndroid Build Coastguard Worker repeated Permission permissions = 2; 312*b7c941bbSAndroid Build Coastguard Worker} 313*b7c941bbSAndroid Build Coastguard Worker 314*b7c941bbSAndroid Build Coastguard Workermessage PackageFileContent { 315*b7c941bbSAndroid Build Coastguard Worker map<string, Entry> entries = 1; 316*b7c941bbSAndroid Build Coastguard Worker} 317*b7c941bbSAndroid Build Coastguard Worker 318*b7c941bbSAndroid Build Coastguard Worker// An entry in a release 319*b7c941bbSAndroid Build Coastguard Workermessage Entry { 320*b7c941bbSAndroid Build Coastguard Worker // Name 321*b7c941bbSAndroid Build Coastguard Worker string name = 1; 322*b7c941bbSAndroid Build Coastguard Worker 323*b7c941bbSAndroid Build Coastguard Worker enum EntryType { 324*b7c941bbSAndroid Build Coastguard Worker FOLDER = 0; 325*b7c941bbSAndroid Build Coastguard Worker FILE = 1; 326*b7c941bbSAndroid Build Coastguard Worker TEST_MODULE_CONFIG = 2; 327*b7c941bbSAndroid Build Coastguard Worker JAR = 3; 328*b7c941bbSAndroid Build Coastguard Worker APK = 4; 329*b7c941bbSAndroid Build Coastguard Worker EXE = 5; 330*b7c941bbSAndroid Build Coastguard Worker SO = 6; 331*b7c941bbSAndroid Build Coastguard Worker OAT = 7; 332*b7c941bbSAndroid Build Coastguard Worker ODEX = 8; 333*b7c941bbSAndroid Build Coastguard Worker VDEX = 9; 334*b7c941bbSAndroid Build Coastguard Worker TEST_SUITE_TRADEFED = 10; 335*b7c941bbSAndroid Build Coastguard Worker BUILD_PROP = 11; 336*b7c941bbSAndroid Build Coastguard Worker SYMBOLIC_LINK = 12; 337*b7c941bbSAndroid Build Coastguard Worker RC = 13; 338*b7c941bbSAndroid Build Coastguard Worker ART = 14; 339*b7c941bbSAndroid Build Coastguard Worker XML = 15; 340*b7c941bbSAndroid Build Coastguard Worker IMG = 16; 341*b7c941bbSAndroid Build Coastguard Worker } 342*b7c941bbSAndroid Build Coastguard Worker // Type 343*b7c941bbSAndroid Build Coastguard Worker EntryType type = 2; 344*b7c941bbSAndroid Build Coastguard Worker 345*b7c941bbSAndroid Build Coastguard Worker // Size 346*b7c941bbSAndroid Build Coastguard Worker int64 size = 3; 347*b7c941bbSAndroid Build Coastguard Worker // Content ID 348*b7c941bbSAndroid Build Coastguard Worker string content_id = 4; 349*b7c941bbSAndroid Build Coastguard Worker // code_id 350*b7c941bbSAndroid Build Coastguard Worker string code_id = 5; 351*b7c941bbSAndroid Build Coastguard Worker // Parent folder 352*b7c941bbSAndroid Build Coastguard Worker string abi_architecture = 6; 353*b7c941bbSAndroid Build Coastguard Worker int32 abi_bits = 7; 354*b7c941bbSAndroid Build Coastguard Worker string parent_folder = 8; 355*b7c941bbSAndroid Build Coastguard Worker // Relative path 356*b7c941bbSAndroid Build Coastguard Worker string relative_path = 9; 357*b7c941bbSAndroid Build Coastguard Worker 358*b7c941bbSAndroid Build Coastguard Worker repeated string dependencies = 10; 359*b7c941bbSAndroid Build Coastguard Worker repeated string dynamic_loading_dependencies = 11; 360*b7c941bbSAndroid Build Coastguard Worker 361*b7c941bbSAndroid Build Coastguard Worker // file type specified info 362*b7c941bbSAndroid Build Coastguard Worker AppInfo app_info = 12; 363*b7c941bbSAndroid Build Coastguard Worker ArtInfo art_info = 13; 364*b7c941bbSAndroid Build Coastguard Worker OatInfo oat_info = 14; 365*b7c941bbSAndroid Build Coastguard Worker VdexInfo vdex_info = 15; 366*b7c941bbSAndroid Build Coastguard Worker // TestModule.config message 367*b7c941bbSAndroid Build Coastguard Worker TestModuleConfig test_module_config = 16; 368*b7c941bbSAndroid Build Coastguard Worker // Native services 369*b7c941bbSAndroid Build Coastguard Worker repeated Service services = 17; 370*b7c941bbSAndroid Build Coastguard Worker // Device permissions 371*b7c941bbSAndroid Build Coastguard Worker map<string, PermissionList> device_permissions = 18; 372*b7c941bbSAndroid Build Coastguard Worker // property map(key,value) 373*b7c941bbSAndroid Build Coastguard Worker map<string, string> properties = 19; 374*b7c941bbSAndroid Build Coastguard Worker} 375*b7c941bbSAndroid Build Coastguard Worker 376*b7c941bbSAndroid Build Coastguard Workerenum ReleaseType { 377*b7c941bbSAndroid Build Coastguard Worker DEVICE_BUILD = 0; 378*b7c941bbSAndroid Build Coastguard Worker TEST_SUITE = 1; 379*b7c941bbSAndroid Build Coastguard Worker APP_DISTRIBUTION_PACKAGE = 2; 380*b7c941bbSAndroid Build Coastguard Worker} 381*b7c941bbSAndroid Build Coastguard Worker 382*b7c941bbSAndroid Build Coastguard Workermessage ReleaseContent { 383*b7c941bbSAndroid Build Coastguard Worker // Name 384*b7c941bbSAndroid Build Coastguard Worker string name = 1; 385*b7c941bbSAndroid Build Coastguard Worker // Version 386*b7c941bbSAndroid Build Coastguard Worker string version = 2; 387*b7c941bbSAndroid Build Coastguard Worker // Build Number 388*b7c941bbSAndroid Build Coastguard Worker string build_number = 3; 389*b7c941bbSAndroid Build Coastguard Worker // Full name 390*b7c941bbSAndroid Build Coastguard Worker string fullname = 4; 391*b7c941bbSAndroid Build Coastguard Worker // release uid e.g. Build Fingerprint 392*b7c941bbSAndroid Build Coastguard Worker string release_id = 5; 393*b7c941bbSAndroid Build Coastguard Worker // Content id 394*b7c941bbSAndroid Build Coastguard Worker string content_id = 6; 395*b7c941bbSAndroid Build Coastguard Worker // Size in byte 396*b7c941bbSAndroid Build Coastguard Worker int64 size = 7; 397*b7c941bbSAndroid Build Coastguard Worker ReleaseType release_type = 8; 398*b7c941bbSAndroid Build Coastguard Worker // property map(key,value) 399*b7c941bbSAndroid Build Coastguard Worker map<string, string> properties = 9; 400*b7c941bbSAndroid Build Coastguard Worker // File Entry map(relative_path, entry) 401*b7c941bbSAndroid Build Coastguard Worker map<string, Entry> entries = 10; 402*b7c941bbSAndroid Build Coastguard Worker 403*b7c941bbSAndroid Build Coastguard Worker // Test Suite specific 404*b7c941bbSAndroid Build Coastguard Worker string test_suite_tradefed = 11; 405*b7c941bbSAndroid Build Coastguard Worker string target_arch = 12; 406*b7c941bbSAndroid Build Coastguard Worker repeated string known_failures = 13; 407*b7c941bbSAndroid Build Coastguard Worker} 408*b7c941bbSAndroid Build Coastguard Worker// [END messages]