My favorites | Sign in
Project Home Downloads Wiki Issues Source
Checkout   Browse   Changes    
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
/**
* BlueCove - Java library for Bluetooth
* Copyright (C) 2006-2009 Vlad Skarzhevskyy
*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*
* @author vlads
* @version $Id$
*/
package org.bluecove.tester.tck;

import javax.bluetooth.BluetoothStateException;
import javax.bluetooth.DiscoveryAgent;
import javax.bluetooth.LocalDevice;

import org.bluecove.tester.log.Logger;
import org.bluecove.tester.util.ThreadUtils;

import BluetoothTCKAgent.System;

public class TckStarter {

private static Thread tckRFCOMMThread;

private static Thread tckL2CALthread;

private static Thread tckGOEPThread;

private static Thread tckOBEXThread;

static boolean startCommong() {
try {
LocalDevice localDevice = LocalDevice.getLocalDevice();
Logger.info("address:" + localDevice.getBluetoothAddress());
Logger.info("name:" + localDevice.getFriendlyName());
localDevice.setDiscoverable(DiscoveryAgent.GIAC);
return true;
} catch (BluetoothStateException e) {
Logger.error("start", e);
return false;
}
}

static void startBluetoothTCK() {
if (!startCommong()) {
return;
}
try {
tckRFCOMMThread = new BluetoothTCKAgent.RFCOMMThread("RFCOMMThread");
tckRFCOMMThread.start();
} catch (Throwable e) {
Logger.debug("Fail to start RFCOMM", e);
}
try {
String agentMtu = System.getProperty("bluetooth.agent_mtu");
String timeout = System.getProperty("timeout");
tckL2CALthread = new BluetoothTCKAgent.L2CAPThread("L2CAPThread", agentMtu, timeout);
if (tckL2CALthread != null) {
tckL2CALthread.start();
}
} catch (Throwable e) {
Logger.debug("Fail to start L2CAP", e);
}

try {
tckGOEPThread = new BluetoothTCKAgent.GOEPThread("GOEPThread");
if (tckGOEPThread != null) {
tckGOEPThread.start();
}
} catch (Throwable e) {
Logger.debug("Fail to start GOEP srv", e);
}
}

static void startObexTCK(boolean tcp) {
if (!startCommong()) {
return;
}
try {
tckOBEXThread = new OBEXTCKAgent.OBEXTCKAgentApp("10", tcp ? "tcpobex" : "btgoep");
if (tckOBEXThread != null) {
tckOBEXThread.start();
}
} catch (Throwable e) {
Logger.debug("Fail to start OBEX srv", e);
}
}

static void stopAgent() {
ThreadUtils.interruptThread(tckRFCOMMThread);
tckRFCOMMThread = null;

ThreadUtils.interruptThread(tckL2CALthread);
tckL2CALthread = null;

ThreadUtils.interruptThread(tckGOEPThread);
tckGOEPThread = null;

ThreadUtils.interruptThread(tckOBEXThread);
tckOBEXThread = null;
}

}

Change log

r2916 by skarzhevskyy on Mar 13, 2009   Diff
Updated javadocs and Copyright
Go to: 
Project members, sign in to write a code review

Older revisions

r2650 by skarzhevskyy on Dec 23, 2008   Diff
move TCK agent
All revisions of this file

File info

Size: 3272 bytes, 118 lines

File properties

svn:mime-type
text/plain
svn:eol-style
native
svn:keywords
Date Author Id Revision
Powered by Google Project Hosting