1e4e3b8cb884dd9e754a437ea6feac502191f1767Mitchell Wills/* 2e4e3b8cb884dd9e754a437ea6feac502191f1767Mitchell Wills * Copyright (C) 2016 The Android Open Source Project 3e4e3b8cb884dd9e754a437ea6feac502191f1767Mitchell Wills * 4e4e3b8cb884dd9e754a437ea6feac502191f1767Mitchell Wills * Licensed under the Apache License, Version 2.0 (the "License"); 5e4e3b8cb884dd9e754a437ea6feac502191f1767Mitchell Wills * you may not use this file except in compliance with the License. 6e4e3b8cb884dd9e754a437ea6feac502191f1767Mitchell Wills * You may obtain a copy of the License at 7e4e3b8cb884dd9e754a437ea6feac502191f1767Mitchell Wills * 8e4e3b8cb884dd9e754a437ea6feac502191f1767Mitchell Wills * http://www.apache.org/licenses/LICENSE-2.0 9e4e3b8cb884dd9e754a437ea6feac502191f1767Mitchell Wills * 10e4e3b8cb884dd9e754a437ea6feac502191f1767Mitchell Wills * Unless required by applicable law or agreed to in writing, software 11e4e3b8cb884dd9e754a437ea6feac502191f1767Mitchell Wills * distributed under the License is distributed on an "AS IS" BASIS, 12e4e3b8cb884dd9e754a437ea6feac502191f1767Mitchell Wills * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13e4e3b8cb884dd9e754a437ea6feac502191f1767Mitchell Wills * See the License for the specific language governing permissions and 14e4e3b8cb884dd9e754a437ea6feac502191f1767Mitchell Wills * limitations under the License. 15e4e3b8cb884dd9e754a437ea6feac502191f1767Mitchell Wills */ 16e4e3b8cb884dd9e754a437ea6feac502191f1767Mitchell Wills 17e4e3b8cb884dd9e754a437ea6feac502191f1767Mitchell Willspackage com.android.server.wifi.util; 18e4e3b8cb884dd9e754a437ea6feac502191f1767Mitchell Wills 19e4e3b8cb884dd9e754a437ea6feac502191f1767Mitchell Willsimport android.net.wifi.ScanResult; 20e4e3b8cb884dd9e754a437ea6feac502191f1767Mitchell Wills 21e4e3b8cb884dd9e754a437ea6feac502191f1767Mitchell Willsimport com.android.server.wifi.ScanDetail; 22e4e3b8cb884dd9e754a437ea6feac502191f1767Mitchell Willsimport com.android.server.wifi.hotspot2.NetworkDetail; 23e4e3b8cb884dd9e754a437ea6feac502191f1767Mitchell Wills 24e4e3b8cb884dd9e754a437ea6feac502191f1767Mitchell Wills/** 25e4e3b8cb884dd9e754a437ea6feac502191f1767Mitchell Wills * Utility for converting a ScanResult to a ScanDetail. 26e4e3b8cb884dd9e754a437ea6feac502191f1767Mitchell Wills * Only fields that are supported in ScanResult are copied. 27e4e3b8cb884dd9e754a437ea6feac502191f1767Mitchell Wills */ 28e4e3b8cb884dd9e754a437ea6feac502191f1767Mitchell Willspublic class ScanDetailUtil { 29e4e3b8cb884dd9e754a437ea6feac502191f1767Mitchell Wills private ScanDetailUtil() { /* not constructable */ } 30e4e3b8cb884dd9e754a437ea6feac502191f1767Mitchell Wills 31e4e3b8cb884dd9e754a437ea6feac502191f1767Mitchell Wills /** 32e4e3b8cb884dd9e754a437ea6feac502191f1767Mitchell Wills * This method should only be used when the informationElements field in the provided scan 33e4e3b8cb884dd9e754a437ea6feac502191f1767Mitchell Wills * result is filled in with the IEs from the beacon. 34e4e3b8cb884dd9e754a437ea6feac502191f1767Mitchell Wills */ 35e4e3b8cb884dd9e754a437ea6feac502191f1767Mitchell Wills public static ScanDetail toScanDetail(ScanResult scanResult) { 36e4e3b8cb884dd9e754a437ea6feac502191f1767Mitchell Wills NetworkDetail networkDetail = new NetworkDetail(scanResult.BSSID, 37e4e3b8cb884dd9e754a437ea6feac502191f1767Mitchell Wills scanResult.informationElements, scanResult.anqpLines, scanResult.frequency); 38e4e3b8cb884dd9e754a437ea6feac502191f1767Mitchell Wills return new ScanDetail(scanResult, networkDetail, null); 39e4e3b8cb884dd9e754a437ea6feac502191f1767Mitchell Wills } 40e4e3b8cb884dd9e754a437ea6feac502191f1767Mitchell Wills} 41