13aff2d1de59972684bf2ab798351be5544158239San Mehat/*
23aff2d1de59972684bf2ab798351be5544158239San Mehat * Copyright (C) 2008 The Android Open Source Project
33aff2d1de59972684bf2ab798351be5544158239San Mehat *
43aff2d1de59972684bf2ab798351be5544158239San Mehat * Licensed under the Apache License, Version 2.0 (the "License");
53aff2d1de59972684bf2ab798351be5544158239San Mehat * you may not use this file except in compliance with the License.
63aff2d1de59972684bf2ab798351be5544158239San Mehat * You may obtain a copy of the License at
73aff2d1de59972684bf2ab798351be5544158239San Mehat *
83aff2d1de59972684bf2ab798351be5544158239San Mehat *      http://www.apache.org/licenses/LICENSE-2.0
93aff2d1de59972684bf2ab798351be5544158239San Mehat *
103aff2d1de59972684bf2ab798351be5544158239San Mehat * Unless required by applicable law or agreed to in writing, software
113aff2d1de59972684bf2ab798351be5544158239San Mehat * distributed under the License is distributed on an "AS IS" BASIS,
123aff2d1de59972684bf2ab798351be5544158239San Mehat * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
133aff2d1de59972684bf2ab798351be5544158239San Mehat * See the License for the specific language governing permissions and
143aff2d1de59972684bf2ab798351be5544158239San Mehat * limitations under the License.
153aff2d1de59972684bf2ab798351be5544158239San Mehat */
163aff2d1de59972684bf2ab798351be5544158239San Mehat
173aff2d1de59972684bf2ab798351be5544158239San Mehat#include <stdlib.h>
183aff2d1de59972684bf2ab798351be5544158239San Mehat
193aff2d1de59972684bf2ab798351be5544158239San Mehat#define LOG_TAG "SupplicantStateChangeEvent"
203aff2d1de59972684bf2ab798351be5544158239San Mehat#include <cutils/log.h>
213aff2d1de59972684bf2ab798351be5544158239San Mehat
223aff2d1de59972684bf2ab798351be5544158239San Mehat#include "SupplicantStateChangeEvent.h"
233aff2d1de59972684bf2ab798351be5544158239San Mehat
243aff2d1de59972684bf2ab798351be5544158239San MehatSupplicantStateChangeEvent::SupplicantStateChangeEvent(int level, char *event,
253aff2d1de59972684bf2ab798351be5544158239San Mehat                                                       size_t len) :
263aff2d1de59972684bf2ab798351be5544158239San Mehat                            SupplicantEvent(SupplicantEvent::EVENT_STATE_CHANGE,
273aff2d1de59972684bf2ab798351be5544158239San Mehat                                            level) {
283aff2d1de59972684bf2ab798351be5544158239San Mehat    // XXX: move this stuff into a static creation method
293aff2d1de59972684bf2ab798351be5544158239San Mehat    char *p = index(event, ' ');
303aff2d1de59972684bf2ab798351be5544158239San Mehat    if (!p) {
313aff2d1de59972684bf2ab798351be5544158239San Mehat        LOGW("Bad event '%s'\n", event);
323aff2d1de59972684bf2ab798351be5544158239San Mehat        return;
333aff2d1de59972684bf2ab798351be5544158239San Mehat    }
343aff2d1de59972684bf2ab798351be5544158239San Mehat
353aff2d1de59972684bf2ab798351be5544158239San Mehat    mState = atoi(p + strlen("state=") + 1);
363aff2d1de59972684bf2ab798351be5544158239San Mehat}
373aff2d1de59972684bf2ab798351be5544158239San Mehat
383aff2d1de59972684bf2ab798351be5544158239San MehatSupplicantStateChangeEvent::SupplicantStateChangeEvent(int state) :
393aff2d1de59972684bf2ab798351be5544158239San Mehat                            SupplicantEvent(SupplicantEvent::EVENT_STATE_CHANGE, -1) {
403aff2d1de59972684bf2ab798351be5544158239San Mehat    mState = state;
413aff2d1de59972684bf2ab798351be5544158239San Mehat}
423aff2d1de59972684bf2ab798351be5544158239San Mehat
433aff2d1de59972684bf2ab798351be5544158239San MehatSupplicantStateChangeEvent::~SupplicantStateChangeEvent() {
443aff2d1de59972684bf2ab798351be5544158239San Mehat}
453aff2d1de59972684bf2ab798351be5544158239San Mehat
46