blob: 98dab74d25fb4bf851a86b80f9ec99df40758d71 [file] [log] [blame]
Alexandre Lision5f144b82014-02-11 09:59:36 -05001package org.sflphone.fragments;
2
3import android.content.BroadcastReceiver;
4import android.content.Context;
5import android.content.Intent;
6import android.content.IntentFilter;
7import android.os.Bundle;
8import android.support.v4.app.Fragment;
9import android.util.Log;
10import org.sflphone.interfaces.AccountsInterface;
11import org.sflphone.service.ConfigurationManagerCallback;
12
13/**
14 * Created by lisional on 11/02/14.
15 */
16public class AccountWrapperFragment extends Fragment implements AccountsInterface {
17
18
19 private AccountsReceiver mReceiver;
20
21
22 @Override
23 public void onCreate(Bundle savedInstanceState) {
24 super.onCreate(savedInstanceState);
25 mReceiver = new AccountsReceiver();
26 }
27
28 @Override
29 public void onResume() {
Alexandre Lision48b49eb2014-02-11 13:37:33 -050030 super.onResume();
31 IntentFilter intentFilter = new IntentFilter();
32 intentFilter.addAction(ConfigurationManagerCallback.ACCOUNT_STATE_CHANGED);
33 intentFilter.addAction(ConfigurationManagerCallback.ACCOUNTS_CHANGED);
Alexandre Lision5f144b82014-02-11 09:59:36 -050034 getActivity().registerReceiver(mReceiver, intentFilter);
35 }
36
37 @Override
38 public void accountsChanged() {
39
40 }
41
42 @Override
Alexandre Lision48b49eb2014-02-11 13:37:33 -050043 public void accountStateChanged(String accoundID, String state, int code) {
Alexandre Lision5f144b82014-02-11 09:59:36 -050044
45 }
46
47
48 @Override
49 public void onPause() {
50 super.onPause();
51 getActivity().unregisterReceiver(mReceiver);
52 }
53
54 public class AccountsReceiver extends BroadcastReceiver {
55
56 private final String TAG = AccountsReceiver.class.getSimpleName();
57
58 @Override
59 public void onReceive(Context context, Intent intent) {
60 if (intent.getAction().contentEquals(ConfigurationManagerCallback.ACCOUNT_STATE_CHANGED)) {
61 Log.i(TAG, "Received" + intent.getAction());
Alexandre Lision48b49eb2014-02-11 13:37:33 -050062 accountStateChanged(intent.getStringExtra("Account"), intent.getStringExtra("state"), intent.getIntExtra("code", 0));
Alexandre Lision5f144b82014-02-11 09:59:36 -050063 } else if (intent.getAction().contentEquals(ConfigurationManagerCallback.ACCOUNTS_CHANGED)) {
64 Log.i(TAG, "Received" + intent.getAction());
65 accountsChanged();
66
67 }
68
69 }
70 }
71
72
73}