summaryrefslogtreecommitdiff
path: root/java/com/android/dialer/voicemail/model/VoicemailEntry.java
diff options
context:
space:
mode:
authoruabdullah <uabdullah@google.com>2017-10-17 13:24:05 -0700
committerEric Erfanian <erfanian@google.com>2017-10-17 22:45:29 +0000
commit68cc4733e1619e1b6b7f6d5f52ab057cc48525bb (patch)
treec0a251acef8363247f40c01a19093038ac7d767f /java/com/android/dialer/voicemail/model/VoicemailEntry.java
parent30b973450f12cf0b694c7bf06018830a698ce40a (diff)
Display Voicemail Contact Name and Photo in Voicemail Fragment.
This CL lays the foundation of querying the annotated call log, retrieving only the voicemail entries and some of the voicemail information in the Voicemail tab. This CL only displays the name/number as well as the corresponding photo of the voicemails present on the device. WANT_LGTM=zachh SCREENSHOT: http://screen/YYBG8T0Ma0J Bug: 33006245, 64882313 Test: Unit tests and manual verification. PiperOrigin-RevId: 172504512 Change-Id: Ie7187b021abf42d1a4522458a1ab28537a7c222c
Diffstat (limited to 'java/com/android/dialer/voicemail/model/VoicemailEntry.java')
-rw-r--r--java/com/android/dialer/voicemail/model/VoicemailEntry.java89
1 files changed, 89 insertions, 0 deletions
diff --git a/java/com/android/dialer/voicemail/model/VoicemailEntry.java b/java/com/android/dialer/voicemail/model/VoicemailEntry.java
new file mode 100644
index 000000000..00e1757dc
--- /dev/null
+++ b/java/com/android/dialer/voicemail/model/VoicemailEntry.java
@@ -0,0 +1,89 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * 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.
+ */
+
+package com.android.dialer.voicemail.model;
+
+import android.support.annotation.NonNull;
+import android.support.annotation.Nullable;
+import com.android.dialer.DialerPhoneNumber;
+import com.google.auto.value.AutoValue;
+
+/** Data class containing the contents of a voicemail entry from the AnnotatedCallLog. */
+@AutoValue
+public abstract class VoicemailEntry {
+
+ public static Builder builder() {
+ return new AutoValue_VoicemailEntry.Builder()
+ .setId(0)
+ .setTimestamp(0)
+ .setNumber(DialerPhoneNumber.getDefaultInstance())
+ .setPhotoId(0)
+ .setCallType(0);
+ }
+
+ public abstract int id();
+
+ public abstract long timestamp();
+
+ @NonNull
+ public abstract DialerPhoneNumber number();
+
+ @Nullable
+ public abstract String name();
+
+ @Nullable
+ public abstract String formattedNumber();
+
+ @Nullable
+ public abstract String photoUri();
+
+ public abstract long photoId();
+
+ @Nullable
+ public abstract String lookupUri();
+
+ @Nullable
+ public abstract String geocodedLocation();
+
+ public abstract int callType();
+
+ /** Builder for {@link VoicemailEntry}. */
+ @AutoValue.Builder
+ public abstract static class Builder {
+
+ public abstract Builder setId(int id);
+
+ public abstract Builder setTimestamp(long timestamp);
+
+ public abstract Builder setNumber(@NonNull DialerPhoneNumber number);
+
+ public abstract Builder setName(@Nullable String name);
+
+ public abstract Builder setFormattedNumber(@Nullable String formattedNumber);
+
+ public abstract Builder setPhotoUri(@Nullable String photoUri);
+
+ public abstract Builder setPhotoId(long photoId);
+
+ public abstract Builder setLookupUri(@Nullable String lookupUri);
+
+ public abstract Builder setGeocodedLocation(@Nullable String geocodedLocation);
+
+ public abstract Builder setCallType(int callType);
+
+ public abstract VoicemailEntry build();
+ }
+}