"Obfuscate Field Exclude Parameter" Window

Contents:

Overview

Use this dialog to create or modify a parameter that excludes one or more fields from being removed by the "obfuscate" tool. The finished parameter will appear in the Obfuscate Name Exclusion window's "Exclusion parameter" list. A field exclusion parameter can be thought of as consisting of the following components (mandatory components in bold): For a field to match a given exclusion parameter, it must match all the components of the parameter. You can modify the package qualifier component of the parameter by selecting the "Containing package" tab. You can modify the class modifiers, class name, class extends and implements clause components of the parameter by selecting the "Containing class" tab. All the other components can be modified by selecting the "Field" tab.

Containing package tab

Name field

Enter the package name. You may use the "*" wildcard. For example:

Parameter Matches
* any package name
pack1.pack2 only pack1.pack2
pack1.p* any subpackages of pack1 that start with "p"

"Exclude package name as well" box

Select this box if you wish the name of the containing package of any matching field to be excluded in addition to the field itself.

Containing class tab

Access modifier list

Optional. Specifies the class access modifier. You may select public or package. Only classes matching the specified access modifier will match the exclusion parameter.

Modifier list

Optional. Specifies the class modifiers other than access modifiers. You can select more than one modifier. Only classes matching all of the specified modifiers will match the exclusion parameter.

Name field

Enter the class name. You may use the "*" wildcard. For example:

Parameter Matches
* any class name
Class1 only Class1
C* any class name starting with "C"

Extends field

Optional. Enter the fully qualified class name that a matching class must directly or indirectly extend. You cannot use wildcards.

Implements field

Optional. Enter the fully qualified interface names that a matching class must directly or indirectly implement. If you specifiy more than one interface name then you must separate the names with commas. You cannot use wildcards.

"Annotated by" field

Optional. Enter the fully qualified class name of an annotation that a matching class must have. You can use the "*" wildcard. Do not include the "@" character.

"Exclude class name as well" box

Select this box if you wish the name of the containing class of any matching field to be excluded in addition to the name of the field itself.

Field tab

Access modifier list

Optional. Specifies the field access modifier. You may select public, protected, package or private. Only fields matching the specified access modifier will match the exclusion parameter.

Modifier list

Optional. Specifies the field modifiers other than access modifiers. You can select more than one modifier. Only fields matching all of the specified modifiers will match the exclusion parameter.

Name field

Enter the field name. You may use the "*" wildcard. For example:

Parameter Matches
* any field name
field1 only field1
f* any field name starting with "f"

Type field

Optional. Enter the type of the field. You may enter a primitive type such as int or a fully qualified class name such as java.lang.String. You cannot use wildcards.

"Annotated by" field

Optional. Enter the fully qualified class name of an annotation that a matching field must have. You can use the "*" wildcard. Do not include the "@" character.

"Parameter so far" field

Displays the exclusion parameter specified so far in "ZKM Script" syntax.

Explanation area

Displays a plain language explanation of the effect of the exclusion parameter specified so far.


© 2019 Zelix Pty Ltd