1dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville/*
2dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville * Copyright (C) 2009 The Android Open Source Project
3dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville *
4dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville * Licensed under the Apache License, Version 2.0 (the "License");
5dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville * you may not use this file except in compliance with the License.
6dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville * You may obtain a copy of the License at
7dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville *
8dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville *      http://www.apache.org/licenses/LICENSE-2.0
9dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville *
10dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville * Unless required by applicable law or agreed to in writing, software
11dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville * distributed under the License is distributed on an "AS IS" BASIS,
12dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville * See the License for the specific language governing permissions and
14dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville * limitations under the License.
15dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville */
16dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville
17dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Savillepackage com.android.internal.telephony.cdma;
18dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Savilleimport static com.android.internal.telephony.RILConstants.*;
1922ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Savilleimport android.os.Parcel;
20dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville
21dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Savillepublic final class CdmaInformationRecords {
2222ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville    public Object record;
2322ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville
2422ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville    /**
2522ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville     * Record type identifier
2622ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville     */
27dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville    public static final int RIL_CDMA_DISPLAY_INFO_REC = 0;
28dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville    public static final int RIL_CDMA_CALLED_PARTY_NUMBER_INFO_REC = 1;
29dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville    public static final int RIL_CDMA_CALLING_PARTY_NUMBER_INFO_REC = 2;
30dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville    public static final int RIL_CDMA_CONNECTED_NUMBER_INFO_REC = 3;
31dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville    public static final int RIL_CDMA_SIGNAL_INFO_REC = 4;
32dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville    public static final int RIL_CDMA_REDIRECTING_NUMBER_INFO_REC = 5;
33dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville    public static final int RIL_CDMA_LINE_CONTROL_INFO_REC = 6;
34dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville    public static final int RIL_CDMA_EXTENDED_DISPLAY_INFO_REC = 7;
35dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville    public static final int RIL_CDMA_T53_CLIR_INFO_REC = 8;
36dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville    public static final int RIL_CDMA_T53_RELEASE_INFO_REC = 9;
37dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville    public static final int RIL_CDMA_T53_AUDIO_CONTROL_INFO_REC = 10;
38dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville
3922ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville    public CdmaInformationRecords(Parcel p) {
4022ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        int id = p.readInt();
4122ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        switch (id) {
4222ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville            case RIL_CDMA_DISPLAY_INFO_REC:
4322ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville            case RIL_CDMA_EXTENDED_DISPLAY_INFO_REC:
4422ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                record  = new CdmaDisplayInfoRec(id, p.readString());
4522ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                break;
46dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville
4722ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville            case RIL_CDMA_CALLED_PARTY_NUMBER_INFO_REC:
4822ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville            case RIL_CDMA_CALLING_PARTY_NUMBER_INFO_REC:
4922ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville            case RIL_CDMA_CONNECTED_NUMBER_INFO_REC:
5022ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                record = new CdmaNumberInfoRec(id, p.readString(), p.readInt(), p.readInt(),
5122ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                        p.readInt(), p.readInt());
5222ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                break;
53dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville
5422ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville            case RIL_CDMA_SIGNAL_INFO_REC:
5522ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                record = new CdmaSignalInfoRec(p.readInt(), p.readInt(), p.readInt(), p.readInt());
5622ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                break;
57dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville
5822ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville            case RIL_CDMA_REDIRECTING_NUMBER_INFO_REC:
5922ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                record = new CdmaRedirectingNumberInfoRec(p.readString(), p.readInt(), p.readInt(),
6022ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                        p.readInt(), p.readInt(), p.readInt());
6122ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                break;
6222ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville
6322ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville            case RIL_CDMA_LINE_CONTROL_INFO_REC:
6422ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                record = new CdmaLineControlInfoRec(p.readInt(), p.readInt(), p.readInt(),
6522ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                        p.readInt());
6622ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                break;
6722ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville
6822ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville            case RIL_CDMA_T53_CLIR_INFO_REC:
6922ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                record = new CdmaT53ClirInfoRec(p.readInt());
7022ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                break;
7122ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville
7222ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville            case RIL_CDMA_T53_AUDIO_CONTROL_INFO_REC:
7322ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                record = new CdmaT53AudioControlInfoRec(p.readInt(), p.readInt());
7422ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                break;
7522ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville
7622ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville            case RIL_CDMA_T53_RELEASE_INFO_REC:
777188f946521d64ea21121939d2a4c279f33fe910Wink Saville                // TODO: WHAT to do, for now fall through and throw exception
7822ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville            default:
7922ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                throw new RuntimeException("RIL_UNSOL_CDMA_INFO_REC: unsupported record. Got "
8022ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                                            + CdmaInformationRecords.idToString(id) + " ");
81dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville
8222ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        }
83dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville    }
84dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville
8522ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville    public static String idToString(int id) {
8622ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        switch(id) {
87dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville        case RIL_CDMA_DISPLAY_INFO_REC: return "RIL_CDMA_DISPLAY_INFO_REC";
88dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville        case RIL_CDMA_CALLED_PARTY_NUMBER_INFO_REC: return "RIL_CDMA_CALLED_PARTY_NUMBER_INFO_REC";
89dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville        case RIL_CDMA_CALLING_PARTY_NUMBER_INFO_REC: return "RIL_CDMA_CALLING_PARTY_NUMBER_INFO_REC";
90dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville        case RIL_CDMA_CONNECTED_NUMBER_INFO_REC: return "RIL_CDMA_CONNECTED_NUMBER_INFO_REC";
91dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville        case RIL_CDMA_SIGNAL_INFO_REC: return "RIL_CDMA_SIGNAL_INFO_REC";
92dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville        case RIL_CDMA_REDIRECTING_NUMBER_INFO_REC: return "RIL_CDMA_REDIRECTING_NUMBER_INFO_REC";
93dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville        case RIL_CDMA_LINE_CONTROL_INFO_REC: return "RIL_CDMA_LINE_CONTROL_INFO_REC";
94dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville        case RIL_CDMA_EXTENDED_DISPLAY_INFO_REC: return "RIL_CDMA_EXTENDED_DISPLAY_INFO_REC";
95dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville        case RIL_CDMA_T53_CLIR_INFO_REC: return "RIL_CDMA_T53_CLIR_INFO_REC";
96dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville        case RIL_CDMA_T53_RELEASE_INFO_REC: return "RIL_CDMA_T53_RELEASE_INFO_REC";
97dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville        case RIL_CDMA_T53_AUDIO_CONTROL_INFO_REC: return "RIL_CDMA_T53_AUDIO_CONTROL_INFO_REC";
98dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville        default: return "<unknown record>";
99dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville        }
100dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville    }
10122ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville
10222ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville    /**
10322ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville     * Signal Information record from 3GPP2 C.S005 3.7.5.5
10422ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville     */
10522ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville    public static class CdmaSignalInfoRec {
10622ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        public boolean isPresent;   /* non-zero if signal information record is present */
10722ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        public int signalType;
10822ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        public int alertPitch;
10922ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        public int signal;
11022ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville
11122ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        public CdmaSignalInfoRec() {}
11222ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville
11322ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        public CdmaSignalInfoRec(int isPresent, int signalType, int alertPitch, int signal) {
11422ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville            this.isPresent = isPresent != 0;
11522ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville            this.signalType = signalType;
11622ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville            this.alertPitch = alertPitch;
11722ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville            this.signal = signal;
11822ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        }
11922ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville
12022ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        @Override
12122ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        public String toString() {
12222ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville            return "CdmaSignalInfo: {" +
12322ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                    " isPresent: " + isPresent +
12422ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                    ", signalType: " + signalType +
12522ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                    ", alertPitch: " + alertPitch +
12622ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                    ", signal: " + signal +
12722ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                    " }";
12822ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        }
12922ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville    }
13022ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville
13122ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville    public static class CdmaDisplayInfoRec {
13222ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        public int id;
13322ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        public String alpha;
13422ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville
13522ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        public CdmaDisplayInfoRec(int id, String alpha) {
13622ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville            this.id = id;
13722ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville            this.alpha = alpha;
13822ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        }
13922ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville
14022ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        @Override
14122ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        public String toString() {
14222ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville            return "CdmaDisplayInfoRec: {" +
14322ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                    " id: " + CdmaInformationRecords.idToString(id) +
14422ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                    ", alpha: " + alpha +
14522ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                    " }";
14622ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        }
14722ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville    }
14822ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville
14922ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville    public static class CdmaNumberInfoRec {
15022ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        public int id;
15122ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        public String number;
15222ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        public byte numberType;
15322ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        public byte numberPlan;
15422ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        public byte pi;
15522ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        public byte si;
15622ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville
15722ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        public CdmaNumberInfoRec(int id, String number, int numberType, int numberPlan, int pi,
15822ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                int si) {
15922ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville            this.number = number;
16022ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville            this.numberType = (byte)numberType;
16122ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville            this.numberPlan = (byte)numberPlan;
16222ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville            this.pi = (byte)pi;
16322ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville            this.si = (byte)si;
16422ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        }
16522ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville
16622ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        @Override
16722ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        public String toString() {
16822ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville            return "CdmaNumberInfoRec: {" +
16922ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                    " id: " + CdmaInformationRecords.idToString(id) +
17022ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                    ", number: " + number +
17122ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                    ", numberType: " + numberType +
17222ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                    ", numberPlan: " + numberPlan +
17322ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                    ", pi: " + pi +
17422ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                    ", si: " + si +
17522ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                    " }";
17622ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        }
17722ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville    }
17822ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville
17922ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville    public static class CdmaRedirectingNumberInfoRec {
18022ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        public static final int REASON_UNKNOWN = 0;
18122ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        public static final int REASON_CALL_FORWARDING_BUSY = 1;
18222ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        public static final int REASON_CALL_FORWARDING_NO_REPLY = 2;
18322ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        public static final int REASON_CALLED_DTE_OUT_OF_ORDER = 9;
18422ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        public static final int REASON_CALL_FORWARDING_BY_THE_CALLED_DTE = 10;
18522ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        public static final int REASON_CALL_FORWARDING_UNCONDITIONAL = 15;
18622ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville
18722ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        public CdmaNumberInfoRec numberInfoRec;
18822ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        public int redirectingReason;
18922ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville
19022ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        public CdmaRedirectingNumberInfoRec(String number, int numberType, int numberPlan,
19122ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                int pi, int si, int reason) {
19222ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville            numberInfoRec = new CdmaNumberInfoRec(RIL_CDMA_REDIRECTING_NUMBER_INFO_REC,
19322ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                                                  number, numberType, numberPlan, pi, si);
19422ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville            redirectingReason = reason;
19522ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        }
19622ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville
19722ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        @Override
19822ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        public String toString() {
19922ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville            return "CdmaNumberInfoRec: {" +
20022ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                    " numberInfoRec: " + numberInfoRec +
20122ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                    ", redirectingReason: " + redirectingReason +
20222ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                    " }";
20322ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        }
20422ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville    }
20522ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville
20622ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville    public static class CdmaLineControlInfoRec {
20722ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        public byte lineCtrlPolarityIncluded;
20822ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        public byte lineCtrlToggle;
20922ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        public byte lineCtrlReverse;
21022ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        public byte lineCtrlPowerDenial;
21122ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville
21222ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        public CdmaLineControlInfoRec(int lineCtrlPolarityIncluded, int lineCtrlToggle,
21322ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                int lineCtrlReverse, int lineCtrlPowerDenial) {
21422ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville            this.lineCtrlPolarityIncluded = (byte)lineCtrlPolarityIncluded;
21522ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville            this.lineCtrlToggle = (byte)lineCtrlToggle;
21622ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville            this.lineCtrlReverse = (byte)lineCtrlReverse;
21722ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville            this.lineCtrlPowerDenial = (byte)lineCtrlPowerDenial;
21822ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        }
21922ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville
22022ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        @Override
22122ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        public String toString() {
22222ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville            return "CdmaLineControlInfoRec: {" +
22322ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                    " lineCtrlPolarityIncluded: " + lineCtrlPolarityIncluded +
22422ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                    " lineCtrlToggle: " + lineCtrlToggle +
22522ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                    " lineCtrlReverse: " + lineCtrlReverse +
22622ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                    " lineCtrlPowerDenial: " + lineCtrlPowerDenial +
22722ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                    " }";
22822ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        }
22922ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville    }
23022ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville
23122ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville    public static class CdmaT53ClirInfoRec {
23222ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        public byte cause;
23322ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville
23422ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        public CdmaT53ClirInfoRec(int cause) {
23522ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville            this.cause = (byte)cause;
23622ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        }
23722ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville
23822ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        @Override
23922ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        public String toString() {
24022ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville            return "CdmaT53ClirInfoRec: {" +
24122ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                    " cause: " + cause +
24222ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                    " }";
24322ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        }
24422ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville    }
24522ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville
24622ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville    public static class CdmaT53AudioControlInfoRec {
24722ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        public byte uplink;
24822ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        public byte downlink;
24922ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville
25022ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        public CdmaT53AudioControlInfoRec(int uplink, int downlink) {
25122ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville            this.uplink = (byte) uplink;
25222ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville            this.downlink = (byte) downlink;
25322ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        }
25422ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville
25522ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        @Override
25622ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        public String toString() {
25722ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville            return "CdmaT53AudioControlInfoRec: {" +
25822ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                    " uplink: " + uplink +
25922ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                    " downlink: " + downlink +
26022ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville                    " }";
26122ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville        }
26222ccaf5321cf9d2df57cf0d686d1abcd74acb193Wink Saville    }
263dda5391d5079537e275c9f4ed2637a1484d0e4e8Wink Saville}
264