RFR: 8249867: xml declaration is not followed by a newline [v2]
Roger Riggs
rriggs at openjdk.java.net
Wed Jan 27 15:52:44 UTC 2021
On Wed, 27 Jan 2021 06:33:01 GMT, Joe Wang <joehw at openjdk.org> wrote:
>> Please review a patch to add an explicit control over whether a newline should be added after the XML header. This is done by adding a DOM LSSerializer property "jdk-is-standalone" and System property "jdk.xml.isStandalone".
>>
>> This change addresses an incompatibility introduced during 7u4 as an update to Xalan 2.7.1.
>
> Joe Wang has updated the pull request incrementally with one additional commit since the last revision:
>
> Update: add javadoc for impl specific features and properties in module-info; update the patch accordingly.
src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/dom3/LSSerializerImpl.java line 639:
> 637: if (state) {
> 638: fDOMConfigProperties.setProperty(DOMConstants.S_JDK_PROPERTIES_NS
> 639: + DOMConstants.S_IS_STANDALONE, "yes");
Multiple concatenations of the same strings, seems awkward at best and perhaps a maintenance burden.
Would it make sense to declare them as static strings?
Though in this case, it could be a single call to setProperty with the value being `(state ? "yes" : "no")`
src/java.xml/share/classes/module-info.java line 58:
> 56: * The prefix for System Properties:
> 57: * <pre>
> 58: * {@systemProperty jdk.xml.}
The use of {@systemProperty...} seems inappropriate, it should be used to refer to specific properties. (IMHO)
src/java.xml/share/classes/module-info.java line 64:
> 62: * A name may consist of one or multiple words that are case-sensitive.
> 63: * All letters of the first word shall be in lowercase, while the first letter of
> 64: * each subsequent word capitalized.
capitalized -> "is capitalized"
src/java.xml/share/classes/module-info.java line 91:
> 89: * <h3 id="ScopeAndOrder">Scope and Order</h3>
> 90: * The {@link javax.xml.XMLConstants#FEATURE_SECURE_PROCESSING} feature
> 91: * (hereafter referred to as FSP) is required for XML processors including DOM,
I think it would be more readable to use "secure processing" instead of "FSP".
I.e. when secure processing is set..., etc.
src/java.xml/share/classes/module-info.java line 103:
> 101: * <p>
> 102: * Properties specified in the jaxp.properties file affect all invocations of
> 103: * the JDK and JRE, and will override their default values, or those that may
We've phased out the "JRE", so it can be dropped here.
src/java.xml/share/classes/module-info.java line 107:
> 105: * <p>
> 106: * System properties, when set, affect the invocation of the JDK and JRE, and
> 107: * override the default settings or that set in jaxp.properties, or those that
"that set" -> 'that are set"
-------------
PR: https://git.openjdk.java.net/jdk/pull/2041
More information about the core-libs-dev
mailing list