diff options
Diffstat (limited to 'netx/net/sourceforge/jnlp/ParserSettings.java')
-rw-r--r-- | netx/net/sourceforge/jnlp/ParserSettings.java | 35 |
1 files changed, 34 insertions, 1 deletions
diff --git a/netx/net/sourceforge/jnlp/ParserSettings.java b/netx/net/sourceforge/jnlp/ParserSettings.java index de781d9..b698bd4 100644 --- a/netx/net/sourceforge/jnlp/ParserSettings.java +++ b/netx/net/sourceforge/jnlp/ParserSettings.java @@ -37,6 +37,9 @@ exception statement from your version. package net.sourceforge.jnlp; +import java.util.Arrays; +import java.util.List; + /** * Contains settings to be used by the Parser while parsing JNLP files. * @@ -44,6 +47,8 @@ package net.sourceforge.jnlp; */ public class ParserSettings { + private static ParserSettings globalParserSettings = new ParserSettings(); + private final boolean isStrict; private final boolean extensionAllowed; private final boolean malformedXmlAllowed; @@ -75,4 +80,32 @@ public class ParserSettings { return isStrict; } -}
\ No newline at end of file + /** + * Return the global parser settings in use. + */ + public static ParserSettings getGlobalParserSettings() { + return globalParserSettings; + } + + /** + * Set the global ParserSettings to match the given settings. + */ + public static void setGlobalParserSettings(ParserSettings parserSettings) { + globalParserSettings = parserSettings; + } + + /** + * Return the ParserSettings to be used according to arguments specified + * at boot on the command line. These settings are also stored so they + * can be retrieved at a later time. + */ + public static ParserSettings setGlobalParserSettingsFromArgs(String[] cmdArgs) { + List<String> argList = Arrays.asList(cmdArgs); + boolean strict = argList.contains("-strict"); + boolean malformedXmlAllowed = !argList.contains("-xml"); + + globalParserSettings = new ParserSettings(strict, true, malformedXmlAllowed); + return globalParserSettings; + } + +} |