BluetoothMasInstance.java revision a355e5efaf45a534ee6437aa4bae7d30f18c0ec2
18949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta/* 28949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta * Copyright (C) 2014 The Android Open Source Project 38949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta * 48949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta * Licensed under the Apache License, Version 2.0 (the "License"); 58949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta * you may not use this file except in compliance with the License. 68949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta * You may obtain a copy of the License at 78949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta * 88949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta * http://www.apache.org/licenses/LICENSE-2.0 98949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta * 108949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta * Unless required by applicable law or agreed to in writing, software 118949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta * distributed under the License is distributed on an "AS IS" BASIS, 128949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 138949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta * See the License for the specific language governing permissions and 148949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta * limitations under the License. 158949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta */ 168949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta 178949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Guptapackage android.bluetooth; 188949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta 198949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Guptaimport android.os.Parcel; 208949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Guptaimport android.os.Parcelable; 218949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta 228949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta/** @hide */ 238949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Guptapublic final class BluetoothMasInstance implements Parcelable { 248949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta private final int mId; 258949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta private final String mName; 268949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta private final int mChannel; 278949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta private final int mMsgTypes; 288949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta 298949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta public BluetoothMasInstance(int id, String name, int channel, int msgTypes) { 308949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta mId = id; 318949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta mName = name; 328949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta mChannel = channel; 338949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta mMsgTypes = msgTypes; 348949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta } 358949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta 368949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta @Override 378949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta public boolean equals(Object o) { 388949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta if (o instanceof BluetoothMasInstance) { 39a355e5efaf45a534ee6437aa4bae7d30f18c0ec2Jack He return mId == ((BluetoothMasInstance) o).mId; 408949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta } 418949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta return false; 428949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta } 438949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta 448949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta @Override 458949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta public int hashCode() { 468949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta return mId + (mChannel << 8) + (mMsgTypes << 16); 478949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta } 488949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta 498949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta @Override 508949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta public String toString() { 518949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta return Integer.toString(mId) + ":" + mName + ":" + mChannel + ":" + 528949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta Integer.toHexString(mMsgTypes); 538949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta } 548949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta 558949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta public int describeContents() { 568949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta return 0; 578949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta } 588949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta 598949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta public static final Parcelable.Creator<BluetoothMasInstance> CREATOR = 608949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta new Parcelable.Creator<BluetoothMasInstance>() { 61a355e5efaf45a534ee6437aa4bae7d30f18c0ec2Jack He public BluetoothMasInstance createFromParcel(Parcel in) { 62a355e5efaf45a534ee6437aa4bae7d30f18c0ec2Jack He return new BluetoothMasInstance(in.readInt(), in.readString(), 63a355e5efaf45a534ee6437aa4bae7d30f18c0ec2Jack He in.readInt(), in.readInt()); 64a355e5efaf45a534ee6437aa4bae7d30f18c0ec2Jack He } 65a355e5efaf45a534ee6437aa4bae7d30f18c0ec2Jack He 66a355e5efaf45a534ee6437aa4bae7d30f18c0ec2Jack He public BluetoothMasInstance[] newArray(int size) { 67a355e5efaf45a534ee6437aa4bae7d30f18c0ec2Jack He return new BluetoothMasInstance[size]; 68a355e5efaf45a534ee6437aa4bae7d30f18c0ec2Jack He } 69a355e5efaf45a534ee6437aa4bae7d30f18c0ec2Jack He }; 708949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta 718949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta public void writeToParcel(Parcel out, int flags) { 728949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta out.writeInt(mId); 738949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta out.writeString(mName); 748949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta out.writeInt(mChannel); 758949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta out.writeInt(mMsgTypes); 768949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta } 778949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta 788949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta public static final class MessageType { 79a355e5efaf45a534ee6437aa4bae7d30f18c0ec2Jack He public static final int EMAIL = 0x01; 80a355e5efaf45a534ee6437aa4bae7d30f18c0ec2Jack He public static final int SMS_GSM = 0x02; 818949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta public static final int SMS_CDMA = 0x04; 82a355e5efaf45a534ee6437aa4bae7d30f18c0ec2Jack He public static final int MMS = 0x08; 838949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta } 848949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta 858949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta public int getId() { 868949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta return mId; 878949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta } 888949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta 898949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta public String getName() { 908949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta return mName; 918949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta } 928949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta 938949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta public int getChannel() { 948949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta return mChannel; 958949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta } 968949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta 978949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta public int getMsgTypes() { 988949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta return mMsgTypes; 998949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta } 1008949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta 1018949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta public boolean msgSupported(int msg) { 1028949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta return (mMsgTypes & msg) != 0; 1038949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta } 1048949bfb90c415629dbd0e30d25003fb3e0375fb5Hemant Gupta} 105