1/* 2* Copyright (C) 2013 Samsung System LSI 3* Licensed under the Apache License, Version 2.0 (the "License"); 4* you may not use this file except in compliance with the License. 5* You may obtain a copy of the License at 6* 7* http://www.apache.org/licenses/LICENSE-2.0 8* 9* Unless required by applicable law or agreed to in writing, software 10* distributed under the License is distributed on an "AS IS" BASIS, 11* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12* See the License for the specific language governing permissions and 13* limitations under the License. 14*/ 15package com.android.bluetooth.map; 16 17import android.bluetooth.BluetoothSocket; 18 19import java.io.DataInputStream; 20import java.io.DataOutputStream; 21import java.io.IOException; 22import java.io.InputStream; 23import java.io.OutputStream; 24 25import javax.obex.ObexTransport; 26 27public class BluetoothMnsRfcommTransport implements ObexTransport { 28 29 private final BluetoothSocket mSocket; 30 31 public BluetoothMnsRfcommTransport(BluetoothSocket socket) { 32 super(); 33 this.mSocket = socket; 34 } 35 36 public void close() throws IOException { 37 mSocket.close(); 38 } 39 40 public DataInputStream openDataInputStream() throws IOException { 41 return new DataInputStream(openInputStream()); 42 } 43 44 public DataOutputStream openDataOutputStream() throws IOException { 45 return new DataOutputStream(openOutputStream()); 46 } 47 48 public InputStream openInputStream() throws IOException { 49 return mSocket.getInputStream(); 50 } 51 52 public OutputStream openOutputStream() throws IOException { 53 return mSocket.getOutputStream(); 54 } 55 56 public void connect() throws IOException { 57 } 58 59 public void create() throws IOException { 60 } 61 62 public void disconnect() throws IOException { 63 } 64 65 public void listen() throws IOException { 66 } 67 68 public boolean isConnected() throws IOException { 69 // TODO: add implementation 70 return true; 71 } 72 73 public String getRemoteAddress() { 74 if (mSocket == null) 75 return null; 76 return mSocket.getRemoteDevice().getAddress(); 77 } 78 79} 80