--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/javaextensions/bluetooth/bluecove/javasrc/javax/bluetooth/RemoteDevice.java Tue Apr 27 16:30:29 2010 +0300
@@ -0,0 +1,161 @@
+/**
+ * BlueCove - Java library for Bluetooth
+ *
+ * Java docs licensed under the Apache License, Version 2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * (c) Copyright 2001, 2002 Motorola, Inc. ALL RIGHTS RESERVED.
+ *
+ * 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.
+ *
+ * @version $Id: RemoteDevice.java 2530 2008-12-09 18:52:53Z skarzhevskyy $
+ */
+package javax.bluetooth;
+
+import java.io.IOException;
+
+import javax.microedition.io.Connection;
+
+import com.intel.bluetooth.DebugLog;
+import com.intel.bluetooth.RemoteDeviceHelper;
+import com.intel.bluetooth.UtilsJavaSE;
+
+/**
+ * Please refer JSR-82
+ */
+public class RemoteDevice {
+
+ /**
+ * A bluetooth hex address
+ */
+ private String addressStr;
+
+ /**
+ * A bluetooth address for internal use
+ */
+ private long addressLong;
+
+ /**
+ * Please refer JSR-82
+ */
+ protected RemoteDevice(String address) {
+ if (address == null) {
+ throw new NullPointerException("address is null");
+ }
+ if (address.length() != 12) {
+ throw new IllegalArgumentException("Malformed address: " + address + "; should be 12 characters");
+ }
+ if (address.startsWith("-")) {
+ throw new IllegalArgumentException("Malformed address: " + address + "; can't be negative");
+ }
+ DebugLog.debug("new RemoteDevice", address);
+ this.addressStr = RemoteDeviceHelper.formatBluetoothAddress(address);
+ try {
+ if (this.addressStr.equals(LocalDevice.getLocalDevice().getBluetoothAddress())) {
+ throw new IllegalArgumentException("can't use the LocalDevice address.");
+ }
+ } catch (BluetoothStateException e) {
+ throw (RuntimeException) UtilsJavaSE.initCause(new RuntimeException("Can't initialize bluetooth support"), e);
+ }
+ this.addressLong = RemoteDeviceHelper.getAddress(address);
+ }
+
+ /**
+ * Please refer JSR-82
+ */
+ public boolean isTrustedDevice() {
+ return RemoteDeviceHelper.isTrustedDevice(this);
+ }
+
+ /**
+ * Please refer JSR-82
+ */
+ public String getFriendlyName(boolean alwaysAsk) throws IOException {
+ return RemoteDeviceHelper.getFriendlyName(this, this.addressLong, alwaysAsk);
+ }
+
+ /**
+ * Please refer JSR-82
+ */
+ public final String getBluetoothAddress() {
+ return this.addressStr;
+ }
+
+ /**
+ * Please refer JSR-82
+ */
+ public boolean equals(Object obj) {
+ return obj != null && obj instanceof RemoteDevice && ((RemoteDevice) obj).addressLong == addressLong;
+ }
+
+ /**
+ * Please refer JSR-82
+ */
+ public int hashCode() {
+ return new Long(addressLong).hashCode();
+ }
+
+ /**
+ * Please refer JSR-82
+ */
+ public static RemoteDevice getRemoteDevice(Connection conn) throws IOException {
+ return RemoteDeviceHelper.getRemoteDevice(conn);
+ }
+
+ /**
+ * Please refer JSR-82
+ */
+ public boolean authenticate() throws IOException {
+ return RemoteDeviceHelper.authenticate(this);
+ }
+
+ /**
+ * Please refer JSR-82
+ */
+ public boolean authorize(javax.microedition.io.Connection conn) throws IOException {
+ return RemoteDeviceHelper.authorize(this, conn);
+ }
+
+ /**
+ * Please refer JSR-82
+ */
+ public boolean encrypt(javax.microedition.io.Connection conn, boolean on) throws IOException {
+ return RemoteDeviceHelper.encrypt(this, conn, on);
+ }
+
+ /**
+ * Please refer JSR-82
+ */
+ public boolean isAuthenticated() {
+ return RemoteDeviceHelper.isAuthenticated(this);
+ }
+
+ /**
+ * Please refer JSR-82
+ */
+ public boolean isAuthorized(javax.microedition.io.Connection conn) throws IOException {
+ return RemoteDeviceHelper.isAuthorized(this, conn);
+ }
+
+ /**
+ * Please refer JSR-82
+ */
+ public boolean isEncrypted() {
+ return RemoteDeviceHelper.isEncrypted(this);
+ }
+
+}