| /* |
| * Copyright (C) 2020 Google LLC |
| * |
| * Licensed under the Apache License, Version 2.0 (the "License"); |
| * you may not use this file except in compliance with the License. |
| * You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| */ |
| syntax = "proto2"; |
| |
| package com.google.carrier; |
| |
| option java_multiple_files = true; |
| option java_outer_classname = "CarrierListProtos"; |
| |
| // The carrier ID is matched against SIM data to determine carrier |
| message CarrierId { |
| // Mobile Country Code (MCC) & Mobile Network Code (MNC) |
| optional string mcc_mnc = 1; |
| |
| // Additional data to identify MVNO |
| oneof mvno_data { |
| // SPN (Service Provider Name) |
| string spn = 2; |
| |
| // IMSI prefix pattern |
| string imsi = 3; |
| |
| // Group identifier (level 1) prefix |
| string gid1 = 4; |
| } |
| |
| reserved 5; |
| } |
| |
| // Maps CarrierIds to an internal unique carrier name |
| message CarrierMap { |
| // A unique canonical carrier name |
| // This name is the primary key to identify a carrier |
| // Typically a canonical_name looks like <carrier_name>_<iso_country_code> |
| optional string canonical_name = 1; |
| |
| // A collection of network IDs owned by this carrier |
| repeated CarrierId carrier_id = 2; |
| |
| reserved 3; |
| } |
| |
| // Maps CarrierId to internal unique carrier name |
| message CarrierList { |
| // A collection of carrier maps; one entry for one carrier |
| repeated CarrierMap entry = 1; |
| |
| // The version number of this CarrierList file |
| optional int64 version = 2; |
| } |