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.pbap;
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 BluetoothPbapObexTransport implements ObexTransport {
30192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta
31192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta    private BluetoothSocket mSocket = null;
32192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta
33192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta    public BluetoothPbapObexTransport(BluetoothSocket rfs) {
34192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta        super();
35192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta        mSocket = rfs;
36192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta    }
37192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta
38192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta    @Override
39192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta    public void close() throws IOException {
40192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta        mSocket.close();
41192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta    }
42192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta
43192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta    @Override
44192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta    public DataInputStream openDataInputStream() throws IOException {
45192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta        return new DataInputStream(openInputStream());
46192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta    }
47192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta
48192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta    @Override
49192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta    public DataOutputStream openDataOutputStream() throws IOException {
50192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta        return new DataOutputStream(openOutputStream());
51192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta    }
52192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta
53192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta    @Override
54192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta    public InputStream openInputStream() throws IOException {
55192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta        return mSocket.getInputStream();
56192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta    }
57192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta
58192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta    @Override
59192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta    public OutputStream openOutputStream() throws IOException {
60192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta        return mSocket.getOutputStream();
61192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta    }
62192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta
63192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta    @Override
64192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta    public void connect() throws IOException {
65192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta    }
66192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta
67192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta    @Override
68192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta    public void create() throws IOException {
69192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta    }
70192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta
71192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta    @Override
72192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta    public void disconnect() throws IOException {
73192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta    }
74192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta
75192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta    @Override
76192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta    public void listen() throws IOException {
77192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta    }
78192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta
79192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta    public boolean isConnected() throws IOException {
80192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta        // return true;
81192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta        return mSocket.isConnected();
82192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta    }
83192d793d2586b620027edd5b45ff4c72a86cc7beHemant Gupta}
84