| <?xml version="1.0" encoding="UTF-8"?> |
| |
| <!-- |
| Licensed to the Apache Software Foundation (ASF) under one |
| or more contributor license agreements. See the NOTICE file |
| distributed with this work for additional information |
| regarding copyright ownership. The ASF licenses this file |
| to you under the Apache License, Version 2.0 (the |
| "License"); you may not use this file except in compliance |
| with the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, |
| software distributed under the License is distributed on an |
| "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| KIND, either express or implied. See the License for the |
| specific language governing permissions and limitations |
| under the License. |
| |
| --> |
| |
| <model xmlns="http://codehaus-plexus.github.io/MODELLO/1.4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" |
| xsi:schemaLocation="http://codehaus-plexus.github.io/MODELLO/1.4.0 http://codehaus-plexus.github.io/modello/xsd/modello-1.4.0.xsd" |
| xml.namespace="http://maven.apache.org/EXTENSIONS/${version}" |
| xml.schemaLocation="http://maven.apache.org/xsd/core-extensions-${version}.xsd"> |
| |
| <id>core-extensions</id> |
| <name>CoreExtensions</name> |
| <description><![CDATA[ |
| <p>This is a reference for the Core Extensions descriptor.</p> |
| <p>The default location for the Core Extensions descriptor file is <code>${maven.projectBasedir}/.mvn/extensions.xml</code></p> |
| ]]></description> |
| |
| <defaults> |
| <default> |
| <key>package</key> |
| <value>org.apache.maven.cli.internal.extension.model</value> |
| </default> |
| </defaults> |
| |
| <classes> |
| <class rootElement="true" xml.tagName="extensions" xsd.compositor="sequence"> |
| <name>CoreExtensions</name> |
| <description>Extensions to load.</description> |
| <version>1.0.0+</version> |
| <fields> |
| <field> |
| <name>extensions</name> |
| <description>A set of build extensions to use from this project.</description> |
| <version>1.0.0+</version> |
| <association xml.itemsStyle="flat"> |
| <type>CoreExtension</type> |
| <multiplicity>*</multiplicity> |
| </association> |
| </field> |
| </fields> |
| </class> |
| <class xml.tagName="extension"> |
| <name>CoreExtension</name> |
| <description>Describes a build extension to utilise.</description> |
| <version>1.0.0+</version> |
| <fields> |
| <field> |
| <name>groupId</name> |
| <description>The group ID of the extension's artifact.</description> |
| <version>1.0.0+</version> |
| <required>true</required> |
| <type>String</type> |
| </field> |
| <field> |
| <name>artifactId</name> |
| <description>The artifact ID of the extension.</description> |
| <version>1.0.0+</version> |
| <required>true</required> |
| <type>String</type> |
| </field> |
| <field> |
| <name>version</name> |
| <description>The version of the extension.</description> |
| <version>1.0.0+</version> |
| <required>true</required> |
| <type>String</type> |
| </field> |
| </fields> |
| <codeSegments> |
| <codeSegment> |
| <version>1.0.0+</version> |
| <code> |
| <![CDATA[ |
| /** |
| * Gets the identifier of the extension. |
| * |
| * @return The extension id in the form {@code <groupId>:<artifactId>:<version>}, never {@code null}. |
| */ |
| public String getId() |
| { |
| StringBuilder id = new StringBuilder( 128 ); |
| |
| id.append( ( getGroupId() == null ) ? "[unknown-group-id]" : getGroupId() ); |
| id.append( ":" ); |
| id.append( ( getArtifactId() == null ) ? "[unknown-artifact-id]" : getArtifactId() ); |
| id.append( ":" ); |
| id.append( ( getVersion() == null ) ? "[unknown-version]" : getVersion() ); |
| |
| return id.toString(); |
| } |
| ]]> |
| </code> |
| </codeSegment> |
| </codeSegments> |
| </class> |
| </classes> |
| </model> |