xref: /aosp_15_r20/tools/asuite/aidegen/templates.py (revision c2e18aaa1096c836b086f94603d04f4eb9cf37f5)
1*c2e18aaaSAndroid Build Coastguard Worker#!/usr/bin/env python3
2*c2e18aaaSAndroid Build Coastguard Worker#
3*c2e18aaaSAndroid Build Coastguard Worker# Copyright 2020 - The Android Open Source Project
4*c2e18aaaSAndroid Build Coastguard Worker#
5*c2e18aaaSAndroid Build Coastguard Worker# Licensed under the Apache License, Version 2.0 (the "License");
6*c2e18aaaSAndroid Build Coastguard Worker# you may not use this file except in compliance with the License.
7*c2e18aaaSAndroid Build Coastguard Worker# You may obtain a copy of the License at
8*c2e18aaaSAndroid Build Coastguard Worker#
9*c2e18aaaSAndroid Build Coastguard Worker#     http://www.apache.org/licenses/LICENSE-2.0
10*c2e18aaaSAndroid Build Coastguard Worker#
11*c2e18aaaSAndroid Build Coastguard Worker# Unless required by applicable law or agreed to in writing, software
12*c2e18aaaSAndroid Build Coastguard Worker# distributed under the License is distributed on an "AS IS" BASIS,
13*c2e18aaaSAndroid Build Coastguard Worker# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14*c2e18aaaSAndroid Build Coastguard Worker# See the License for the specific language governing permissions and
15*c2e18aaaSAndroid Build Coastguard Worker# limitations under the License.
16*c2e18aaaSAndroid Build Coastguard Worker"""The iml/xml templates of AIDEgen."""
17*c2e18aaaSAndroid Build Coastguard Worker
18*c2e18aaaSAndroid Build Coastguard Worker
19*c2e18aaaSAndroid Build Coastguard Worker
20*c2e18aaaSAndroid Build Coastguard Worker# Content of iml file.
21*c2e18aaaSAndroid Build Coastguard WorkerFILE_IML = """\
22*c2e18aaaSAndroid Build Coastguard Worker<?xml version="1.0" encoding="UTF-8"?>
23*c2e18aaaSAndroid Build Coastguard Worker<module type="JAVA_MODULE" version="4">
24*c2e18aaaSAndroid Build Coastguard Worker@FACETS@
25*c2e18aaaSAndroid Build Coastguard Worker    <component name="NewModuleRootManager" inherit-compiler-output="true">
26*c2e18aaaSAndroid Build Coastguard Worker        <exclude-output />
27*c2e18aaaSAndroid Build Coastguard Worker@SOURCES@
28*c2e18aaaSAndroid Build Coastguard Worker@SRCJAR@
29*c2e18aaaSAndroid Build Coastguard Worker        <orderEntry type="sourceFolder" forTests="false" />
30*c2e18aaaSAndroid Build Coastguard Worker@MODULE_DEPENDENCIES@
31*c2e18aaaSAndroid Build Coastguard Worker        <orderEntry type="inheritedJdk" />
32*c2e18aaaSAndroid Build Coastguard Worker    </component>
33*c2e18aaaSAndroid Build Coastguard Worker</module>
34*c2e18aaaSAndroid Build Coastguard Worker"""
35*c2e18aaaSAndroid Build Coastguard Worker# TODO(b/153704028): Refactor to create iml file.
36*c2e18aaaSAndroid Build Coastguard WorkerIML = """\
37*c2e18aaaSAndroid Build Coastguard Worker<?xml version="1.0" encoding="UTF-8"?>
38*c2e18aaaSAndroid Build Coastguard Worker<module type="JAVA_MODULE" version="4">{FACET}
39*c2e18aaaSAndroid Build Coastguard Worker    <component name="NewModuleRootManager" inherit-compiler-output="true">
40*c2e18aaaSAndroid Build Coastguard Worker        <exclude-output />{SOURCES}
41*c2e18aaaSAndroid Build Coastguard Worker        <orderEntry type="sourceFolder" forTests="false" />{SRCJARS}{DEPENDENCIES}{JARS}
42*c2e18aaaSAndroid Build Coastguard Worker        <orderEntry type="inheritedJdk" />
43*c2e18aaaSAndroid Build Coastguard Worker    </component>
44*c2e18aaaSAndroid Build Coastguard Worker</module>
45*c2e18aaaSAndroid Build Coastguard Worker"""
46*c2e18aaaSAndroid Build Coastguard WorkerFACET = """
47*c2e18aaaSAndroid Build Coastguard Worker    <facet type="android" name="Android">
48*c2e18aaaSAndroid Build Coastguard Worker        <configuration />
49*c2e18aaaSAndroid Build Coastguard Worker    </facet>"""
50*c2e18aaaSAndroid Build Coastguard WorkerCONTENT = """
51*c2e18aaaSAndroid Build Coastguard Worker        <content url="file://{MODULE_PATH}">{EXCLUDES}{SOURCES}
52*c2e18aaaSAndroid Build Coastguard Worker        </content>"""
53*c2e18aaaSAndroid Build Coastguard WorkerSOURCE = """
54*c2e18aaaSAndroid Build Coastguard Worker            <sourceFolder url="file://{SRC}" isTestSource="{IS_TEST}" />"""
55*c2e18aaaSAndroid Build Coastguard WorkerOTHER_SOURCE = """
56*c2e18aaaSAndroid Build Coastguard Worker        <content url="file://{SRC}">
57*c2e18aaaSAndroid Build Coastguard Worker            <sourceFolder url="file://{SRC}" isTestSource="{IS_TEST}" />
58*c2e18aaaSAndroid Build Coastguard Worker        </content>"""
59*c2e18aaaSAndroid Build Coastguard WorkerSRCJAR = """
60*c2e18aaaSAndroid Build Coastguard Worker        <content url="jar://{SRCJAR}!/">
61*c2e18aaaSAndroid Build Coastguard Worker            <sourceFolder url="jar://{SRCJAR}!/" isTestSource="False" />
62*c2e18aaaSAndroid Build Coastguard Worker        </content>"""
63*c2e18aaaSAndroid Build Coastguard WorkerJAR = """
64*c2e18aaaSAndroid Build Coastguard Worker        <orderEntry type="module-library" exported="">
65*c2e18aaaSAndroid Build Coastguard Worker          <library>
66*c2e18aaaSAndroid Build Coastguard Worker            <CLASSES>
67*c2e18aaaSAndroid Build Coastguard Worker              <root url="jar://{JAR}!/" />
68*c2e18aaaSAndroid Build Coastguard Worker            </CLASSES>
69*c2e18aaaSAndroid Build Coastguard Worker            <JAVADOC />
70*c2e18aaaSAndroid Build Coastguard Worker            <SOURCES />
71*c2e18aaaSAndroid Build Coastguard Worker          </library>
72*c2e18aaaSAndroid Build Coastguard Worker        </orderEntry>"""
73*c2e18aaaSAndroid Build Coastguard WorkerDEPENDENCIES = """
74*c2e18aaaSAndroid Build Coastguard Worker        <orderEntry type="module" module-name="{MODULE}" />"""
75*c2e18aaaSAndroid Build Coastguard Worker
76*c2e18aaaSAndroid Build Coastguard Worker# The template content of modules.xml.
77*c2e18aaaSAndroid Build Coastguard WorkerXML_MODULES = """\
78*c2e18aaaSAndroid Build Coastguard Worker<?xml version="1.0" encoding="UTF-8"?>
79*c2e18aaaSAndroid Build Coastguard Worker<project version="4">
80*c2e18aaaSAndroid Build Coastguard Worker    <component name="ProjectModuleManager">
81*c2e18aaaSAndroid Build Coastguard Worker        <modules>
82*c2e18aaaSAndroid Build Coastguard Worker@MODULES@
83*c2e18aaaSAndroid Build Coastguard Worker@ENABLE_DEBUGGER_MODULE@
84*c2e18aaaSAndroid Build Coastguard Worker        </modules>
85*c2e18aaaSAndroid Build Coastguard Worker    </component>
86*c2e18aaaSAndroid Build Coastguard Worker</project>
87*c2e18aaaSAndroid Build Coastguard Worker"""
88*c2e18aaaSAndroid Build Coastguard Worker
89*c2e18aaaSAndroid Build Coastguard Worker# The template content of vcs.xml.
90*c2e18aaaSAndroid Build Coastguard WorkerXML_VCS = """\
91*c2e18aaaSAndroid Build Coastguard Worker<?xml version="1.0" encoding="UTF-8"?>
92*c2e18aaaSAndroid Build Coastguard Worker<project version="4">
93*c2e18aaaSAndroid Build Coastguard Worker    <component name="VcsDirectoryMappings">
94*c2e18aaaSAndroid Build Coastguard Worker{GIT_MAPPINGS}
95*c2e18aaaSAndroid Build Coastguard Worker    </component>
96*c2e18aaaSAndroid Build Coastguard Worker</project>
97*c2e18aaaSAndroid Build Coastguard Worker"""
98*c2e18aaaSAndroid Build Coastguard Worker
99*c2e18aaaSAndroid Build Coastguard Worker# The template content of misc.xml
100*c2e18aaaSAndroid Build Coastguard WorkerXML_MISC = """\
101*c2e18aaaSAndroid Build Coastguard Worker<?xml version="1.0" encoding="UTF-8"?>
102*c2e18aaaSAndroid Build Coastguard Worker<project version="4">
103*c2e18aaaSAndroid Build Coastguard Worker    <component name="ConfigCheckProjectState">
104*c2e18aaaSAndroid Build Coastguard Worker        <option name="disabledCheckers">
105*c2e18aaaSAndroid Build Coastguard Worker            <list>
106*c2e18aaaSAndroid Build Coastguard Worker                <option value="com.google.devtools.intellig.configcheck.JavacHeapChecker"/>
107*c2e18aaaSAndroid Build Coastguard Worker                <option value="com.google.devtools.intellig.configcheck.VcsMappingsChecker"/>
108*c2e18aaaSAndroid Build Coastguard Worker            </list>
109*c2e18aaaSAndroid Build Coastguard Worker        </option>
110*c2e18aaaSAndroid Build Coastguard Worker    </component>
111*c2e18aaaSAndroid Build Coastguard Worker    <component name="FrameworkDetectionExcludesConfiguration">
112*c2e18aaaSAndroid Build Coastguard Worker        <type id="android" />
113*c2e18aaaSAndroid Build Coastguard Worker    </component>
114*c2e18aaaSAndroid Build Coastguard Worker    <component name="ContinuousBuildConfigurationComponent">
115*c2e18aaaSAndroid Build Coastguard Worker        <builds>
116*c2e18aaaSAndroid Build Coastguard Worker            <build intervalToCheckBuild="1" buildKey="" buildLabel=""
117*c2e18aaaSAndroid Build Coastguard Worker                   enabled="false" tapBuild="false"/>
118*c2e18aaaSAndroid Build Coastguard Worker        </builds>
119*c2e18aaaSAndroid Build Coastguard Worker    </component>
120*c2e18aaaSAndroid Build Coastguard Worker    <component name="DependencyValidationManager">
121*c2e18aaaSAndroid Build Coastguard Worker        <option name="SKIP_IMPORT_STATEMENTS" value="false"/>
122*c2e18aaaSAndroid Build Coastguard Worker    </component>
123*c2e18aaaSAndroid Build Coastguard Worker    <component name="EntryPointsManager">
124*c2e18aaaSAndroid Build Coastguard Worker        <entry_points version="2.0"/>
125*c2e18aaaSAndroid Build Coastguard Worker    </component>
126*c2e18aaaSAndroid Build Coastguard Worker    <component name="JavadocGenerationManager">
127*c2e18aaaSAndroid Build Coastguard Worker        <option name="HEAP_SIZE"/>
128*c2e18aaaSAndroid Build Coastguard Worker        <option name="LOCALE"/>
129*c2e18aaaSAndroid Build Coastguard Worker        <option name="OPEN_IN_BROWSER" value="true"/>
130*c2e18aaaSAndroid Build Coastguard Worker        <option name="OPTION_DEPRECATED_LIST" value="true"/>
131*c2e18aaaSAndroid Build Coastguard Worker        <option name="OPTION_DOCUMENT_TAG_AUTHOR" value="false"/>
132*c2e18aaaSAndroid Build Coastguard Worker        <option name="OPTION_DOCUMENT_TAG_DEPRECATED" value="true"/>
133*c2e18aaaSAndroid Build Coastguard Worker        <option name="OPTION_DOCUMENT_TAG_USE" value="false"/>
134*c2e18aaaSAndroid Build Coastguard Worker        <option name="OPTION_DOCUMENT_TAG_VERSION" value="false"/>
135*c2e18aaaSAndroid Build Coastguard Worker        <option name="OPTION_HIERARCHY" value="true"/>
136*c2e18aaaSAndroid Build Coastguard Worker        <option name="OPTION_INDEX" value="true"/>
137*c2e18aaaSAndroid Build Coastguard Worker        <option name="OPTION_NAVIGATOR" value="true"/>
138*c2e18aaaSAndroid Build Coastguard Worker        <option name="OPTION_SCOPE" value="protected"/>
139*c2e18aaaSAndroid Build Coastguard Worker        <option name="OPTION_SEPARATE_INDEX" value="true"/>
140*c2e18aaaSAndroid Build Coastguard Worker        <option name="OTHER_OPTIONS" value=""/>
141*c2e18aaaSAndroid Build Coastguard Worker        <option name="OUTPUT_DIRECTORY"/>
142*c2e18aaaSAndroid Build Coastguard Worker    </component>
143*c2e18aaaSAndroid Build Coastguard Worker    <component name="Mach LOCAL_PREFIX stripper" stripping="true"/>
144*c2e18aaaSAndroid Build Coastguard Worker    <component name="ProjectResources">
145*c2e18aaaSAndroid Build Coastguard Worker        <default-html-doctype>http://www.w3.org/1999/xhtml
146*c2e18aaaSAndroid Build Coastguard Worker        </default-html-doctype>
147*c2e18aaaSAndroid Build Coastguard Worker    </component>
148*c2e18aaaSAndroid Build Coastguard Worker    <component name="ProjectRootManager" version="2" languageLevel="JDK_17"
149*c2e18aaaSAndroid Build Coastguard Worker               assert-keyword="true" project-jdk-name="JDK21"
150*c2e18aaaSAndroid Build Coastguard Worker               project-jdk-type="JavaSDK"/>
151*c2e18aaaSAndroid Build Coastguard Worker    <component name="WebServicesPlugin" addRequiredLibraries="true"/>
152*c2e18aaaSAndroid Build Coastguard Worker</project>
153*c2e18aaaSAndroid Build Coastguard Worker"""
154*c2e18aaaSAndroid Build Coastguard Worker
155*c2e18aaaSAndroid Build Coastguard Worker# The template content of compiler.xml
156*c2e18aaaSAndroid Build Coastguard WorkerXML_COMPILER = """\
157*c2e18aaaSAndroid Build Coastguard Worker<?xml version="1.0" encoding="UTF-8"?>
158*c2e18aaaSAndroid Build Coastguard Worker<project version="4">
159*c2e18aaaSAndroid Build Coastguard Worker    <component name="CompilerConfiguration">
160*c2e18aaaSAndroid Build Coastguard Worker        <option name="DEFAULT_COMPILER" value="Javac"/>
161*c2e18aaaSAndroid Build Coastguard Worker        <resourceExtensions/>
162*c2e18aaaSAndroid Build Coastguard Worker        <wildcardResourcePatterns>
163*c2e18aaaSAndroid Build Coastguard Worker            <entry name="?*.dtd"/>
164*c2e18aaaSAndroid Build Coastguard Worker            <entry name="?*.ftl"/>
165*c2e18aaaSAndroid Build Coastguard Worker            <entry name="?*.gif"/>
166*c2e18aaaSAndroid Build Coastguard Worker            <entry name="?*.html"/>
167*c2e18aaaSAndroid Build Coastguard Worker            <entry name="?*.jpeg"/>
168*c2e18aaaSAndroid Build Coastguard Worker            <entry name="?*.jpg"/>
169*c2e18aaaSAndroid Build Coastguard Worker            <entry name="?*.png"/>
170*c2e18aaaSAndroid Build Coastguard Worker            <entry name="?*.properties"/>
171*c2e18aaaSAndroid Build Coastguard Worker            <entry name="?*.tld"/>
172*c2e18aaaSAndroid Build Coastguard Worker            <entry name="?*.xml"/>
173*c2e18aaaSAndroid Build Coastguard Worker        </wildcardResourcePatterns>
174*c2e18aaaSAndroid Build Coastguard Worker        <annotationProcessing enabled="false" useClasspath="true"/>
175*c2e18aaaSAndroid Build Coastguard Worker    </component>
176*c2e18aaaSAndroid Build Coastguard Worker    <component name="JavacSettings">
177*c2e18aaaSAndroid Build Coastguard Worker        <option name="MAXIMUM_HEAP_SIZE" value="1024"/>
178*c2e18aaaSAndroid Build Coastguard Worker    </component>
179*c2e18aaaSAndroid Build Coastguard Worker</project>
180*c2e18aaaSAndroid Build Coastguard Worker"""
181*c2e18aaaSAndroid Build Coastguard Worker
182*c2e18aaaSAndroid Build Coastguard Worker# The template content of codeStyleConfig.xml
183*c2e18aaaSAndroid Build Coastguard WorkerXML_CODE_STYLE_CONFIG = """\
184*c2e18aaaSAndroid Build Coastguard Worker<component name="ProjectCodeStyleConfiguration">
185*c2e18aaaSAndroid Build Coastguard Worker  <state>
186*c2e18aaaSAndroid Build Coastguard Worker    <option name="USE_PER_PROJECT_SETTINGS" value="true" />
187*c2e18aaaSAndroid Build Coastguard Worker  </state>
188*c2e18aaaSAndroid Build Coastguard Worker</component>
189*c2e18aaaSAndroid Build Coastguard Worker"""
190*c2e18aaaSAndroid Build Coastguard Worker
191*c2e18aaaSAndroid Build Coastguard Worker# The template content of Apache_2.xml
192*c2e18aaaSAndroid Build Coastguard WorkerXML_APACHE_2 = """\
193*c2e18aaaSAndroid Build Coastguard Worker<component name="CopyrightManager">
194*c2e18aaaSAndroid Build Coastguard Worker    <copyright>
195*c2e18aaaSAndroid Build Coastguard Worker        <option name="notice"
196*c2e18aaaSAndroid Build Coastguard Worker                value="Copyright (C) &amp;#36;today.year The Android Open Source Project&#10;&#10;Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);&#10;you may not use this file except in compliance with the License.&#10;You may obtain a copy of the License at&#10;&#10;     http://www.apache.org/licenses/LICENSE-2.0&#10;&#10;Unless required by applicable law or agreed to in writing, software&#10;distributed under the License is distributed on an &quot;AS IS&quot; BASIS,&#10;WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.&#10;See the License for the specific language governing permissions and&#10;limitations under the License."/>
197*c2e18aaaSAndroid Build Coastguard Worker        <option name="keyword" value="Copyright"/>
198*c2e18aaaSAndroid Build Coastguard Worker        <option name="allowReplaceKeyword" value=""/>
199*c2e18aaaSAndroid Build Coastguard Worker        <option name="myName" value="Apache 2"/>
200*c2e18aaaSAndroid Build Coastguard Worker        <option name="myLocal" value="true"/>
201*c2e18aaaSAndroid Build Coastguard Worker    </copyright>
202*c2e18aaaSAndroid Build Coastguard Worker</component>
203*c2e18aaaSAndroid Build Coastguard Worker"""
204*c2e18aaaSAndroid Build Coastguard Worker
205*c2e18aaaSAndroid Build Coastguard Worker# The template content of copyright/profiles_settings.xml
206*c2e18aaaSAndroid Build Coastguard WorkerXML_COPYRIGHT_PROFILES_SETTINGS = """\
207*c2e18aaaSAndroid Build Coastguard Worker<component name="CopyrightManager">
208*c2e18aaaSAndroid Build Coastguard Worker    <settings default="">
209*c2e18aaaSAndroid Build Coastguard Worker        <module2copyright>
210*c2e18aaaSAndroid Build Coastguard Worker            <element module="Project Files" copyright="Apache 2"/>
211*c2e18aaaSAndroid Build Coastguard Worker        </module2copyright>
212*c2e18aaaSAndroid Build Coastguard Worker    </settings>
213*c2e18aaaSAndroid Build Coastguard Worker</component>
214*c2e18aaaSAndroid Build Coastguard Worker"""
215*c2e18aaaSAndroid Build Coastguard Worker
216*c2e18aaaSAndroid Build Coastguard Worker# The template content of inspectionProfiles/profiles_settings.xml
217*c2e18aaaSAndroid Build Coastguard WorkerXML_INSPECTION_PROFILES_SETTINGS = """\
218*c2e18aaaSAndroid Build Coastguard Worker<component name="InspectionProjectProfileManager">
219*c2e18aaaSAndroid Build Coastguard Worker  <settings>
220*c2e18aaaSAndroid Build Coastguard Worker    <option name="PROJECT_PROFILE" value="Aidegen_Inspections" />
221*c2e18aaaSAndroid Build Coastguard Worker    <version value="1.0" />
222*c2e18aaaSAndroid Build Coastguard Worker  </settings>
223*c2e18aaaSAndroid Build Coastguard Worker</component>
224*c2e18aaaSAndroid Build Coastguard Worker"""
225*c2e18aaaSAndroid Build Coastguard Worker
226*c2e18aaaSAndroid Build Coastguard Worker# The template content of inspectionProfiles/Aidegen_Inspections.xml
227*c2e18aaaSAndroid Build Coastguard Worker# N.b. this minimal configuration leaves most of the options unspecified,
228*c2e18aaaSAndroid Build Coastguard Worker# which means that they will be filled with default values set by Jetbrains.
229*c2e18aaaSAndroid Build Coastguard WorkerXML_INSPECTIONS = """\
230*c2e18aaaSAndroid Build Coastguard Worker<component name="InspectionProjectProfileManager">
231*c2e18aaaSAndroid Build Coastguard Worker  <profile version="1.0">
232*c2e18aaaSAndroid Build Coastguard Worker    <option name="myName" value="Aidegen_Inspections" />
233*c2e18aaaSAndroid Build Coastguard Worker    <inspection_tool class="JavaDoc" enabled="true" level="WARNING" enabled_by_default="true">
234*c2e18aaaSAndroid Build Coastguard Worker      <option name="myAdditionalJavadocTags" value="hide,attr" />
235*c2e18aaaSAndroid Build Coastguard Worker    </inspection_tool>
236*c2e18aaaSAndroid Build Coastguard Worker    <inspection_tool class="MissortedModifiers" enabled="true" level="WARNING" enabled_by_default="true">
237*c2e18aaaSAndroid Build Coastguard Worker      <option name="m_requireAnnotationsFirst" value="true" />
238*c2e18aaaSAndroid Build Coastguard Worker    </inspection_tool>
239*c2e18aaaSAndroid Build Coastguard Worker  </profile>
240*c2e18aaaSAndroid Build Coastguard Worker</component>
241*c2e18aaaSAndroid Build Coastguard Worker"""
242*c2e18aaaSAndroid Build Coastguard Worker
243*c2e18aaaSAndroid Build Coastguard Worker# The configuration of JDK on Linux.
244*c2e18aaaSAndroid Build Coastguard WorkerLINUX_JDK_XML = """\
245*c2e18aaaSAndroid Build Coastguard Worker    <jdk version="2">
246*c2e18aaaSAndroid Build Coastguard Worker      <name value="JDK21" />
247*c2e18aaaSAndroid Build Coastguard Worker      <type value="JavaSDK" />
248*c2e18aaaSAndroid Build Coastguard Worker      <version value="java version &quot;17.0.4&quot;" />
249*c2e18aaaSAndroid Build Coastguard Worker      <homePath value="{JDKpath}" />
250*c2e18aaaSAndroid Build Coastguard Worker      <roots>
251*c2e18aaaSAndroid Build Coastguard Worker        <annotationsPath>
252*c2e18aaaSAndroid Build Coastguard Worker          <root type="composite">
253*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://$APPLICATION_HOME_DIR$/plugins/java/lib/jdkAnnotations.jar!/" type="simple" />
254*c2e18aaaSAndroid Build Coastguard Worker          </root>
255*c2e18aaaSAndroid Build Coastguard Worker        </annotationsPath>
256*c2e18aaaSAndroid Build Coastguard Worker        <classPath>
257*c2e18aaaSAndroid Build Coastguard Worker          <root type="composite">
258*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/java.base" type="simple" />
259*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/java.compiler" type="simple" />
260*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/java.datatransfer" type="simple" />
261*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/java.desktop" type="simple" />
262*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/java.instrument" type="simple" />
263*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/java.logging" type="simple" />
264*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/java.management" type="simple" />
265*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/java.management.rmi" type="simple" />
266*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/java.naming" type="simple" />
267*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/java.net.http" type="simple" />
268*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/java.prefs" type="simple" />
269*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/java.rmi" type="simple" />
270*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/java.scripting" type="simple" />
271*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/java.se" type="simple" />
272*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/java.security.jgss" type="simple" />
273*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/java.security.sasl" type="simple" />
274*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/java.smartcardio" type="simple" />
275*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/java.sql" type="simple" />
276*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/java.sql.rowset" type="simple" />
277*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/java.transaction.xa" type="simple" />
278*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/java.xml" type="simple" />
279*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/java.xml.crypto" type="simple" />
280*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.accessibility" type="simple" />
281*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.attach" type="simple" />
282*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.charsets" type="simple" />
283*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.compiler" type="simple" />
284*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.crypto.cryptoki" type="simple" />
285*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.crypto.ec" type="simple" />
286*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.dynalink" type="simple" />
287*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.editpad" type="simple" />
288*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.hotspot.agent" type="simple" />
289*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.httpserver" type="simple" />
290*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.incubator.foreign" type="simple" />
291*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.incubator.vector" type="simple" />
292*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.internal.ed" type="simple" />
293*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.internal.jvmstat" type="simple" />
294*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.internal.le" type="simple" />
295*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.internal.opt" type="simple" />
296*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.internal.vm.ci" type="simple" />
297*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.internal.vm.compiler" type="simple" />
298*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.internal.vm.compiler.management" type="simple" />
299*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.jartool" type="simple" />
300*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.javadoc" type="simple" />
301*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.jcmd" type="simple" />
302*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.jconsole" type="simple" />
303*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.jdeps" type="simple" />
304*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.jdi" type="simple" />
305*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.jdwp.agent" type="simple" />
306*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.jfr" type="simple" />
307*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.jlink" type="simple" />
308*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.jpackage" type="simple" />
309*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.jshell" type="simple" />
310*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.jsobject" type="simple" />
311*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.jstatd" type="simple" />
312*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.localedata" type="simple" />
313*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.management" type="simple" />
314*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.management.agent" type="simple" />
315*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.management.jfr" type="simple" />
316*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.naming.dns" type="simple" />
317*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.naming.rmi" type="simple" />
318*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.net" type="simple" />
319*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.nio.mapmode" type="simple" />
320*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.random" type="simple" />
321*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.sctp" type="simple" />
322*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.security.auth" type="simple" />
323*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.security.jgss" type="simple" />
324*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.unsupported" type="simple" />
325*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.unsupported.desktop" type="simple" />
326*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.xml.dom" type="simple" />
327*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.zipfs" type="simple" />
328*c2e18aaaSAndroid Build Coastguard Worker          </root>
329*c2e18aaaSAndroid Build Coastguard Worker        </classPath>
330*c2e18aaaSAndroid Build Coastguard Worker        <javadocPath>
331*c2e18aaaSAndroid Build Coastguard Worker          <root type="composite" />
332*c2e18aaaSAndroid Build Coastguard Worker        </javadocPath>
333*c2e18aaaSAndroid Build Coastguard Worker        <sourcePath>
334*c2e18aaaSAndroid Build Coastguard Worker          <root type="composite">
335*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/java.se" type="simple" />
336*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.jdi" type="simple" />
337*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.jfr" type="simple" />
338*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.net" type="simple" />
339*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/java.rmi" type="simple" />
340*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/java.sql" type="simple" />
341*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/java.xml" type="simple" />
342*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.jcmd" type="simple" />
343*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.sctp" type="simple" />
344*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/java.base" type="simple" />
345*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.jdeps" type="simple" />
346*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.jlink" type="simple" />
347*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.zipfs" type="simple" />
348*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/java.prefs" type="simple" />
349*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.attach" type="simple" />
350*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.jshell" type="simple" />
351*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.jstatd" type="simple" />
352*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.random" type="simple" />
353*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/java.naming" type="simple" />
354*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.editpad" type="simple" />
355*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.jartool" type="simple" />
356*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.javadoc" type="simple" />
357*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.xml.dom" type="simple" />
358*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/java.desktop" type="simple" />
359*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/java.logging" type="simple" />
360*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.charsets" type="simple" />
361*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.compiler" type="simple" />
362*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.dynalink" type="simple" />
363*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.jconsole" type="simple" />
364*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.jpackage" type="simple" />
365*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.jsobject" type="simple" />
366*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/java.compiler" type="simple" />
367*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/java.net.http" type="simple" />
368*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.crypto.ec" type="simple" />
369*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/java.scripting" type="simple" />
370*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.httpserver" type="simple" />
371*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.jdwp.agent" type="simple" />
372*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.localedata" type="simple" />
373*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.management" type="simple" />
374*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.naming.dns" type="simple" />
375*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.naming.rmi" type="simple" />
376*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/java.instrument" type="simple" />
377*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/java.management" type="simple" />
378*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/java.sql.rowset" type="simple" />
379*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/java.xml.crypto" type="simple" />
380*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.internal.ed" type="simple" />
381*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.internal.le" type="simple" />
382*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.nio.mapmode" type="simple" />
383*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.unsupported" type="simple" />
384*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/java.smartcardio" type="simple" />
385*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.internal.opt" type="simple" />
386*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/java.datatransfer" type="simple" />
387*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.accessibility" type="simple" />
388*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.hotspot.agent" type="simple" />
389*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.security.auth" type="simple" />
390*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.security.jgss" type="simple" />
391*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/java.security.jgss" type="simple" />
392*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/java.security.sasl" type="simple" />
393*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.internal.vm.ci" type="simple" />
394*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.management.jfr" type="simple" />
395*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/java.management.rmi" type="simple" />
396*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/java.transaction.xa" type="simple" />
397*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.crypto.cryptoki" type="simple" />
398*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.incubator.vector" type="simple" />
399*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.internal.jvmstat" type="simple" />
400*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.management.agent" type="simple" />
401*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.incubator.foreign" type="simple" />
402*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.unsupported.desktop" type="simple" />
403*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.internal.vm.compiler" type="simple" />
404*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.internal.vm.compiler.management" type="simple" />
405*c2e18aaaSAndroid Build Coastguard Worker          </root>
406*c2e18aaaSAndroid Build Coastguard Worker        </sourcePath>
407*c2e18aaaSAndroid Build Coastguard Worker      </roots>
408*c2e18aaaSAndroid Build Coastguard Worker      <additional />
409*c2e18aaaSAndroid Build Coastguard Worker    </jdk>
410*c2e18aaaSAndroid Build Coastguard Worker"""
411*c2e18aaaSAndroid Build Coastguard Worker
412*c2e18aaaSAndroid Build Coastguard Worker# The configuration of JDK on Mac.
413*c2e18aaaSAndroid Build Coastguard WorkerMAC_JDK_XML = """\
414*c2e18aaaSAndroid Build Coastguard Worker    <jdk version="2">
415*c2e18aaaSAndroid Build Coastguard Worker      <name value="JDK21" />
416*c2e18aaaSAndroid Build Coastguard Worker      <type value="JavaSDK" />
417*c2e18aaaSAndroid Build Coastguard Worker      <version value="java version &quot;17.0.4&quot;" />
418*c2e18aaaSAndroid Build Coastguard Worker      <homePath value="{JDKpath}" />
419*c2e18aaaSAndroid Build Coastguard Worker      <roots>
420*c2e18aaaSAndroid Build Coastguard Worker        <annotationsPath>
421*c2e18aaaSAndroid Build Coastguard Worker          <root type="composite">
422*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://$APPLICATION_HOME_DIR$/plugins/java/lib/jdkAnnotations.jar!/" type="simple" />
423*c2e18aaaSAndroid Build Coastguard Worker          </root>
424*c2e18aaaSAndroid Build Coastguard Worker        </annotationsPath>
425*c2e18aaaSAndroid Build Coastguard Worker        <classPath>
426*c2e18aaaSAndroid Build Coastguard Worker          <root type="composite">
427*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/java.base" type="simple" />
428*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/java.compiler" type="simple" />
429*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/java.datatransfer" type="simple" />
430*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/java.desktop" type="simple" />
431*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/java.instrument" type="simple" />
432*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/java.logging" type="simple" />
433*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/java.management" type="simple" />
434*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/java.management.rmi" type="simple" />
435*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/java.naming" type="simple" />
436*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/java.net.http" type="simple" />
437*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/java.prefs" type="simple" />
438*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/java.rmi" type="simple" />
439*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/java.scripting" type="simple" />
440*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/java.se" type="simple" />
441*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/java.security.jgss" type="simple" />
442*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/java.security.sasl" type="simple" />
443*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/java.smartcardio" type="simple" />
444*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/java.sql" type="simple" />
445*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/java.sql.rowset" type="simple" />
446*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/java.transaction.xa" type="simple" />
447*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/java.xml" type="simple" />
448*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/java.xml.crypto" type="simple" />
449*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.accessibility" type="simple" />
450*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.attach" type="simple" />
451*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.charsets" type="simple" />
452*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.compiler" type="simple" />
453*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.crypto.cryptoki" type="simple" />
454*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.crypto.ec" type="simple" />
455*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.dynalink" type="simple" />
456*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.editpad" type="simple" />
457*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.hotspot.agent" type="simple" />
458*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.httpserver" type="simple" />
459*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.incubator.foreign" type="simple" />
460*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.incubator.vector" type="simple" />
461*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.internal.ed" type="simple" />
462*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.internal.jvmstat" type="simple" />
463*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.internal.le" type="simple" />
464*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.internal.opt" type="simple" />
465*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.internal.vm.ci" type="simple" />
466*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.internal.vm.compiler" type="simple" />
467*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.internal.vm.compiler.management" type="simple" />
468*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.jartool" type="simple" />
469*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.javadoc" type="simple" />
470*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.jcmd" type="simple" />
471*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.jconsole" type="simple" />
472*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.jdeps" type="simple" />
473*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.jdi" type="simple" />
474*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.jdwp.agent" type="simple" />
475*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.jfr" type="simple" />
476*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.jlink" type="simple" />
477*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.jpackage" type="simple" />
478*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.jshell" type="simple" />
479*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.jsobject" type="simple" />
480*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.jstatd" type="simple" />
481*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.localedata" type="simple" />
482*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.management" type="simple" />
483*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.management.agent" type="simple" />
484*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.management.jfr" type="simple" />
485*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.naming.dns" type="simple" />
486*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.naming.rmi" type="simple" />
487*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.net" type="simple" />
488*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.nio.mapmode" type="simple" />
489*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.random" type="simple" />
490*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.sctp" type="simple" />
491*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.security.auth" type="simple" />
492*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.security.jgss" type="simple" />
493*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.unsupported" type="simple" />
494*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.unsupported.desktop" type="simple" />
495*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.xml.dom" type="simple" />
496*c2e18aaaSAndroid Build Coastguard Worker            <root url="jrt://{JDKpath}!/jdk.zipfs" type="simple" />
497*c2e18aaaSAndroid Build Coastguard Worker          </root>
498*c2e18aaaSAndroid Build Coastguard Worker        </classPath>
499*c2e18aaaSAndroid Build Coastguard Worker        <javadocPath>
500*c2e18aaaSAndroid Build Coastguard Worker          <root type="composite" />
501*c2e18aaaSAndroid Build Coastguard Worker        </javadocPath>
502*c2e18aaaSAndroid Build Coastguard Worker        <sourcePath>
503*c2e18aaaSAndroid Build Coastguard Worker          <root type="composite">
504*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/java.se" type="simple" />
505*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.jdi" type="simple" />
506*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.jfr" type="simple" />
507*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.net" type="simple" />
508*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/java.rmi" type="simple" />
509*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/java.sql" type="simple" />
510*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/java.xml" type="simple" />
511*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.jcmd" type="simple" />
512*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.sctp" type="simple" />
513*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/java.base" type="simple" />
514*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.jdeps" type="simple" />
515*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.jlink" type="simple" />
516*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.zipfs" type="simple" />
517*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/java.prefs" type="simple" />
518*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.attach" type="simple" />
519*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.jshell" type="simple" />
520*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.jstatd" type="simple" />
521*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.random" type="simple" />
522*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/java.naming" type="simple" />
523*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.editpad" type="simple" />
524*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.jartool" type="simple" />
525*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.javadoc" type="simple" />
526*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.xml.dom" type="simple" />
527*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/java.desktop" type="simple" />
528*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/java.logging" type="simple" />
529*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.charsets" type="simple" />
530*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.compiler" type="simple" />
531*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.dynalink" type="simple" />
532*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.jconsole" type="simple" />
533*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.jpackage" type="simple" />
534*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.jsobject" type="simple" />
535*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/java.compiler" type="simple" />
536*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/java.net.http" type="simple" />
537*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.crypto.ec" type="simple" />
538*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/java.scripting" type="simple" />
539*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.httpserver" type="simple" />
540*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.jdwp.agent" type="simple" />
541*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.localedata" type="simple" />
542*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.management" type="simple" />
543*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.naming.dns" type="simple" />
544*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.naming.rmi" type="simple" />
545*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/java.instrument" type="simple" />
546*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/java.management" type="simple" />
547*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/java.sql.rowset" type="simple" />
548*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/java.xml.crypto" type="simple" />
549*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.internal.ed" type="simple" />
550*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.internal.le" type="simple" />
551*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.nio.mapmode" type="simple" />
552*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.unsupported" type="simple" />
553*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/java.smartcardio" type="simple" />
554*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.internal.opt" type="simple" />
555*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/java.datatransfer" type="simple" />
556*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.accessibility" type="simple" />
557*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.hotspot.agent" type="simple" />
558*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.security.auth" type="simple" />
559*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.security.jgss" type="simple" />
560*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/java.security.jgss" type="simple" />
561*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/java.security.sasl" type="simple" />
562*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.internal.vm.ci" type="simple" />
563*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.management.jfr" type="simple" />
564*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/java.management.rmi" type="simple" />
565*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/java.transaction.xa" type="simple" />
566*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.crypto.cryptoki" type="simple" />
567*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.incubator.vector" type="simple" />
568*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.internal.jvmstat" type="simple" />
569*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.management.agent" type="simple" />
570*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.incubator.foreign" type="simple" />
571*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.unsupported.desktop" type="simple" />
572*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.internal.vm.compiler" type="simple" />
573*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{JDKpath}/lib/src.zip!/jdk.internal.vm.compiler.management" type="simple" />
574*c2e18aaaSAndroid Build Coastguard Worker          </root>
575*c2e18aaaSAndroid Build Coastguard Worker        </sourcePath>
576*c2e18aaaSAndroid Build Coastguard Worker      </roots>
577*c2e18aaaSAndroid Build Coastguard Worker      <additional />
578*c2e18aaaSAndroid Build Coastguard Worker    </jdk>
579*c2e18aaaSAndroid Build Coastguard Worker"""
580*c2e18aaaSAndroid Build Coastguard Worker
581*c2e18aaaSAndroid Build Coastguard Worker# The file's header of CLion project file.
582*c2e18aaaSAndroid Build Coastguard WorkerCMAKELISTS_HEADER = """\
583*c2e18aaaSAndroid Build Coastguard Worker# THIS FILE WAS AUTOMATICALLY GENERATED!
584*c2e18aaaSAndroid Build Coastguard Worker# ANY MODIFICATION WILL BE OVERWRITTEN!
585*c2e18aaaSAndroid Build Coastguard Worker
586*c2e18aaaSAndroid Build Coastguard Worker# To improve project view in Clion    :
587*c2e18aaaSAndroid Build Coastguard Worker# Tools > CMake > Change Project Root
588*c2e18aaaSAndroid Build Coastguard Worker
589*c2e18aaaSAndroid Build Coastguard Workercmake_minimum_required(VERSION @MINVERSION@)
590*c2e18aaaSAndroid Build Coastguard Workerproject(@PROJNAME@)
591*c2e18aaaSAndroid Build Coastguard Workerset(ANDROID_ROOT @ANDROIDROOT@)
592*c2e18aaaSAndroid Build Coastguard Worker"""
593*c2e18aaaSAndroid Build Coastguard Worker
594*c2e18aaaSAndroid Build Coastguard Worker# The configuration of Android SDK.
595*c2e18aaaSAndroid Build Coastguard WorkerANDROID_SDK_XML = """\
596*c2e18aaaSAndroid Build Coastguard Worker    <jdk version="2">
597*c2e18aaaSAndroid Build Coastguard Worker      <name value="Android API {CODE_NAME} Platform" />
598*c2e18aaaSAndroid Build Coastguard Worker      <type value="Android SDK" />
599*c2e18aaaSAndroid Build Coastguard Worker      <version value="java version &quot;17.0.4&quot;" />
600*c2e18aaaSAndroid Build Coastguard Worker      <homePath value="{ANDROID_SDK_PATH}" />
601*c2e18aaaSAndroid Build Coastguard Worker      <roots>
602*c2e18aaaSAndroid Build Coastguard Worker        <annotationsPath>
603*c2e18aaaSAndroid Build Coastguard Worker          <root type="composite" >
604*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{ANDROID_SDK_PATH}/platforms/{FOLDER_NAME}/data/annotations.zip!/" type="simple" />
605*c2e18aaaSAndroid Build Coastguard Worker          </root>
606*c2e18aaaSAndroid Build Coastguard Worker        </annotationsPath>
607*c2e18aaaSAndroid Build Coastguard Worker        <classPath>
608*c2e18aaaSAndroid Build Coastguard Worker          <root type="composite">
609*c2e18aaaSAndroid Build Coastguard Worker            <root url="jar://{ANDROID_SDK_PATH}/platforms/{FOLDER_NAME}/android.jar!/" type="simple" />
610*c2e18aaaSAndroid Build Coastguard Worker            <root url="file://{ANDROID_SDK_PATH}/platforms/{FOLDER_NAME}/data/res" type="simple" />
611*c2e18aaaSAndroid Build Coastguard Worker          </root>
612*c2e18aaaSAndroid Build Coastguard Worker        </classPath>
613*c2e18aaaSAndroid Build Coastguard Worker        <javadocPath>
614*c2e18aaaSAndroid Build Coastguard Worker          <root type="composite" >
615*c2e18aaaSAndroid Build Coastguard Worker            <root url="http://developer.android.com/reference/" type="simple" />
616*c2e18aaaSAndroid Build Coastguard Worker          </root>
617*c2e18aaaSAndroid Build Coastguard Worker        </javadocPath>
618*c2e18aaaSAndroid Build Coastguard Worker        <sourcePath>
619*c2e18aaaSAndroid Build Coastguard Worker          <root type="composite" />
620*c2e18aaaSAndroid Build Coastguard Worker        </sourcePath>
621*c2e18aaaSAndroid Build Coastguard Worker      </roots>
622*c2e18aaaSAndroid Build Coastguard Worker      <additional jdk="JDK21" sdk="android-{CODE_NAME}" />
623*c2e18aaaSAndroid Build Coastguard Worker    </jdk>
624*c2e18aaaSAndroid Build Coastguard Worker"""
625*c2e18aaaSAndroid Build Coastguard Worker
626*c2e18aaaSAndroid Build Coastguard Worker# The configuration of TEST_MAPPING in jsonSchemas.xml.
627*c2e18aaaSAndroid Build Coastguard WorkerTEST_MAPPING_SCHEMAS_XML = """\
628*c2e18aaaSAndroid Build Coastguard Worker<?xml version="1.0" encoding="UTF-8"?>
629*c2e18aaaSAndroid Build Coastguard Worker<project version="4">
630*c2e18aaaSAndroid Build Coastguard Worker  <component name="JsonSchemaMappingsProjectConfiguration">
631*c2e18aaaSAndroid Build Coastguard Worker    <state>
632*c2e18aaaSAndroid Build Coastguard Worker      <map>
633*c2e18aaaSAndroid Build Coastguard Worker        <entry key="TEST_MAPPING.config">
634*c2e18aaaSAndroid Build Coastguard Worker          <value>
635*c2e18aaaSAndroid Build Coastguard Worker            <SchemaInfo>
636*c2e18aaaSAndroid Build Coastguard Worker              <option name="name" value="TEST_MAPPING.config" />
637*c2e18aaaSAndroid Build Coastguard Worker              <option name="relativePathToSchema" value="{SCHEMA_PATH}" />
638*c2e18aaaSAndroid Build Coastguard Worker              <option name="schemaVersion" value="JSON schema version 7" />
639*c2e18aaaSAndroid Build Coastguard Worker              <option name="patterns">
640*c2e18aaaSAndroid Build Coastguard Worker                <list>
641*c2e18aaaSAndroid Build Coastguard Worker                  <Item>
642*c2e18aaaSAndroid Build Coastguard Worker                    <option name="path" value="TEST_MAPPING" />
643*c2e18aaaSAndroid Build Coastguard Worker                  </Item>
644*c2e18aaaSAndroid Build Coastguard Worker                </list>
645*c2e18aaaSAndroid Build Coastguard Worker              </option>
646*c2e18aaaSAndroid Build Coastguard Worker            </SchemaInfo>
647*c2e18aaaSAndroid Build Coastguard Worker          </value>
648*c2e18aaaSAndroid Build Coastguard Worker        </entry>
649*c2e18aaaSAndroid Build Coastguard Worker      </map>
650*c2e18aaaSAndroid Build Coastguard Worker    </state>
651*c2e18aaaSAndroid Build Coastguard Worker  </component>
652*c2e18aaaSAndroid Build Coastguard Worker</project>
653*c2e18aaaSAndroid Build Coastguard Worker"""
654*c2e18aaaSAndroid Build Coastguard Worker
655*c2e18aaaSAndroid Build Coastguard Worker# The xml templates for Eclipse.
656*c2e18aaaSAndroid Build Coastguard Worker# .classpath template
657*c2e18aaaSAndroid Build Coastguard WorkerECLIPSE_CLASSPATH_XML = """<\
658*c2e18aaaSAndroid Build Coastguard Worker?xml version="1.0" encoding="UTF-8"?>
659*c2e18aaaSAndroid Build Coastguard Worker<classpath>
660*c2e18aaaSAndroid Build Coastguard Worker{SRC}
661*c2e18aaaSAndroid Build Coastguard Worker{LIB}
662*c2e18aaaSAndroid Build Coastguard Worker</classpath>
663*c2e18aaaSAndroid Build Coastguard Worker"""
664*c2e18aaaSAndroid Build Coastguard Worker
665*c2e18aaaSAndroid Build Coastguard Worker# .project template
666*c2e18aaaSAndroid Build Coastguard WorkerECLIPSE_PROJECT_XML = """\
667*c2e18aaaSAndroid Build Coastguard Worker<?xml version="1.0" encoding="UTF-8"?>
668*c2e18aaaSAndroid Build Coastguard Worker<projectDescription>
669*c2e18aaaSAndroid Build Coastguard Worker        <name>{PROJECTNAME}</name>
670*c2e18aaaSAndroid Build Coastguard Worker        <comment></comment>
671*c2e18aaaSAndroid Build Coastguard Worker        <projects>
672*c2e18aaaSAndroid Build Coastguard Worker        </projects>
673*c2e18aaaSAndroid Build Coastguard Worker        <buildSpec>
674*c2e18aaaSAndroid Build Coastguard Worker                <buildCommand>
675*c2e18aaaSAndroid Build Coastguard Worker                        <name>org.eclipse.jdt.core.javabuilder</name>
676*c2e18aaaSAndroid Build Coastguard Worker                        <arguments>
677*c2e18aaaSAndroid Build Coastguard Worker                        </arguments>
678*c2e18aaaSAndroid Build Coastguard Worker                </buildCommand>
679*c2e18aaaSAndroid Build Coastguard Worker        </buildSpec>
680*c2e18aaaSAndroid Build Coastguard Worker        <natures>
681*c2e18aaaSAndroid Build Coastguard Worker                <nature>org.eclipse.jdt.core.javanature</nature>
682*c2e18aaaSAndroid Build Coastguard Worker        </natures>
683*c2e18aaaSAndroid Build Coastguard Worker        <linkedResources>
684*c2e18aaaSAndroid Build Coastguard Worker{LINKEDRESOURCES}
685*c2e18aaaSAndroid Build Coastguard Worker        </linkedResources>
686*c2e18aaaSAndroid Build Coastguard Worker</projectDescription>
687*c2e18aaaSAndroid Build Coastguard Worker"""
688*c2e18aaaSAndroid Build Coastguard Worker
689*c2e18aaaSAndroid Build Coastguard Worker# The template of default AndroidManifest.xml.
690*c2e18aaaSAndroid Build Coastguard WorkerANDROID_MANIFEST_CONTENT = """\
691*c2e18aaaSAndroid Build Coastguard Worker<?xml version="1.0" encoding="utf-8"?>
692*c2e18aaaSAndroid Build Coastguard Worker<manifest xmlns:android="http://schemas.android.com/apk/res/android"
693*c2e18aaaSAndroid Build Coastguard Worker          android:versionCode="1"
694*c2e18aaaSAndroid Build Coastguard Worker          android:versionName="1.0" >
695*c2e18aaaSAndroid Build Coastguard Worker</manifest>
696*c2e18aaaSAndroid Build Coastguard Worker"""
697*c2e18aaaSAndroid Build Coastguard Worker
698*c2e18aaaSAndroid Build Coastguard Worker# The xml template for enabling debugger.
699*c2e18aaaSAndroid Build Coastguard WorkerXML_ENABLE_DEBUGGER = """\
700*c2e18aaaSAndroid Build Coastguard Worker<?xml version="1.0" encoding="UTF-8"?>
701*c2e18aaaSAndroid Build Coastguard Worker<module type="JAVA_MODULE" version="4">
702*c2e18aaaSAndroid Build Coastguard Worker  <component name="FacetManager">
703*c2e18aaaSAndroid Build Coastguard Worker    <facet type="android" name="Android">
704*c2e18aaaSAndroid Build Coastguard Worker      <configuration />
705*c2e18aaaSAndroid Build Coastguard Worker    </facet>
706*c2e18aaaSAndroid Build Coastguard Worker  </component>
707*c2e18aaaSAndroid Build Coastguard Worker  <component name="NewModuleRootManager" inherit-compiler-output="true">
708*c2e18aaaSAndroid Build Coastguard Worker    <exclude-output />
709*c2e18aaaSAndroid Build Coastguard Worker    <content url="file://$MODULE_DIR$">
710*c2e18aaaSAndroid Build Coastguard Worker      <sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
711*c2e18aaaSAndroid Build Coastguard Worker      <sourceFolder url="file://$MODULE_DIR$/gen" isTestSource="false" generated="true" />
712*c2e18aaaSAndroid Build Coastguard Worker    </content>
713*c2e18aaaSAndroid Build Coastguard Worker    <orderEntry type="jdk" jdkName="{ANDROID_SDK_VERSION}" jdkType="Android SDK" />
714*c2e18aaaSAndroid Build Coastguard Worker    <orderEntry type="sourceFolder" forTests="false" />
715*c2e18aaaSAndroid Build Coastguard Worker  </component>
716*c2e18aaaSAndroid Build Coastguard Worker</module>
717*c2e18aaaSAndroid Build Coastguard Worker"""
718*c2e18aaaSAndroid Build Coastguard Worker
719*c2e18aaaSAndroid Build Coastguard Worker# The default empty template of the jdk.table.xml.
720*c2e18aaaSAndroid Build Coastguard WorkerJDK_TABLE_XML = """\
721*c2e18aaaSAndroid Build Coastguard Worker<application>
722*c2e18aaaSAndroid Build Coastguard Worker  <component name="ProjectJdkTable">
723*c2e18aaaSAndroid Build Coastguard Worker  </component>
724*c2e18aaaSAndroid Build Coastguard Worker</application>
725*c2e18aaaSAndroid Build Coastguard Worker"""
726*c2e18aaaSAndroid Build Coastguard Worker
727*c2e18aaaSAndroid Build Coastguard WorkerXML_WORKSPACE = """\
728*c2e18aaaSAndroid Build Coastguard Worker<?xml version="1.0" encoding="UTF-8"?>
729*c2e18aaaSAndroid Build Coastguard Worker<project version="4">
730*c2e18aaaSAndroid Build Coastguard Worker    <component name="VcsManagerConfiguration">
731*c2e18aaaSAndroid Build Coastguard Worker        <ignored-roots>
732*c2e18aaaSAndroid Build Coastguard Worker{GITS}
733*c2e18aaaSAndroid Build Coastguard Worker        </ignored-roots>
734*c2e18aaaSAndroid Build Coastguard Worker    </component>
735*c2e18aaaSAndroid Build Coastguard Worker</project>
736*c2e18aaaSAndroid Build Coastguard Worker"""
737*c2e18aaaSAndroid Build Coastguard Worker
738*c2e18aaaSAndroid Build Coastguard WorkerIGNORED_GITS = """\
739*c2e18aaaSAndroid Build Coastguard Worker<component name="VcsManagerConfiguration">
740*c2e18aaaSAndroid Build Coastguard Worker    <ignored-roots>{GITS}</ignored-roots>
741*c2e18aaaSAndroid Build Coastguard Worker  </component>
742*c2e18aaaSAndroid Build Coastguard Worker"""
743