blob: 37dbe3a949953069647af235b73edd6e13ffddcf [file] [log] [blame]
Chris Wren3ad4e3a2014-09-02 17:23:51 -04001/*
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.content.Context;
Julia Reynoldsb5e44b72016-08-16 15:00:25 -040019import android.service.notification.NotificationListenerService;
Chris Wren3ad4e3a2014-09-02 17:23:51 -040020import android.util.Slog;
21
Julia Reynolds233a5f92015-10-19 13:51:23 -040022/**
23 * Determines if the given notification can display sensitive content on the lockscreen.
24 */
Julia Reynoldsef37f282016-02-12 09:11:27 -050025public class VisibilityExtractor implements NotificationSignalExtractor {
26 private static final String TAG = "VisibilityExtractor";
Chris Wren3ad4e3a2014-09-02 17:23:51 -040027 private static final boolean DBG = false;
28
29 private RankingConfig mConfig;
30
Chris Wren5eab2b72015-06-16 13:56:22 -040031 public void initialize(Context ctx, NotificationUsageStats usageStats) {
Chris Wren3ad4e3a2014-09-02 17:23:51 -040032 if (DBG) Slog.d(TAG, "Initializing " + getClass().getSimpleName() + ".");
33 }
34
35 public RankingReconsideration process(NotificationRecord record) {
36 if (record == null || record.getNotification() == null) {
37 if (DBG) Slog.d(TAG, "skipping empty notification");
38 return null;
39 }
40
41 if (mConfig == null) {
42 if (DBG) Slog.d(TAG, "missing config");
43 return null;
44 }
45
Julia Reynoldsbaff4002016-12-15 11:34:26 -050046 record.setPackageVisibilityOverride(record.getChannel().getLockscreenVisibility());
Chris Wren3ad4e3a2014-09-02 17:23:51 -040047
48 return null;
49 }
50
51 @Override
52 public void setConfig(RankingConfig config) {
53 mConfig = config;
54 }
55}