blob: 7ce3fef0ce1a0640e063a32b0dab776c908a99ae [file] [log] [blame]
<?xml version="1.0" encoding="ISO-8859-1"?>
<!--
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="https://codehaus-plexus.github.io/MODELLO/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="https://codehaus-plexus.github.io/MODELLO/1.0.0 https://codehaus-plexus.github.io/modello/xsd/modello-1.0.0.xsd"
xsd.namespace="http://maven.apache.org/changes/1.0.0"
xsd.targetNamespace="http://maven.apache.org/changes/1.0.0">
<id>changes</id>
<name>Changes</name>
<description>
A recording of changes made during each release of a project. This
file should record every changes made to the project.
</description>
<defaults>
<default>
<key>package</key>
<value>org.apache.maven.plugins.changes.model</value>
</default>
</defaults>
<classes>
<class rootElement="true" xml.tagName="document">
<name>ChangesDocument</name>
<description>
Record every release with their subsequent changes.
</description>
<version>1.0.0</version>
<fields>
<field>
<name>properties</name>
<version>1.0.0</version>
<association>
<type>Properties</type>
<multiplicity>1</multiplicity>
</association>
<description>
Contains the properties of this document.
</description>
</field>
<field>
<name>body</name>
<version>1.0.0</version>
<required>true</required>
<association>
<type>Body</type>
</association>
<description>
Contains the releases of this project with the actions taken
for each of the releases.
</description>
</field>
</fields>
</class>
<class>
<name>Properties</name>
<version>1.0.0</version>
<fields>
<field>
<name>title</name>
<version>1.0.0</version>
<required>true</required>
<type>String</type>
<description>The page title.</description>
</field>
<field>
<name>author</name>
<version>1.0.0</version>
<description>The page author.</description>
<association>
<type>Author</type>
<multiplicity>1</multiplicity>
</association>
</field>
</fields>
</class>
<class xsd.compositor="sequence">
<name>Body</name>
<version>1.0.0</version>
<fields>
<field>
<name>releases</name>
<version>1.0.0</version>
<association xml.itemsStyle="flat">
<type>Release</type>
<multiplicity>*</multiplicity>
</association>
<description>The list of releases for this project.</description>
</field>
</fields>
</class>
<class xsd.compositor="sequence">
<name>Release</name>
<version>1.0.0</version>
<description>A single release of this project.</description>
<fields>
<field xml.attribute="true">
<name>version</name>
<version>1.0.0</version>
<required>true</required>
<type>String</type>
<description>
The version number associated with this release.
</description>
</field>
<field xml.attribute="true" xml.tagName="date">
<name>dateRelease</name>
<version>1.0.0</version>
<required>true</required>
<type>String</type>
<description>
<![CDATA[
The date of this release.
<p>This field can be any string, such as "in SVN" when the version isn't yet released but the ISO 8601 date format is recommended.</p>
]]>
</description>
</field>
<field xml.attribute="true">
<name>description</name>
<version>1.0.0</version>
<type>String</type>
<description>
A short description of this release.
</description>
</field>
<field>
<name>actions</name>
<version>1.0.0</version>
<association xml.itemsStyle="flat">
<type>Action</type>
<multiplicity>*</multiplicity>
</association>
<description>The list of actions taken for this release.</description>
</field>
</fields>
<codeSegments>
<codeSegment>
<version>1.0.0</version>
<code><![CDATA[
public java.util.List<Action> getActions(String type)
{
java.util.List<Action> actions = new java.util.ArrayList<Action>();
for (Action action : getActions())
{
if ( action.getType() != null && action.getType().equalsIgnoreCase( type ) )
{
actions.add( action );
}
}
return actions;
}
]]></code>
</codeSegment>
<codeSegment>
<version>1.0.0</version>
<code><![CDATA[
private final java.util.List<Component> components = new java.util.ArrayList<Component>();
public void addComponent(String name, Release release)
{
final Component component = new Component();
component.setName(name);
component.setDescription(release.getDescription());
component.setActions(release.getActions());
components.add(component);
}
public java.util.List<Component> getComponents()
{
return components;
}
]]></code>
</codeSegment>
</codeSegments>
</class>
<class>
<name>Author</name>
<version>1.0.0</version>
<description>
A description of the author page.
</description>
<fields>
<field>
<name>name</name>
<version>1.0.0</version>
<type>Content</type>
<description>
The page author name.
</description>
</field>
<field xml.attribute="true" xml.tagName="email">
<name>authorEmail</name>
<version>1.0.0</version>
<type>String</type>
<description>
The page author email.
</description>
</field>
</fields>
</class>
<class>
<name>Component</name>
<version>1.0.0</version>
<description>
A component as a part of current release.
</description>
<fields>
<field>
<name>name</name>
<version>1.0.0</version>
<type>String</type>
<description>
The component name.
</description>
</field>
<field>
<name>description</name>
<version>1.0.0</version>
<type>String</type>
<description>
The component description.
</description>
</field>
<field>
<name>actions</name>
<version>1.0.0</version>
<association>
<type>Action</type>
<multiplicity>*</multiplicity>
</association>
<description>The list of actions for this component.</description>
</field>
</fields>
</class>
<class xsd.compositor="sequence">
<name>Action</name>
<version>1.0.0</version>
<description>
A single action done on the project, during this release.
</description>
<fields>
<field>
<name>action</name>
<version>1.0.0</version>
<type>Content</type>
<description>
A short description of the action taken.
</description>
</field>
<field xml.attribute="true">
<name>dev</name>
<version>1.0.0</version>
<required>true</required>
<type>String</type>
<description>
<![CDATA[
Name of developer who committed the change.
<p>This can be either the id of the developer, as specified in the developers section of the pom.xml file, or the name of the developer. If you generate a changes report and specify the id of the developer, a link is created to that developer in the team.html page.</p>
]]>
</description>
</field>
<field xml.attribute="true" xml.tagName="due-to">
<name>dueTo</name>
<version>1.0.0</version>
<type>String</type>
<description>
Name of the person to be credited for this change. This can be used when a patch is submitted by a non-committer.
</description>
</field>
<field xml.attribute="true" xml.tagName="due-to-email">
<name>dueToEmail</name>
<version>1.0.0</version>
<type>String</type>
<description>
Email of the person to be credited for this change.
</description>
</field>
<field xml.attribute="true">
<name>issue</name>
<version>1.0.0</version>
<required>true</required>
<type>String</type>
<description>
<![CDATA[
Id of the issue related to this change. This is the id in your issue tracking system.
<p>The Changes plugin will generate a URL out of this id. The URL is constructed using the value of the issueLinkTemplate parameter.</p>
<p>See the <a href="changes-report.html">changes-report mojo</a> for more details.</p>
]]>
</description>
</field>
<field xml.attribute="true">
<name>type</name>
<version>1.0.0</version>
<required>true</required>
<type>String</type>
<description>
<![CDATA[
Supported action types are the following:
<ul>
<li>add: added functionnality to the project.</li>
<li>fix: bug fix for the project.</li>
<li>update: updated some part of the project.</li>
<li>remove: removed some functionnality from the project.</li>
</ul>
]]>
</description>
</field>
<field xml.attribute="true">
<name>system</name>
<version>1.0.0</version>
<type>String</type>
<description>
<![CDATA[
Id of issue tracking system. If empty 'default' value will be used.
<p>The Changes plugin will generate a URL out of this id. The URL is constructed using the value of the issueLinkTemplatePerSystem parameter.</p>
<p>See the <a href="changes-report.html">changes-report mojo</a> for more details.</p>
]]>
</description>
</field>
<field xml.attribute="true">
<name>date</name>
<version>1.0.0</version>
<type>String</type>
<description>fix date</description>
</field>
<field>
<name>fixedIssues</name>
<version>1.0.0</version>
<association xml.itemsStyle="flat" xml.tagName="fixes">
<type>FixedIssue</type>
<multiplicity>*</multiplicity>
</association>
<description>A list of fix issues.</description>
</field>
<field>
<name>dueTos</name>
<version>1.0.0</version>
<association xml.itemsStyle="flat" xml.tagName="dueto">
<type>DueTo</type>
<multiplicity>*</multiplicity>
</association>
<description>A list of contributors for this issue.</description>
</field>
</fields>
<codeSegments>
<codeSegment>
<version>1.0.9+</version>
<code><![CDATA[
public static final String ADD_ACTION = "add";
public static final String FIX_ACTION = "fix";
public static final String UPDATE_ACTION = "update";
public static final String REMOVE_ACTION = "remove";
]]></code>
</codeSegment>
</codeSegments>
</class>
<class xsd.compositor="sequence">
<name>DueTo</name>
<version>1.0.0</version>
<description>
Name and email of the person to be credited for this change. This can be used when a patch is submitted by a non-committer.
</description>
<fields>
<field xml.attribute="true">
<name>name</name>
<version>1.0.0</version>
<type>String</type>
<description>Name of the person to be credited for this change.</description>
</field>
<field xml.attribute="true">
<name>email</name>
<version>1.0.0</version>
<type>String</type>
<description>Email of the person to be credited for this change.</description>
</field>
</fields>
</class>
<class xsd.compositor="sequence">
<name>FixedIssue</name>
<version>1.0.0</version>
<description>
A fixed issue.
</description>
<fields>
<field xml.attribute="true">
<name>issue</name>
<version>1.0.0</version>
<type>String</type>
<description>
<![CDATA[
Id of the issue related to this change. This is the id in your issue tracking system.
<p>The Changes plugin will generate a URL out of this id. The URL is constructed using the value of the issueLinkTemplate parameter.</p>
<p>See the <a href="changes-report.html">changes-report mojo</a> for more details.</p>
]]>
</description>
</field>
</fields>
</class>
</classes>
</model>