content: /**
   * Copyright (C) 2010-2016 eBusiness Information, Excilys Group
   *
   * Licensed 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.
   */
  package org.androidannotations.test.receiver;
  
  import org.androidannotations.annotations.EActivity;
  import org.androidannotations.annotations.Receiver;
  
  import android.app.Activity;
  import android.content.Intent;
  import android.net.wifi.WifiManager;
  
  @EActivity
  public class ActivityWithReceiver extends Activity {
  
  	public static final String ACTION_1 = "org.androidannotations.ACTION_1";
  	public static final String ACTION_2 = "org.androidannotations.ACTION_2";
  	public static final String CUSTOM_HTTP_ACTION = "CUSTOM_HTTP_ACTION";
  
  	public boolean localWifiChangeIntentReceived = false;
  	public boolean dataSchemeHttpIntentReceived = false;
  	public boolean wifiChangeIntentReceived = false;
  	public boolean action1Fired = false;
  	public boolean action2Fired = false;
  
  	public String wifiSsid = null;
  
  	Intent originalIntent;
  	Intent extraIntent;
  
  	@Receiver(actions = WifiManager.NETWORK_STATE_CHANGED_ACTION, registerAt = Receiver.RegisterAt.OnResumeOnPause)
  	protected void onWifiStateChanged(Intent intent, @Receiver.Extra(WifiManager.EXTRA_BSSID) String ssid) {
  		wifiChangeIntentReceived = true;
  		wifiSsid = ssid;
  	}
  
  	@Receiver(actions = WifiManager.NETWORK_STATE_CHANGED_ACTION, registerAt = Receiver.RegisterAt.OnStartOnStop, local = true)
  	protected void onLocalWifiStateChanged() {
  		localWifiChangeIntentReceived = true;
  	}
  
  	@Receiver(actions = CUSTOM_HTTP_ACTION, dataSchemes = "http", registerAt = Receiver.RegisterAt.OnCreateOnDestroy)
  	protected void onDataSchemeHttp(Intent intent) {
  		dataSchemeHttpIntentReceived = true;
  	}
  
  	@Receiver(actions = { ACTION_1, ACTION_2 }, registerAt = Receiver.RegisterAt.OnCreateOnDestroy)
  	protected void onBroadcastWithTwoActions(Intent intent) {
  		String action = intent.getAction();
  		if (action.equals(ACTION_1)) {
  			action1Fired = true;
  		} else if (action.equals(ACTION_2)) {
  			action2Fired = true;
  		}
  	}
  
  	@Receiver(actions = ACTION_1)
  	protected void onBroadcastWithExtras(Intent originalIntent, @Receiver.Extra Intent extraIntent) {
  		this.originalIntent = originalIntent;
  		this.extraIntent = extraIntent;
  	}
  }
  