1 /*
2     SPDX-FileCopyrightText: 2018 Volker Krause <vkrause@kde.org>
3 
4     SPDX-License-Identifier: LGPL-2.0-or-later
5 */
6 
7 package org.kde.knotifications;
8 
9 import android.graphics.drawable.Icon;
10 import android.os.Build;
11 
12 import java.lang.Object;
13 import java.util.ArrayList;
14 
15 /** Java side of KNotification.
16  *  Used to convey the relevant notification data to Java.
17  */
18 public class KNotification
19 {
20     public int id;
21     public String text;
22     public String richText;
23     public String title;
24     public Object icon;
25     public ArrayList<String> actions = new ArrayList<String>();
26     public String channelId;
27     public String channelName;
28     public String channelDescription;
29     public String group;
30     public int urgency;
31     public String visibility;
32 
33     public String inlineReplyLabel;
34     public String inlineReplyPlaceholder;
35 
36     // see knotification.h
37     public static final int LowUrgency = 10;
38     public static final int NormalUrgency = 50;
39     public static final int HighUrgency = 70;
40     public static final int CriticalUrgency = 90;
41 
setIconFromData(byte[] data, int length)42     public void setIconFromData(byte[] data, int length)
43     {
44         if (Build.VERSION.SDK_INT >= 23) {
45             icon = Icon.createWithData(data, 0, length);
46         }
47     }
48 
addAction(String action)49     public void addAction(String action)
50     {
51         actions.add(action);
52     }
53 }
54