CMSDK: Make sure to initialize ProfileTriggerHelper.

OSS-JIRA: NIGHTLIES-1480

Change-Id: I48fbb350d96424b593858aca1b2343a79f298b0c
This commit is contained in:
Adnan Begovic 2015-06-30 15:57:24 -07:00
parent 4334b3d969
commit cc979035e7
2 changed files with 25 additions and 12 deletions

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2011-2014 CyanogenMod Project
* Copyright (c) 2011-2015 CyanogenMod Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -82,6 +82,7 @@ public class ProfileManagerService extends SystemService {
private Context mContext;
private boolean mDirty;
private BackupManager mBackupManager;
private ProfileTriggerHelper mTriggerHelper;
private BroadcastReceiver mIntentReceiver = new BroadcastReceiver() {
@Override
@ -124,6 +125,7 @@ public class ProfileManagerService extends SystemService {
}
private void initialize(boolean skipFile) {
mTriggerHelper = new ProfileTriggerHelper(mContext, this);
mProfiles = new HashMap<UUID, Profile>();
mProfileNames = new HashMap<String, UUID>();
mGroups = new HashMap<UUID, NotificationGroup>();
@ -221,7 +223,7 @@ public class ProfileManagerService extends SystemService {
@Override
public Profile getProfile(ParcelUuid profileParcelUuid) {
UUID profileUuid = profileParcelUuid.getUuid();
return internalGetProfile(profileUuid);
return getProfileInternal(profileUuid);
}
@Override
@ -233,7 +235,7 @@ public class ProfileManagerService extends SystemService {
@Override
public Profile getActiveProfile() {
return mActiveProfile;
return getActiveProfileInternal();
}
@Override
@ -394,7 +396,7 @@ public class ProfileManagerService extends SystemService {
profile.addProfileGroup(new ProfileGroup(group.getUuid(), defaultGroup));
}
private Profile internalGetProfile(UUID profileUuid) {
private Profile getProfileInternal(UUID profileUuid) {
// use primary UUID first
if (mProfiles.containsKey(profileUuid)) {
return mProfiles.get(profileUuid);
@ -556,6 +558,10 @@ public class ProfileManagerService extends SystemService {
return true;
}
/* package */ Profile getActiveProfileInternal() {
return mActiveProfile;
}
/* package */ void setActiveProfileInternal(Profile newActiveProfile, boolean doInit) {
/*
* NOTE: Since this is not a public function, and all public functions

View File

@ -14,7 +14,7 @@
* limitations under the License.
*/
package cyanogenmod.app;
package org.cyanogenmod.platform.internal;
import android.bluetooth.BluetoothDevice;
import android.content.BroadcastReceiver;
@ -29,13 +29,20 @@ import android.os.Handler;
import android.provider.Settings;
import android.util.Log;
import cyanogenmod.app.Profile;
import org.cyanogenmod.platform.internal.ProfileManagerService;
import java.util.UUID;
/**
* @hide
*/
public class ProfileTriggerHelper extends BroadcastReceiver {
private static final String TAG = "ProfileTriggerHelper";
private Context mContext;
private ProfileManager mManager;
private ProfileManagerService mManagerService;
private WifiManager mWifiManager;
private String mLastConnectedSSID;
@ -50,9 +57,9 @@ public class ProfileTriggerHelper extends BroadcastReceiver {
}
};
public ProfileTriggerHelper(Context context, ProfileManager manager) {
public ProfileTriggerHelper(Context context, ProfileManagerService profileManagerService) {
mContext = context;
mManager = manager;
mManagerService = profileManagerService;
mWifiManager = (WifiManager) mContext.getSystemService(Context.WIFI_SERVICE);
mLastConnectedSSID = getActiveSSID();
@ -118,16 +125,16 @@ public class ProfileTriggerHelper extends BroadcastReceiver {
}
private void checkTriggers(int type, String id, int newState) {
/*for (Profile p : mManager.getProfileList()) {
for (Profile p : mManagerService.getProfileList()) {
if (newState != p.getTrigger(type, id)) {
continue;
}
UUID currentProfileUuid = mManager.getActiveProfile().getUuid();
UUID currentProfileUuid = mManagerService.getActiveProfileInternal().getUuid();
if (!currentProfileUuid.equals(p.getUuid())) {
//mManager.setActiveProfile(p, true);
mManagerService.setActiveProfileInternal(p, true);
}
}*/
}
}
private String getActiveSSID() {