1 /* 2 * Copyright (C) 2015 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.google.android.auto.mapservice; 18 19 import android.os.Parcel; 20 import android.os.Parcelable; 21 22 /** Class representing various events that can be triggered for SMS/MMS on the phone. */ 23 public final class BluetoothMapEventReport implements Parcelable { 24 // List of all codes. To ensure there is no name space collision they are all listed here but 25 // segmented by their types. 26 27 /** Status that command executed successfully. */ 28 public static final int STATUS_OK = 0; 29 /** Status that command executed but failed. */ 30 public static final int STATUS_FAILED = 1; 31 32 /** Type of events. To avoid name space clash they are listed together */ 33 34 /** A new message has been received. */ 35 public static final int TYPE_NEW_MESSAGE = 1; 36 37 /** 38 * A message send goes through (not all compulsary) following phases: 39 * a) The message is first pushed to remote device. 40 * b) The message is then sent out by the remote device to SMSC server. 41 * c) Depending on the configuration between remote device and SMSC 42 * server there can be a delivery notification. 43 */ 44 public static final int TYPE_DELIVERY_SUCCESS = 1; 45 public static final int TYPE_SENDING_SUCCESS = 2; 46 public static final int TYPE_DELIVERY_FAILURE = 3; 47 public static final int TYPE_SENDING_FAILURE = 4; 48 49 /** Message has been deleted */ 50 public static final int TYPE_MESSAGE_DELETED = 5; 51 /** Message shifted from one folder to another */ 52 public static final int TYPE_MESSAGE_SHIFT = 6; 53 54 // Contains the handle of message in context. 55 private String mHandle; 56 57 // Folder in which the message is currently stored. 58 private String mFolder; 59 60 // Folder in which the message was stored previously. 61 private String mOldFolder; 62 63 // Return code for the event. 64 private int mReturnCode; 65 66 // Type of message. 67 private int mType; 68 69 public static final Parcelable.Creator<BluetoothMapEventReport> CREATOR = 70 new Parcelable.Creator<BluetoothMapEventReport>() { 71 72 public BluetoothMapEventReport createFromParcel(Parcel in) { 73 return new BluetoothMapEventReport(in); 74 } 75 76 public BluetoothMapEventReport[] newArray(int size) { 77 return new BluetoothMapEventReport[size]; 78 } 79 }; 80 BluetoothMapEventReport()81 public BluetoothMapEventReport() { 82 } 83 BluetoothMapEventReport(Parcel in)84 private BluetoothMapEventReport(Parcel in) { 85 readFromParcel(in); 86 } 87 describeContents()88 public int describeContents() { 89 return 0; 90 } 91 writeToParcel(Parcel out, int flags)92 public void writeToParcel(Parcel out, int flags) { 93 out.writeString(mHandle); 94 out.writeString(mFolder); 95 out.writeString(mOldFolder); 96 out.writeInt(mType); 97 } 98 readFromParcel(Parcel in)99 public void readFromParcel(Parcel in) { 100 mHandle = in.readString(); 101 mFolder = in.readString(); 102 mOldFolder = in.readString(); 103 mType = in.readInt(); 104 } 105 setType(int type)106 public void setType(int type) { 107 mType = type; 108 } 109 getType()110 public int getType() { 111 return mType; 112 } 113 setReturnCode(int retCode)114 public void setReturnCode(int retCode) { 115 mReturnCode = retCode; 116 } 117 getReturnCode()118 public int getReturnCode() { 119 return mReturnCode; 120 } 121 setHandle(String handle)122 public void setHandle(String handle) { 123 mHandle = handle; 124 } 125 getHandle()126 public String getHandle() { 127 return mHandle; 128 } 129 getFolder()130 public String getFolder() { 131 return mFolder; 132 } 133 setFolder(String folder)134 public void setFolder(String folder) { 135 mFolder = folder; 136 } 137 getOldFolder()138 public String getOldFolder() { 139 return mOldFolder; 140 } 141 setOldFolder(String oldFolder)142 public void setOldFolder(String oldFolder) { 143 mOldFolder = oldFolder; 144 } 145 toString()146 public String toString() { 147 return "Type: " + getType() + " return code: " + getReturnCode() + "Handle: " + mHandle; 148 } 149 } 150