1 /*
2  * Copyright (C) 2021 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 
17 package com.android.car.dialer.framework.testdata;
18 
19 import androidx.annotation.Nullable;
20 
21 /**
22  * A class represents the contact raw data.
23  */
24 public class ContactRawData {
25 
26     private String mDisplayName;
27     private String mNumber;
28     private Integer mNumberType = 0;
29     private String mNumberLabel;
30     private String mAddress;
31     private Integer mStarred = 0;
32 
33     /**
34      * Sets display name.
35      */
setDisplayName(String displayName)36     public void setDisplayName(String displayName) {
37         mDisplayName = displayName;
38     }
39 
40     /**
41      * Sets the number;
42      */
setNumber(String number)43     public void setNumber(String number) {
44         mNumber = number;
45     }
46 
47     /**
48      * Sets the number type;
49      */
setNumberType(Integer numberType)50     public void setNumberType(Integer numberType) {
51         mNumberType = numberType;
52     }
53 
54     /**
55      * Sets phone number label.
56      */
setNumberLabel(String numberLabel)57     public void setNumberLabel(String numberLabel) {
58         mNumberLabel = numberLabel;
59     }
60 
61     /**
62      * Sets the address.
63      */
setAddress(String address)64     public void setAddress(String address) {
65         mAddress = address;
66     }
67 
68     /**
69      * If this contact is also a favorite, sets this value to 1. Otherwise, it will be 0 by default.
70      */
setStarred(boolean starred)71     public void setStarred(boolean starred) {
72         mStarred = starred ? 1 : 0;
73     }
74 
75     /**
76      * Gets the display name;
77      */
getDisplayName()78     public String getDisplayName() {
79         return mDisplayName;
80     }
81 
82     /**
83      * Gets the phone number;
84      */
getNumber()85     public String getNumber() {
86         return mNumber;
87     }
88 
89     /**
90      * Gets the phone number type;
91      */
getNumberType()92     public Integer getNumberType() {
93         return mNumberType;
94     }
95 
96     /**
97      * Gets the phone number label;
98      */
getNumberLabel()99     public String getNumberLabel() {
100         return mNumberLabel;
101     }
102 
103     /**
104      * Return the address.
105      */
106     @Nullable
getAddress()107     public String getAddress() {
108         return mAddress;
109     }
110 
111     /**
112      * Returns if this contact is starred. O for not starred, other values for starred.
113      */
getStarred()114     public Integer getStarred() {
115         return mStarred;
116     }
117 
118     @Override
toString()119     public String toString() {
120         StringBuilder builder = new StringBuilder();
121         builder.append("[display name: ");
122         builder.append(mDisplayName);
123         builder.append(", number: ");
124         builder.append(mNumber);
125         builder.append(", number label: ");
126         builder.append(mNumberLabel);
127         builder.append(", number type: ");
128         builder.append(mNumberType);
129         builder.append(", is starred: ");
130         builder.append(mStarred);
131         builder.append(", address: ");
132         builder.append(mAddress);
133         builder.append("]");
134         return builder.toString();
135     }
136 }
137