PackagePriorityExtractor.java revision 54bbef435ed857fc68941672799fc8001c101119
1/* 2* Copyright (C) 2014 The Android Open Source Project 3* 4* Licensed under the Apache License, Version 2.0 (the "License"); 5* you may not use this file except in compliance with the License. 6* You may obtain a copy of the License at 7* 8* http://www.apache.org/licenses/LICENSE-2.0 9* 10* Unless required by applicable law or agreed to in writing, software 11* distributed under the License is distributed on an "AS IS" BASIS, 12* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13* See the License for the specific language governing permissions and 14* limitations under the License. 15*/ 16package com.android.server.notification; 17 18import android.app.Notification; 19import android.content.Context; 20import android.util.Slog; 21 22public class PackagePriorityExtractor implements NotificationSignalExtractor { 23 private static final String TAG = "ImportantPackageExtractor"; 24 private static final boolean DBG = false; 25 26 private RankingConfig mConfig; 27 28 public void initialize(Context ctx) { 29 if (DBG) Slog.d(TAG, "Initializing " + getClass().getSimpleName() + "."); 30 } 31 32 public RankingReconsideration process(NotificationRecord record) { 33 if (record == null || record.getNotification() == null) { 34 if (DBG) Slog.d(TAG, "skipping empty notification"); 35 return null; 36 } 37 38 if (mConfig == null) { 39 if (DBG) Slog.d(TAG, "missing config"); 40 return null; 41 } 42 43 final int packagePriority = mConfig.getPackagePriority( 44 record.sbn.getPackageName(), record.sbn.getUid()); 45 record.setPackagePriority(packagePriority); 46 47 return null; 48 } 49 50 @Override 51 public void setConfig(RankingConfig config) { 52 mConfig = config; 53 } 54} 55