//////////////////////////////////////////////////////////////////////////////
// This file contains properties describing modifications to be applied
// to the javaplugin.jre.params property of the Java plugin configuration
// properties file (deployment.properties in JRE 1.4 and higher).
//
// For each instruction, a key and a value-matching regular expression
// must be supplied. The option will be considered matched if it starts with
// the specified key string and its value matching expression matches the
// remainder of the option string beyond the key string. Each instruction
// may specify a series of edit steps to be applied to the substring of the
// option string following the key. If an option is not matched and the
// instruction specifies add, the option (key + addValue) will be added.
// Permitted operations are: "ADD", "REMOVE", "EDIT", and "EDITORADD". The operation
// definition will be treated in a case-insensitive manner (e.g. "EDITORADD" is
// equivalent to "EditOrAdd").
//
// For help with regular expressions used to match values and parts of values,
// refer to the Javadoc for class java.util.regex.Pattern.
// Also, refer to the Java tutorial regex lesson:
// http://java.sun.com/docs/books/tutorial/extra/regex/index.html
//
// The following describes the syntax of the instructions file:
//
// option.0.key=<key>
// option.0.operation=<EDIT or REMOVE or EDITORADD>
// option.0.addValue=<value part to use when adding if key not found>
// option.0.valueMatch=<value-matching regex>
// option.0.editStep.0.match=<part-matching regex>
// option.0.editStep.0.replaceWith=<new value part>
// option.0.editStep.1.match=<part-matching regex>
// option.0.editStep.1.replaceWith=<new value part>
// ... (editSteps 0 ... N)
// option.0.editStep.N.match=<part-matching regex>
// option.0.editStep.N.replaceWith=<new value part>
// option.1.key=<key>
// option.1.operation=<EDIT or REMOVE or EDITORADD>
// option.1.addValue=<value part to use when adding if key not found>
// option.1.valueMatch=<value-matching regex>
// option.1.editStep.0.match=<part-matching regex>
// option.1.editStep.0.replaceWith=<new value part>
// option.1.editStep.1.match=<part-matching regex>
// option.1.editStep.1.replaceWith=<new value part>
// ... (editSteps 0 ... N)
// option.1.editStep.N.match=<part-matching regex>
// option.1.editStep.N.replaceWith=<new value part>
// ... (options 0 ... M)
// option.M.key=<key>
// option.M.operation=<EDIT or REMOVE or EDITORADD>
// option.M.valueMatch=<value-matching regex>
// option.M.addValue=<value part to use when adding if key not found>
// option.M.editStep.0.match=<part-matching regex>
// option.M.editStep.0.replaceWith=<new value part>
// option.M.editStep.1.match=<part-matching regex>
// option.M.editStep.1.replaceWith=<new value part>
// ... (editSteps 0 ... N)
// option.M.editStep.N.match=<part-matching regex>
// option.M.editStep.N.replaceWith=<new value part>
//
// NOTE: make sure you properly escape property file special characters -
//       especially backslashes in regular expression
//
//////////////////////////////////////////////////////////////////////////////

// set the maximum memory size to 128m
option.0.key=-Xmx
option.0.operation=EDITORADD
option.0.addValue=128m
option.0.valueMatch=\\A[0-9]+[km]?\\z
option.0.editStep.0.match=\\A.*\\z
option.0.editStep.0.replaceWith=128m
option.1.key=-Dsun.java2d.ddoffscreen\=
option.1.operation=EDITORADD
option.1.addValue=false
option.1.valueMatch=false|true
option.1.editStep.0.match=true
option.1.editStep.0.replaceWith=false
