1192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta/* 2192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta * Copyright (C) 2014 The Android Open Source Project 3192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta * 4192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta * Licensed under the Apache License, Version 2.0 (the "License"); 5192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta * you may not use this file except in compliance with the License. 6192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta * You may obtain a copy of the License at 7192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta * 8192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta * http://www.apache.org/licenses/LICENSE-2.0 9192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta * 10192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta * Unless required by applicable law or agreed to in writing, software 11192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta * distributed under the License is distributed on an "AS IS" BASIS, 12192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta * See the License for the specific language governing permissions and 14192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta * limitations under the License. 15192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta */ 16192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta 17192d793d2586b620027edd5b45ff4c72a86cc7beHemant Guptapackage android.bluetooth.client.map; 18192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta 19192d793d2586b620027edd5b45ff4c72a86cc7beHemant Guptaimport android.bluetooth.BluetoothSocket; 20192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta 21192d793d2586b620027edd5b45ff4c72a86cc7beHemant Guptaimport java.io.DataInputStream; 22192d793d2586b620027edd5b45ff4c72a86cc7beHemant Guptaimport java.io.DataOutputStream; 23192d793d2586b620027edd5b45ff4c72a86cc7beHemant Guptaimport java.io.IOException; 24192d793d2586b620027edd5b45ff4c72a86cc7beHemant Guptaimport java.io.InputStream; 25192d793d2586b620027edd5b45ff4c72a86cc7beHemant Guptaimport java.io.OutputStream; 26192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta 27192d793d2586b620027edd5b45ff4c72a86cc7beHemant Guptaimport javax.obex.ObexTransport; 28192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta 29192d793d2586b620027edd5b45ff4c72a86cc7beHemant Guptaclass BluetoothMapRfcommTransport implements ObexTransport { 30192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta private final BluetoothSocket mSocket; 31192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta 32192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta public BluetoothMapRfcommTransport(BluetoothSocket socket) { 33192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta super(); 34192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta mSocket = socket; 35192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta } 36192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta 37192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta @Override 38192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta public void create() throws IOException { 39192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta } 40192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta 41192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta @Override 42192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta public void listen() throws IOException { 43192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta } 44192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta 45192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta @Override 46192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta public void close() throws IOException { 47192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta mSocket.close(); 48192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta } 49192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta 50192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta @Override 51192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta public void connect() throws IOException { 52192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta } 53192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta 54192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta @Override 55192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta public void disconnect() throws IOException { 56192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta } 57192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta 58192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta @Override 59192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta public InputStream openInputStream() throws IOException { 60192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta return mSocket.getInputStream(); 61192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta } 62192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta 63192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta @Override 64192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta public OutputStream openOutputStream() throws IOException { 65192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta return mSocket.getOutputStream(); 66192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta } 67192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta 68192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta @Override 69192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta public DataInputStream openDataInputStream() throws IOException { 70192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta return new DataInputStream(openInputStream()); 71192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta } 72192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta 73192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta @Override 74192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta public DataOutputStream openDataOutputStream() throws IOException { 75192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta return new DataOutputStream(openOutputStream()); 76192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta } 773920adcb7724bb0be6c81e51371219c63e9403eaCasper Bonde 783920adcb7724bb0be6c81e51371219c63e9403eaCasper Bonde @Override 793920adcb7724bb0be6c81e51371219c63e9403eaCasper Bonde public int getMaxTransmitPacketSize() { 803920adcb7724bb0be6c81e51371219c63e9403eaCasper Bonde return -1; 813920adcb7724bb0be6c81e51371219c63e9403eaCasper Bonde } 823920adcb7724bb0be6c81e51371219c63e9403eaCasper Bonde 833920adcb7724bb0be6c81e51371219c63e9403eaCasper Bonde @Override 843920adcb7724bb0be6c81e51371219c63e9403eaCasper Bonde public int getMaxReceivePacketSize() { 853920adcb7724bb0be6c81e51371219c63e9403eaCasper Bonde return -1; 863920adcb7724bb0be6c81e51371219c63e9403eaCasper Bonde } 873920adcb7724bb0be6c81e51371219c63e9403eaCasper Bonde 883920adcb7724bb0be6c81e51371219c63e9403eaCasper Bonde @Override 893920adcb7724bb0be6c81e51371219c63e9403eaCasper Bonde public boolean isSrmSupported() { 903920adcb7724bb0be6c81e51371219c63e9403eaCasper Bonde return false; 913920adcb7724bb0be6c81e51371219c63e9403eaCasper Bonde } 92192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta} 93