1#
2# Copyright (c) ZeroC, Inc. All rights reserved.
3#
4
5# Preserve all public applications.
6
7-keepclasseswithmembers public class * {
8    public static void main(java.lang.String[]);
9}
10
11# Following options are useful for debugging.
12# -printseeds
13# -verbose
14
15-dontnote jdk.internal.jimage.**
16-dontnote jdk.internal.jrtfs.**
17-dontnote module-info
18
19#
20# This classes are not longer part of JDK 10 on non Windows platforms
21# and will cause a build error
22#
23-dontwarn com.jgoodies.looks.windows.*
24
25# Preserve all annotations.
26
27-keepattributes *Annotation*
28
29# Parse non-public libraries to prevent undefined symbol errors on some platforms.
30
31-dontskipnonpubliclibraryclasses
32
33# Preserve all native method names and the names of their classes.
34
35-keepclasseswithmembernames class * {
36    native <methods>;
37}
38
39# Preserve a method that is required in all enumeration classes.
40
41-keepclassmembers class * extends java.lang.Enum {
42    public **[] values();
43}
44
45-dontnote com.zeroc.IceInternal.*ObserverI*
46-dontnote com.zeroc.IceInternal.BasicStream
47-dontnote com.zeroc.IceInternal.Network
48-dontnote com.zeroc.IceSSL.SSLEngine
49-dontnote com.zeroc.Ice.InputStream
50-dontnote com.zeroc.Ice.InputStream$EncapsDecoder
51-dontnote com.zeroc.Ice.InputStream$EncapsDecoder11
52-dontnote com.zeroc.Ice.ObjectPrx
53-dontnote com.zeroc.Ice.PluginManagerI
54-dontnote com.zeroc.Ice._ObjectPrxI
55-dontnote com.zeroc.IceInternal.MetricsMap
56-dontnote com.zeroc.IceMX.Observer
57-dontnote com.zeroc.IceMX.ObserverFactory
58
59-dontnote com.zeroc.IceBox.ServiceManagerI
60-dontnote com.zeroc.IceGridGUI.Coordinator
61-dontnote com.zeroc.IceGridGUI.LiveDeployment.MetricsView*
62-dontnote com.zeroc.IceInternal*
63
64-dontnote com.jgoodies.**
65-dontnote com.javafx.**
66
67-dontusemixedcaseclassnames
68-dontoptimize
69-dontobfuscate
70
71-keepclassmembers class * implements java.io.Serializable {
72    static final long serialVersionUID;
73    private void writeObject(java.io.ObjectOutputStream);
74    private void readObject(java.io.ObjectInputStream);
75    java.lang.Object writeReplace();
76    java.lang.Object readResolve();
77}
78
79-keepclass class * {
80    java.lang.String ice_staticId();
81}
82
83-keepclass class com.zeroc.Ice.* {
84    java.lang.String typeId;
85}
86# Your application may contain more items that need to be preserved;
87# typically classes that are dynamically created using Class.forName:
88
89-keep,includedescriptorclasses public class com.zeroc.Ice.** {
90  public *;
91}
92-keep public class com.zeroc.IceGrid.** {
93  public *;
94}
95-keep public class com.zeroc.IceSSL.** {
96  public *;
97}
98-keep interface com.zeroc.IceGrid.**
99-keep class com.zeroc.IceMX.**
100-keep interface com.zeroc.IceMX.**
101
102-keep,includedescriptorclasses class com.jgoodies.looks.plastic.PlasticXPLookAndFeel
103-keep,includedescriptorclasses class com.jgoodies.looks.plastic.PlasticFieldCaret
104-keep,includedescriptorclasses class com.jgoodies.looks.windows.WindowsFieldCaret
105
106#
107# Without this directive, the menus on Windows don't look good
108#
109-keepclassmembers class com.jgoodies.looks.** {
110   <methods>;
111}
112
113#
114# More keeps to suppress Notes
115#
116-keep,includedescriptorclasses public class * {
117    public protected *;
118}
119