12e814680f4dd27a5f825afab189843582235cedcJan Nordqvist/* 22e814680f4dd27a5f825afab189843582235cedcJan Nordqvist * Copyright (C) 2016 The Android Open Source Project 32e814680f4dd27a5f825afab189843582235cedcJan Nordqvist * 42e814680f4dd27a5f825afab189843582235cedcJan Nordqvist * Licensed under the Apache License, Version 2.0 (the "License"); 52e814680f4dd27a5f825afab189843582235cedcJan Nordqvist * you may not use this file except in compliance with the License. 62e814680f4dd27a5f825afab189843582235cedcJan Nordqvist * You may obtain a copy of the License at 72e814680f4dd27a5f825afab189843582235cedcJan Nordqvist * 82e814680f4dd27a5f825afab189843582235cedcJan Nordqvist * http://www.apache.org/licenses/LICENSE-2.0 92e814680f4dd27a5f825afab189843582235cedcJan Nordqvist * 102e814680f4dd27a5f825afab189843582235cedcJan Nordqvist * Unless required by applicable law or agreed to in writing, software 112e814680f4dd27a5f825afab189843582235cedcJan Nordqvist * distributed under the License is distributed on an "AS IS" BASIS, 122e814680f4dd27a5f825afab189843582235cedcJan Nordqvist * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 132e814680f4dd27a5f825afab189843582235cedcJan Nordqvist * See the License for the specific language governing permissions and 142e814680f4dd27a5f825afab189843582235cedcJan Nordqvist * limitations under the License. 152e814680f4dd27a5f825afab189843582235cedcJan Nordqvist */ 162e814680f4dd27a5f825afab189843582235cedcJan Nordqvist 17c49f45c75b1db93cd80b8bac4dd5fa8930fcb242Peter Qiupackage com.android.server.wifi.hotspot2; 18c49f45c75b1db93cd80b8bac4dd5fa8930fcb242Peter Qiu 192e814680f4dd27a5f825afab189843582235cedcJan Nordqvist/** 202e814680f4dd27a5f825afab189843582235cedcJan Nordqvist * This class carries the payload of a Hotspot 2.0 Wireless Network Management (WNM) frame, 212e814680f4dd27a5f825afab189843582235cedcJan Nordqvist * described in the Hotspot 2.0 spec, section 3.2. 222e814680f4dd27a5f825afab189843582235cedcJan Nordqvist */ 232e814680f4dd27a5f825afab189843582235cedcJan Nordqvistpublic class WnmData { 245a1adfdef3025a595544b3d17e1d5d9afca7673bRoshan Pius public static final int ESS = 1; // HS2.0 spec section 3.2.1.2, table 4 252e814680f4dd27a5f825afab189843582235cedcJan Nordqvist 262e814680f4dd27a5f825afab189843582235cedcJan Nordqvist private final long mBssid; 272e814680f4dd27a5f825afab189843582235cedcJan Nordqvist private final String mUrl; 282e814680f4dd27a5f825afab189843582235cedcJan Nordqvist private final boolean mDeauthEvent; 292e814680f4dd27a5f825afab189843582235cedcJan Nordqvist private final int mMethod; 302e814680f4dd27a5f825afab189843582235cedcJan Nordqvist private final boolean mEss; 312e814680f4dd27a5f825afab189843582235cedcJan Nordqvist private final int mDelay; 322e814680f4dd27a5f825afab189843582235cedcJan Nordqvist 335a1adfdef3025a595544b3d17e1d5d9afca7673bRoshan Pius public WnmData(long bssid, String url, int method) { 342e814680f4dd27a5f825afab189843582235cedcJan Nordqvist mBssid = bssid; 352e814680f4dd27a5f825afab189843582235cedcJan Nordqvist mUrl = url; 362e814680f4dd27a5f825afab189843582235cedcJan Nordqvist mMethod = method; 372e814680f4dd27a5f825afab189843582235cedcJan Nordqvist mEss = false; 382e814680f4dd27a5f825afab189843582235cedcJan Nordqvist mDelay = -1; 392e814680f4dd27a5f825afab189843582235cedcJan Nordqvist mDeauthEvent = false; 402e814680f4dd27a5f825afab189843582235cedcJan Nordqvist } 412e814680f4dd27a5f825afab189843582235cedcJan Nordqvist 425a1adfdef3025a595544b3d17e1d5d9afca7673bRoshan Pius public WnmData(long bssid, String url, boolean ess, int delay) { 432e814680f4dd27a5f825afab189843582235cedcJan Nordqvist mBssid = bssid; 442e814680f4dd27a5f825afab189843582235cedcJan Nordqvist mUrl = url; 452e814680f4dd27a5f825afab189843582235cedcJan Nordqvist mEss = ess; 462e814680f4dd27a5f825afab189843582235cedcJan Nordqvist mDelay = delay; 472e814680f4dd27a5f825afab189843582235cedcJan Nordqvist mMethod = -1; 482e814680f4dd27a5f825afab189843582235cedcJan Nordqvist mDeauthEvent = true; 492e814680f4dd27a5f825afab189843582235cedcJan Nordqvist } 502e814680f4dd27a5f825afab189843582235cedcJan Nordqvist 512e814680f4dd27a5f825afab189843582235cedcJan Nordqvist public long getBssid() { 522e814680f4dd27a5f825afab189843582235cedcJan Nordqvist return mBssid; 532e814680f4dd27a5f825afab189843582235cedcJan Nordqvist } 542e814680f4dd27a5f825afab189843582235cedcJan Nordqvist 552e814680f4dd27a5f825afab189843582235cedcJan Nordqvist public String getUrl() { 562e814680f4dd27a5f825afab189843582235cedcJan Nordqvist return mUrl; 572e814680f4dd27a5f825afab189843582235cedcJan Nordqvist } 582e814680f4dd27a5f825afab189843582235cedcJan Nordqvist 592e814680f4dd27a5f825afab189843582235cedcJan Nordqvist public boolean isDeauthEvent() { 602e814680f4dd27a5f825afab189843582235cedcJan Nordqvist return mDeauthEvent; 612e814680f4dd27a5f825afab189843582235cedcJan Nordqvist } 622e814680f4dd27a5f825afab189843582235cedcJan Nordqvist 632e814680f4dd27a5f825afab189843582235cedcJan Nordqvist public int getMethod() { 642e814680f4dd27a5f825afab189843582235cedcJan Nordqvist return mMethod; 652e814680f4dd27a5f825afab189843582235cedcJan Nordqvist } 662e814680f4dd27a5f825afab189843582235cedcJan Nordqvist 672e814680f4dd27a5f825afab189843582235cedcJan Nordqvist public boolean isEss() { 682e814680f4dd27a5f825afab189843582235cedcJan Nordqvist return mEss; 692e814680f4dd27a5f825afab189843582235cedcJan Nordqvist } 702e814680f4dd27a5f825afab189843582235cedcJan Nordqvist 712e814680f4dd27a5f825afab189843582235cedcJan Nordqvist public int getDelay() { 722e814680f4dd27a5f825afab189843582235cedcJan Nordqvist return mDelay; 732e814680f4dd27a5f825afab189843582235cedcJan Nordqvist } 742e814680f4dd27a5f825afab189843582235cedcJan Nordqvist} 75