2005-09-13 07:41:52 -04:00
|
|
|
<?xml version="1.0"?>
|
|
|
|
|
2005-03-08 01:06:22 -05:00
|
|
|
<model>
|
2005-03-16 01:29:35 -05:00
|
|
|
<id>settings</id>
|
|
|
|
<name>Settings</name>
|
2005-03-10 20:52:18 -05:00
|
|
|
<description><![CDATA[
|
|
|
|
User-specific configuration for maven. Includes things that should not
|
|
|
|
be distributed with the pom.xml file, such as developer identity, along with
|
|
|
|
local settings, like proxy information.]]></description>
|
2005-03-08 01:06:22 -05:00
|
|
|
<defaults>
|
|
|
|
<default>
|
|
|
|
<key>package</key>
|
2005-05-31 17:48:55 -04:00
|
|
|
<value>org.apache.maven.settings</value>
|
2005-03-08 01:06:22 -05:00
|
|
|
</default>
|
|
|
|
</defaults>
|
|
|
|
<classes>
|
2005-06-14 23:01:48 -04:00
|
|
|
<class>
|
|
|
|
<name>TrackableBase</name>
|
|
|
|
<version>1.0.0</version>
|
2005-09-21 04:53:46 -04:00
|
|
|
<description>common base class that contains code to track the source for this instance
|
|
|
|
(USER|GLOBAL)</description>
|
2005-06-14 23:01:48 -04:00
|
|
|
<codeSegments>
|
|
|
|
<codeSegment>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<code><![CDATA[
|
|
|
|
public static final String USER_LEVEL = "user-level";
|
|
|
|
public static final String GLOBAL_LEVEL = "global-level";
|
|
|
|
|
|
|
|
private String sourceLevel = USER_LEVEL;
|
|
|
|
private boolean sourceLevelSet = false;
|
|
|
|
|
|
|
|
public void setSourceLevel( String sourceLevel )
|
|
|
|
{
|
|
|
|
if ( sourceLevelSet )
|
|
|
|
{
|
|
|
|
throw new IllegalStateException( "Cannot reset sourceLevel attribute; it is already set to: " + sourceLevel );
|
|
|
|
}
|
|
|
|
else if ( !( USER_LEVEL.equals( sourceLevel ) || GLOBAL_LEVEL.equals( sourceLevel ) ) )
|
|
|
|
{
|
|
|
|
throw new IllegalArgumentException( "sourceLevel must be one of: {" + USER_LEVEL + "," + GLOBAL_LEVEL + "}" );
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
this.sourceLevel = sourceLevel;
|
|
|
|
this.sourceLevelSet = true;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
public String getSourceLevel()
|
|
|
|
{
|
|
|
|
return sourceLevel;
|
|
|
|
}
|
|
|
|
]]></code>
|
|
|
|
</codeSegment>
|
|
|
|
</codeSegments>
|
|
|
|
</class>
|
|
|
|
<class>
|
|
|
|
<name>IdentifiableBase</name>
|
|
|
|
<superClass>TrackableBase</superClass>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<fields>
|
|
|
|
<field>
|
|
|
|
<name>id</name>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<type>String</type>
|
|
|
|
<default>default</default>
|
|
|
|
<required>true</required>
|
|
|
|
</field>
|
|
|
|
</fields>
|
|
|
|
</class>
|
2005-03-16 01:29:35 -05:00
|
|
|
<class rootElement="true" xml.tagName="settings">
|
|
|
|
<name>Settings</name>
|
2005-03-09 17:13:07 -05:00
|
|
|
<version>1.0.0</version>
|
2005-06-14 23:01:48 -04:00
|
|
|
<superClass>TrackableBase</superClass>
|
2005-03-10 20:52:18 -05:00
|
|
|
<description>Root element of the user configuration file.</description>
|
2005-03-08 01:06:22 -05:00
|
|
|
<fields>
|
2005-05-31 12:24:34 -04:00
|
|
|
<field>
|
|
|
|
<name>localRepository</name>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<required>true</required>
|
|
|
|
<description><![CDATA[The local repository.]]></description>
|
|
|
|
<type>String</type>
|
|
|
|
</field>
|
Working on issue: MNG-379
Added specified stop-gap patch for issue: MNG-473 (affects settings-builder and registry-builder)
Today I've made the following progress on this so far:
- Added a new project, called maven-plugin-registry, to house the model for this new file.
- Developed/debugged/tested PluginVersionManager/DefaultPluginVersionManager to isolate the plugin-version checks/management code away from the PluginManager
- Added interactiveMode (<interactiveMode>true|false</interactiveMode> directly under the root element of settings.xml, or -B short CLI option or --batch-mode CLI option, where the CLI options turn OFF interactiveMode). This will allow things like the maven-plugins build to register new plugins (and, for now, new versions of plugins) automatically.
- Added user input handler for when interactiveMode = true, to get a yes/no on whether to use the discovered version over the installed version and/or no version at all. If there is no installed version, and the user selects 'n', then the discovered version is used FOR THAT SESSION ONLY, and won't be recorded in the registry.
- Added checks/recording rejected versions against the registry, before attempting to use the discovered version.
Pending:
- Still need to add update-policies, to determine two things:
1. how often to check for updates
2. what to do when updates are found (autoUpdate, etc.)
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@190854 13f79535-47bb-0310-9956-ffa450edef68
2005-06-15 21:50:28 -04:00
|
|
|
<field>
|
|
|
|
<name>interactiveMode</name>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<description><![CDATA[Whether Maven should attempt to interact with the user for input.]]></description>
|
|
|
|
<type>boolean</type>
|
|
|
|
<defaultValue>true</defaultValue>
|
2005-07-14 16:35:23 -04:00
|
|
|
</field>
|
|
|
|
<field>
|
|
|
|
<name>usePluginRegistry</name>
|
|
|
|
<version>1.0.0</version>
|
2005-09-21 04:53:46 -04:00
|
|
|
<description>
|
|
|
|
<![CDATA[Whether Maven should use the plugin-registry.xml file to manage plugin versions.]]></description>
|
2005-07-14 16:35:23 -04:00
|
|
|
<type>boolean</type>
|
2005-10-03 21:07:36 -04:00
|
|
|
<defaultValue>false</defaultValue>
|
Working on issue: MNG-379
Added specified stop-gap patch for issue: MNG-473 (affects settings-builder and registry-builder)
Today I've made the following progress on this so far:
- Added a new project, called maven-plugin-registry, to house the model for this new file.
- Developed/debugged/tested PluginVersionManager/DefaultPluginVersionManager to isolate the plugin-version checks/management code away from the PluginManager
- Added interactiveMode (<interactiveMode>true|false</interactiveMode> directly under the root element of settings.xml, or -B short CLI option or --batch-mode CLI option, where the CLI options turn OFF interactiveMode). This will allow things like the maven-plugins build to register new plugins (and, for now, new versions of plugins) automatically.
- Added user input handler for when interactiveMode = true, to get a yes/no on whether to use the discovered version over the installed version and/or no version at all. If there is no installed version, and the user selects 'n', then the discovered version is used FOR THAT SESSION ONLY, and won't be recorded in the registry.
- Added checks/recording rejected versions against the registry, before attempting to use the discovered version.
Pending:
- Still need to add update-policies, to determine two things:
1. how often to check for updates
2. what to do when updates are found (autoUpdate, etc.)
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@190854 13f79535-47bb-0310-9956-ffa450edef68
2005-06-15 21:50:28 -04:00
|
|
|
</field>
|
2005-05-31 12:24:34 -04:00
|
|
|
<!-- [JC] Not ready to use yet, so I'm making if unavailable for now. -->
|
|
|
|
<!-- field>
|
|
|
|
<name>passwordStore</name>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<required>false</required>
|
|
|
|
<description><![CDATA[The keystore used to store passwords.]]></description>
|
|
|
|
<type>String</type>
|
|
|
|
</field -->
|
|
|
|
<field>
|
|
|
|
<name>offline</name>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<required>false</required>
|
|
|
|
<description><![CDATA[Indicate whether maven should operate in offline mode full-time.]]>
|
2005-09-21 04:53:46 -04:00
|
|
|
</description>
|
2005-05-31 12:24:34 -04:00
|
|
|
<type>boolean</type>
|
|
|
|
<defaultValue>false</defaultValue>
|
|
|
|
</field>
|
2005-04-18 17:50:55 -04:00
|
|
|
<!-- [JC] Not ready to use yet, so I'm making if unavailable for now. -->
|
|
|
|
<!-- field>
|
2005-03-16 01:29:35 -05:00
|
|
|
<name>jdks</name>
|
2005-03-09 17:13:07 -05:00
|
|
|
<version>1.0.0</version>
|
2005-03-10 20:52:18 -05:00
|
|
|
<description><![CDATA[
|
|
|
|
Configuration for different java environment profiles. One good use
|
|
|
|
for this might be to configure both JDK 1.4 and JDK 1.5 to work with
|
|
|
|
maven. Profiles will allow switching of entire java environments
|
|
|
|
based on the profile id, either in the defaults section below, or on
|
|
|
|
the command line.
|
|
|
|
]]></description>
|
2005-03-08 01:06:22 -05:00
|
|
|
<association>
|
2005-03-16 01:29:35 -05:00
|
|
|
<type>Jdk</type>
|
2005-03-08 01:06:22 -05:00
|
|
|
<multiplicity>*</multiplicity>
|
|
|
|
</association>
|
2005-04-18 17:50:55 -04:00
|
|
|
</field -->
|
2005-03-09 17:13:07 -05:00
|
|
|
<field>
|
2005-03-16 01:29:35 -05:00
|
|
|
<name>proxies</name>
|
2005-03-09 17:13:07 -05:00
|
|
|
<version>1.0.0</version>
|
2005-03-10 20:52:18 -05:00
|
|
|
<description><![CDATA[
|
|
|
|
Configuration for different proxy profiles. Multiple proxy profiles
|
|
|
|
might come in handy for anyone working from a notebook or other
|
|
|
|
mobile platform, to enable easy switching of entire proxy
|
|
|
|
configurations by simply specifying the profile id, again either from
|
|
|
|
the command line or from the defaults section below.
|
|
|
|
]]></description>
|
2005-03-09 17:13:07 -05:00
|
|
|
<association>
|
2005-03-16 01:29:35 -05:00
|
|
|
<type>Proxy</type>
|
2005-03-09 17:13:07 -05:00
|
|
|
<multiplicity>*</multiplicity>
|
|
|
|
</association>
|
|
|
|
</field>
|
2005-03-08 01:06:22 -05:00
|
|
|
<field>
|
2005-03-16 01:29:35 -05:00
|
|
|
<name>servers</name>
|
2005-03-09 17:13:07 -05:00
|
|
|
<version>1.0.0</version>
|
2005-03-10 20:52:18 -05:00
|
|
|
<description><![CDATA[
|
|
|
|
Configuration of server-specific settings, mainly authentication
|
|
|
|
method. This allows configuration of authentication on a per-server
|
|
|
|
basis.
|
|
|
|
]]></description>
|
2005-03-08 01:06:22 -05:00
|
|
|
<association>
|
2005-03-16 01:29:35 -05:00
|
|
|
<type>Server</type>
|
2005-03-08 01:06:22 -05:00
|
|
|
<multiplicity>*</multiplicity>
|
|
|
|
</association>
|
|
|
|
</field>
|
2005-05-05 02:24:07 -04:00
|
|
|
<field>
|
|
|
|
<name>mirrors</name>
|
|
|
|
<version>1.0.0</version>
|
2005-09-21 04:53:46 -04:00
|
|
|
<description>Configuration of download mirrors for repositories.
|
|
|
|
</description>
|
2005-05-05 02:24:07 -04:00
|
|
|
<association>
|
|
|
|
<type>Mirror</type>
|
|
|
|
<multiplicity>*</multiplicity>
|
|
|
|
</association>
|
|
|
|
</field>
|
2005-03-08 01:06:22 -05:00
|
|
|
<field>
|
2005-03-16 01:29:35 -05:00
|
|
|
<name>profiles</name>
|
2005-03-09 17:13:07 -05:00
|
|
|
<version>1.0.0</version>
|
2005-03-10 20:52:18 -05:00
|
|
|
<description><![CDATA[
|
2005-05-31 12:24:34 -04:00
|
|
|
Configuration of build profiles for adjusting the build
|
|
|
|
according to environmental parameters
|
2005-03-10 20:52:18 -05:00
|
|
|
]]></description>
|
2005-03-08 01:06:22 -05:00
|
|
|
<association>
|
2005-03-16 01:29:35 -05:00
|
|
|
<type>Profile</type>
|
2005-03-08 01:06:22 -05:00
|
|
|
<multiplicity>*</multiplicity>
|
|
|
|
</association>
|
|
|
|
</field>
|
2005-05-31 12:24:34 -04:00
|
|
|
<field>
|
|
|
|
<name>activeProfiles</name>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<description><![CDATA[
|
|
|
|
List of manually-activated build profiles, specified in the order in which
|
|
|
|
they should be applied.
|
|
|
|
]]></description>
|
|
|
|
<association>
|
|
|
|
<type>String</type>
|
|
|
|
<multiplicity>*</multiplicity>
|
|
|
|
</association>
|
|
|
|
</field>
|
2005-07-06 20:17:37 -04:00
|
|
|
<field>
|
|
|
|
<name>pluginGroups</name>
|
|
|
|
<version>1.0.0</version>
|
2005-09-21 04:53:46 -04:00
|
|
|
<description>List of groupIds to search for a plugin when that plugin groupId is not explicitly
|
|
|
|
provided.</description>
|
2005-07-06 20:17:37 -04:00
|
|
|
<association>
|
|
|
|
<type>String</type>
|
|
|
|
<multiplicity>*</multiplicity>
|
|
|
|
</association>
|
|
|
|
</field>
|
2005-03-08 01:06:22 -05:00
|
|
|
</fields>
|
2005-04-18 17:50:55 -04:00
|
|
|
<codeSegments>
|
|
|
|
<codeSegment>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<code><![CDATA[
|
2005-09-15 15:21:28 -04:00
|
|
|
public Boolean getInteractiveMode()
|
|
|
|
{
|
|
|
|
return Boolean.valueOf( isInteractiveMode() );
|
|
|
|
}
|
|
|
|
|
2005-04-18 17:50:55 -04:00
|
|
|
private Proxy activeProxy;
|
2005-06-13 17:56:00 -04:00
|
|
|
|
|
|
|
public void flushActiveProxy()
|
|
|
|
{
|
|
|
|
this.activeProxy = null;
|
|
|
|
}
|
2005-06-07 23:37:31 -04:00
|
|
|
|
2005-04-18 17:50:55 -04:00
|
|
|
public synchronized Proxy getActiveProxy()
|
|
|
|
{
|
|
|
|
if(activeProxy == null)
|
|
|
|
{
|
2005-09-13 07:41:52 -04:00
|
|
|
java.util.List proxies = getProxies();
|
2005-04-18 17:50:55 -04:00
|
|
|
if ( proxies != null && !proxies.isEmpty() )
|
|
|
|
{
|
|
|
|
if ( proxies.size() > 1 )
|
|
|
|
{
|
2005-09-13 07:41:52 -04:00
|
|
|
for ( java.util.Iterator it = proxies.iterator(); it.hasNext(); )
|
2005-04-18 17:50:55 -04:00
|
|
|
{
|
|
|
|
Proxy proxy = (Proxy) it.next();
|
|
|
|
if ( proxy.isActive() )
|
|
|
|
{
|
|
|
|
activeProxy = proxy;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
// If we only have one proxy, use it as the active one.
|
|
|
|
activeProxy = (Proxy) proxies.get( 0 );
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
return activeProxy;
|
|
|
|
}
|
2005-06-13 17:56:00 -04:00
|
|
|
|
2005-04-18 17:50:55 -04:00
|
|
|
public Server getServer( String serverId )
|
|
|
|
{
|
|
|
|
Server match = null;
|
|
|
|
|
2005-09-13 07:41:52 -04:00
|
|
|
java.util.List servers = getServers();
|
2005-04-18 17:50:55 -04:00
|
|
|
if ( servers != null && serverId != null )
|
|
|
|
{
|
2005-09-13 07:41:52 -04:00
|
|
|
for ( java.util.Iterator it = servers.iterator(); it.hasNext(); )
|
2005-04-18 17:50:55 -04:00
|
|
|
{
|
|
|
|
Server server = (Server) it.next();
|
|
|
|
if ( serverId.equals( server.getId() ) )
|
|
|
|
{
|
|
|
|
match = server;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
2005-06-07 23:37:31 -04:00
|
|
|
|
|
|
|
return match;
|
|
|
|
}
|
|
|
|
|
|
|
|
public Mirror getMirrorOf( String repositoryId )
|
|
|
|
{
|
|
|
|
Mirror match = null;
|
|
|
|
|
2005-09-13 07:41:52 -04:00
|
|
|
java.util.List mirrors = getMirrors();
|
2005-06-07 23:37:31 -04:00
|
|
|
if ( mirrors != null && repositoryId != null )
|
|
|
|
{
|
2005-09-13 07:41:52 -04:00
|
|
|
for ( java.util.Iterator it = mirrors.iterator(); it.hasNext(); )
|
2005-06-07 23:37:31 -04:00
|
|
|
{
|
|
|
|
Mirror mirror = (Mirror) it.next();
|
|
|
|
if ( repositoryId.equals( mirror.getMirrorOf() ) )
|
|
|
|
{
|
|
|
|
match = mirror;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
2005-04-18 17:50:55 -04:00
|
|
|
|
|
|
|
return match;
|
|
|
|
}
|
2005-06-14 23:01:48 -04:00
|
|
|
|
2005-09-13 07:41:52 -04:00
|
|
|
private java.util.Map profileMap;
|
2005-06-18 18:38:49 -04:00
|
|
|
|
|
|
|
public void flushProfileMap()
|
|
|
|
{
|
|
|
|
this.profileMap = null;
|
|
|
|
}
|
|
|
|
|
2005-09-13 07:41:52 -04:00
|
|
|
public java.util.Map getProfilesAsMap()
|
2005-06-18 18:38:49 -04:00
|
|
|
{
|
|
|
|
if ( profileMap == null )
|
|
|
|
{
|
2005-09-13 07:41:52 -04:00
|
|
|
profileMap = new java.util.HashMap();
|
2005-06-18 18:38:49 -04:00
|
|
|
|
|
|
|
if ( getProfiles() != null )
|
|
|
|
{
|
2005-09-13 07:41:52 -04:00
|
|
|
for ( java.util.Iterator it = getProfiles().iterator(); it.hasNext(); )
|
2005-06-18 18:38:49 -04:00
|
|
|
{
|
|
|
|
Profile profile = (Profile) it.next();
|
|
|
|
|
|
|
|
profileMap.put( profile.getId(), profile );
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
return profileMap;
|
|
|
|
}
|
|
|
|
|
Resolving issue: MNG-379
o Added support for update-all and update-none when prompting the user.
o Added --update-plugins/-F option to force an update of the plugins used in the project.
o Added autoUpdate setting for the plugin registry. This is used when in non-interactive mode, to determine whether to register plugin updates
o Added updateInterval to determine when/how often to check for updates to registered plugins. Supports three syntaxes:
- 'never'
- 'always'
- 'interval:XXX' (where XXX can be a combination of weeks, days, hours, and minutes in the syntax: 1w1d1h1m)
> this renders the interval syntax similar to 'interval:1w' to check every week.
NOTE: update intervals are calculated from the time a particular plugin was last checked.
o Added lastChecked attribute for registered plugins, to use as a basis for calculating update-check interval
o Added RuntimeInfo classes for maven-settings and maven-plugin-registry, to help in tracking the file each instance comes from, in addition to merging info which is useful when extracting the user-level instance from the merged instance (for persisting changes to the user instance, f.e.).
o Changed verifyPlugin(..) to take an instance of Settings, to allow persistent decisions across the session (like update-all, update-none in the plugin version manager)
This should take care of outstanding issues with this new feature. I'm closing the JIRA issue now, and we'll deal with any bugs/shortcomings as separate issues.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@191021 13f79535-47bb-0310-9956-ffa450edef68
2005-06-16 18:38:57 -04:00
|
|
|
private RuntimeInfo runtimeInfo;
|
2005-06-14 23:01:48 -04:00
|
|
|
|
Resolving issue: MNG-379
o Added support for update-all and update-none when prompting the user.
o Added --update-plugins/-F option to force an update of the plugins used in the project.
o Added autoUpdate setting for the plugin registry. This is used when in non-interactive mode, to determine whether to register plugin updates
o Added updateInterval to determine when/how often to check for updates to registered plugins. Supports three syntaxes:
- 'never'
- 'always'
- 'interval:XXX' (where XXX can be a combination of weeks, days, hours, and minutes in the syntax: 1w1d1h1m)
> this renders the interval syntax similar to 'interval:1w' to check every week.
NOTE: update intervals are calculated from the time a particular plugin was last checked.
o Added lastChecked attribute for registered plugins, to use as a basis for calculating update-check interval
o Added RuntimeInfo classes for maven-settings and maven-plugin-registry, to help in tracking the file each instance comes from, in addition to merging info which is useful when extracting the user-level instance from the merged instance (for persisting changes to the user instance, f.e.).
o Changed verifyPlugin(..) to take an instance of Settings, to allow persistent decisions across the session (like update-all, update-none in the plugin version manager)
This should take care of outstanding issues with this new feature. I'm closing the JIRA issue now, and we'll deal with any bugs/shortcomings as separate issues.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@191021 13f79535-47bb-0310-9956-ffa450edef68
2005-06-16 18:38:57 -04:00
|
|
|
public void setRuntimeInfo( RuntimeInfo runtimeInfo )
|
2005-06-14 23:01:48 -04:00
|
|
|
{
|
Resolving issue: MNG-379
o Added support for update-all and update-none when prompting the user.
o Added --update-plugins/-F option to force an update of the plugins used in the project.
o Added autoUpdate setting for the plugin registry. This is used when in non-interactive mode, to determine whether to register plugin updates
o Added updateInterval to determine when/how often to check for updates to registered plugins. Supports three syntaxes:
- 'never'
- 'always'
- 'interval:XXX' (where XXX can be a combination of weeks, days, hours, and minutes in the syntax: 1w1d1h1m)
> this renders the interval syntax similar to 'interval:1w' to check every week.
NOTE: update intervals are calculated from the time a particular plugin was last checked.
o Added lastChecked attribute for registered plugins, to use as a basis for calculating update-check interval
o Added RuntimeInfo classes for maven-settings and maven-plugin-registry, to help in tracking the file each instance comes from, in addition to merging info which is useful when extracting the user-level instance from the merged instance (for persisting changes to the user instance, f.e.).
o Changed verifyPlugin(..) to take an instance of Settings, to allow persistent decisions across the session (like update-all, update-none in the plugin version manager)
This should take care of outstanding issues with this new feature. I'm closing the JIRA issue now, and we'll deal with any bugs/shortcomings as separate issues.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@191021 13f79535-47bb-0310-9956-ffa450edef68
2005-06-16 18:38:57 -04:00
|
|
|
this.runtimeInfo = runtimeInfo;
|
2005-06-14 23:01:48 -04:00
|
|
|
}
|
|
|
|
|
Resolving issue: MNG-379
o Added support for update-all and update-none when prompting the user.
o Added --update-plugins/-F option to force an update of the plugins used in the project.
o Added autoUpdate setting for the plugin registry. This is used when in non-interactive mode, to determine whether to register plugin updates
o Added updateInterval to determine when/how often to check for updates to registered plugins. Supports three syntaxes:
- 'never'
- 'always'
- 'interval:XXX' (where XXX can be a combination of weeks, days, hours, and minutes in the syntax: 1w1d1h1m)
> this renders the interval syntax similar to 'interval:1w' to check every week.
NOTE: update intervals are calculated from the time a particular plugin was last checked.
o Added lastChecked attribute for registered plugins, to use as a basis for calculating update-check interval
o Added RuntimeInfo classes for maven-settings and maven-plugin-registry, to help in tracking the file each instance comes from, in addition to merging info which is useful when extracting the user-level instance from the merged instance (for persisting changes to the user instance, f.e.).
o Changed verifyPlugin(..) to take an instance of Settings, to allow persistent decisions across the session (like update-all, update-none in the plugin version manager)
This should take care of outstanding issues with this new feature. I'm closing the JIRA issue now, and we'll deal with any bugs/shortcomings as separate issues.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@191021 13f79535-47bb-0310-9956-ffa450edef68
2005-06-16 18:38:57 -04:00
|
|
|
public RuntimeInfo getRuntimeInfo()
|
2005-06-14 23:01:48 -04:00
|
|
|
{
|
Resolving issue: MNG-379
o Added support for update-all and update-none when prompting the user.
o Added --update-plugins/-F option to force an update of the plugins used in the project.
o Added autoUpdate setting for the plugin registry. This is used when in non-interactive mode, to determine whether to register plugin updates
o Added updateInterval to determine when/how often to check for updates to registered plugins. Supports three syntaxes:
- 'never'
- 'always'
- 'interval:XXX' (where XXX can be a combination of weeks, days, hours, and minutes in the syntax: 1w1d1h1m)
> this renders the interval syntax similar to 'interval:1w' to check every week.
NOTE: update intervals are calculated from the time a particular plugin was last checked.
o Added lastChecked attribute for registered plugins, to use as a basis for calculating update-check interval
o Added RuntimeInfo classes for maven-settings and maven-plugin-registry, to help in tracking the file each instance comes from, in addition to merging info which is useful when extracting the user-level instance from the merged instance (for persisting changes to the user instance, f.e.).
o Changed verifyPlugin(..) to take an instance of Settings, to allow persistent decisions across the session (like update-all, update-none in the plugin version manager)
This should take care of outstanding issues with this new feature. I'm closing the JIRA issue now, and we'll deal with any bugs/shortcomings as separate issues.
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@191021 13f79535-47bb-0310-9956-ffa450edef68
2005-06-16 18:38:57 -04:00
|
|
|
return runtimeInfo;
|
2005-06-14 23:01:48 -04:00
|
|
|
}
|
2005-04-18 17:50:55 -04:00
|
|
|
]]></code>
|
|
|
|
</codeSegment>
|
|
|
|
</codeSegments>
|
2005-03-08 01:06:22 -05:00
|
|
|
</class>
|
|
|
|
<!-- @todo: is any of this too CVS specific? Investigate other SCMs -->
|
2005-04-18 17:50:55 -04:00
|
|
|
<!-- [JC] Commenting out until we're ready to use it... -->
|
|
|
|
<!-- class>
|
2005-03-16 01:29:35 -05:00
|
|
|
<name>Jdk</name>
|
2005-03-09 17:13:07 -05:00
|
|
|
<version>1.0.0</version>
|
2005-06-14 23:01:48 -04:00
|
|
|
<superClass>TrackableBase</superClass>
|
2005-03-08 01:06:22 -05:00
|
|
|
<description><![CDATA[Describes one Java environment]]></description>
|
|
|
|
<fields>
|
2005-03-16 01:29:35 -05:00
|
|
|
<field>
|
|
|
|
<name>active</name>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<required>false</required>
|
|
|
|
<defaultValue>false</defaultValue>
|
|
|
|
<description><![CDATA[Whether this JDK is the active one.]]></description>
|
|
|
|
<type>boolean</type>
|
|
|
|
</field>
|
2005-03-08 01:06:22 -05:00
|
|
|
<field>
|
|
|
|
<name>version</name>
|
2005-03-09 17:13:07 -05:00
|
|
|
<version>1.0.0</version>
|
2005-03-08 01:06:22 -05:00
|
|
|
<required>true</required>
|
|
|
|
<description><![CDATA[The JDK major version (eg. '1.4').]]></description>
|
|
|
|
<type>String</type>
|
|
|
|
</field>
|
|
|
|
<field>
|
|
|
|
<name>javaHome</name>
|
2005-03-09 17:13:07 -05:00
|
|
|
<version>1.0.0</version>
|
2005-03-08 01:06:22 -05:00
|
|
|
<required>true</required>
|
|
|
|
<description><![CDATA[The JDK home.]]></description>
|
|
|
|
<type>String</type>
|
|
|
|
</field>
|
|
|
|
</fields>
|
2005-04-18 17:50:55 -04:00
|
|
|
</class -->
|
2005-03-09 17:13:07 -05:00
|
|
|
<class>
|
2005-03-16 01:29:35 -05:00
|
|
|
<name>Proxy</name>
|
2005-03-09 17:13:07 -05:00
|
|
|
<version>1.0.0</version>
|
2005-06-14 23:01:48 -04:00
|
|
|
<superClass>IdentifiableBase</superClass>
|
2005-03-09 17:13:07 -05:00
|
|
|
<fields>
|
|
|
|
<field>
|
2005-03-16 01:29:35 -05:00
|
|
|
<name>active</name>
|
2005-03-09 17:13:07 -05:00
|
|
|
<version>1.0.0</version>
|
2005-03-16 01:29:35 -05:00
|
|
|
<required>false</required>
|
|
|
|
<defaultValue>false</defaultValue>
|
2005-05-31 12:24:34 -04:00
|
|
|
<description><![CDATA[Whether this proxy configuration is the active one.]]>
|
2005-09-21 04:53:46 -04:00
|
|
|
</description>
|
2005-03-16 01:29:35 -05:00
|
|
|
<type>boolean</type>
|
2005-03-09 17:13:07 -05:00
|
|
|
</field>
|
|
|
|
<field>
|
|
|
|
<name>protocol</name>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<description><![CDATA[The proxy protocol.]]></description>
|
|
|
|
<type>String</type>
|
2005-04-11 21:45:21 -04:00
|
|
|
<defaultValue>http</defaultValue>
|
2005-03-09 17:13:07 -05:00
|
|
|
</field>
|
|
|
|
<field>
|
|
|
|
<name>username</name>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<description><![CDATA[The proxy user.]]></description>
|
|
|
|
<type>String</type>
|
|
|
|
</field>
|
|
|
|
<field>
|
|
|
|
<name>password</name>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<description><![CDATA[The proxy password.]]></description>
|
|
|
|
<type>String</type>
|
|
|
|
</field>
|
|
|
|
<field>
|
|
|
|
<name>port</name>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<description><![CDATA[The proxy port.]]></description>
|
|
|
|
<type>int</type>
|
|
|
|
</field>
|
|
|
|
<field>
|
|
|
|
<name>host</name>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<description><![CDATA[The proxy host.]]></description>
|
|
|
|
<type>String</type>
|
|
|
|
</field>
|
|
|
|
<field>
|
|
|
|
<name>nonProxyHosts</name>
|
|
|
|
<version>1.0.0</version>
|
2005-03-10 20:52:18 -05:00
|
|
|
<description><![CDATA[
|
|
|
|
The list of non-proxied hosts (usually
|
|
|
|
comma-delimited).
|
|
|
|
]]></description>
|
2005-03-09 17:13:07 -05:00
|
|
|
<type>String</type>
|
|
|
|
</field>
|
|
|
|
</fields>
|
|
|
|
</class>
|
2005-03-08 01:06:22 -05:00
|
|
|
<class>
|
2005-03-16 01:29:35 -05:00
|
|
|
<name>Server</name>
|
2005-03-09 17:13:07 -05:00
|
|
|
<version>1.0.0</version>
|
2005-06-14 23:01:48 -04:00
|
|
|
<superClass>IdentifiableBase</superClass>
|
2005-03-08 01:06:22 -05:00
|
|
|
<fields>
|
|
|
|
<field>
|
|
|
|
<name>username</name>
|
2005-03-09 17:13:07 -05:00
|
|
|
<version>1.0.0</version>
|
2005-05-31 12:24:34 -04:00
|
|
|
<description><![CDATA[The username used to authenticate.]]>
|
2005-09-21 04:53:46 -04:00
|
|
|
</description>
|
2005-03-08 01:06:22 -05:00
|
|
|
<type>String</type>
|
|
|
|
</field>
|
|
|
|
<field>
|
2005-03-09 00:48:31 -05:00
|
|
|
<name>password</name>
|
2005-03-09 17:13:07 -05:00
|
|
|
<version>1.0.0</version>
|
2005-03-10 20:52:18 -05:00
|
|
|
<description><![CDATA[
|
|
|
|
The password used in conjunction with the username to authenticate.
|
|
|
|
]]></description>
|
2005-03-08 01:06:22 -05:00
|
|
|
<type>String</type>
|
|
|
|
</field>
|
|
|
|
<field>
|
|
|
|
<name>privateKey</name>
|
2005-03-09 17:13:07 -05:00
|
|
|
<version>1.0.0</version>
|
2005-05-31 12:24:34 -04:00
|
|
|
<description><![CDATA[The private key location used to authenticate.]]>
|
2005-09-21 04:53:46 -04:00
|
|
|
</description>
|
2005-03-08 01:06:22 -05:00
|
|
|
<type>String</type>
|
|
|
|
</field>
|
2005-03-09 00:48:31 -05:00
|
|
|
<field>
|
|
|
|
<name>passphrase</name>
|
2005-03-09 17:13:07 -05:00
|
|
|
<version>1.0.0</version>
|
2005-03-10 20:52:18 -05:00
|
|
|
<description><![CDATA[
|
|
|
|
The passphrase used in conjunction with the privateKey to authenticate.
|
|
|
|
]]></description>
|
2005-03-09 00:48:31 -05:00
|
|
|
<type>String</type>
|
|
|
|
</field>
|
2005-09-21 04:53:46 -04:00
|
|
|
<field>
|
|
|
|
<name>filePermissions</name>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<description><![CDATA[
|
|
|
|
The permissions for files when they are created.
|
|
|
|
]]></description>
|
|
|
|
<type>String</type>
|
|
|
|
</field>
|
|
|
|
<field>
|
|
|
|
<name>directoryPermissions</name>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<description><![CDATA[
|
|
|
|
The permissions for directories when they are created.
|
|
|
|
]]></description>
|
|
|
|
<type>String</type>
|
|
|
|
</field>
|
2005-03-08 01:06:22 -05:00
|
|
|
</fields>
|
|
|
|
</class>
|
|
|
|
<class>
|
2005-05-31 12:24:34 -04:00
|
|
|
<name>Mirror</name>
|
2005-03-09 17:13:07 -05:00
|
|
|
<version>1.0.0</version>
|
2005-06-14 23:01:48 -04:00
|
|
|
<superClass>IdentifiableBase</superClass>
|
2005-09-21 04:53:46 -04:00
|
|
|
<description>A download mirror for a given repository.</description>
|
2005-03-08 01:06:22 -05:00
|
|
|
<fields>
|
|
|
|
<field>
|
2005-05-31 12:24:34 -04:00
|
|
|
<name>mirrorOf</name>
|
2005-03-08 01:06:22 -05:00
|
|
|
<required>true</required>
|
2005-05-31 12:24:34 -04:00
|
|
|
<version>1.0.0</version>
|
2005-03-08 01:06:22 -05:00
|
|
|
<type>String</type>
|
2005-09-21 04:53:46 -04:00
|
|
|
<description>The server ID of the repository being mirrored, eg
|
|
|
|
"central". This MUST NOT match the mirror id.</description>
|
2005-03-08 01:06:22 -05:00
|
|
|
</field>
|
2005-05-31 12:24:34 -04:00
|
|
|
<field>
|
|
|
|
<name>name</name>
|
2005-04-18 17:50:55 -04:00
|
|
|
<required>false</required>
|
2005-05-31 12:24:34 -04:00
|
|
|
<version>1.0.0</version>
|
2005-03-08 01:06:22 -05:00
|
|
|
<type>String</type>
|
2005-09-21 04:53:46 -04:00
|
|
|
<description>The optional name that describes the mirror.
|
|
|
|
</description>
|
2005-05-31 12:24:34 -04:00
|
|
|
</field>
|
2005-04-18 17:50:55 -04:00
|
|
|
<field>
|
2005-05-31 12:24:34 -04:00
|
|
|
<name>url</name>
|
|
|
|
<required>true</required>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<type>String</type>
|
2005-09-21 04:53:46 -04:00
|
|
|
<description>The URL of the mirror repository.</description>
|
2005-05-31 12:24:34 -04:00
|
|
|
</field>
|
|
|
|
<!--
|
|
|
|
<field>
|
|
|
|
<name>allowOriginal</name>
|
2005-04-18 17:50:55 -04:00
|
|
|
<version>1.0.0</version>
|
|
|
|
<type>boolean</type>
|
2005-05-31 12:24:34 -04:00
|
|
|
<defaultValue>true</defaultValue>
|
|
|
|
<description>
|
|
|
|
Whether to allow the user of the original as a fallback if an artifact is not found on the mirror.
|
|
|
|
</description>
|
2005-03-08 01:06:22 -05:00
|
|
|
</field>
|
2005-05-31 12:24:34 -04:00
|
|
|
-->
|
2005-03-08 01:06:22 -05:00
|
|
|
</fields>
|
|
|
|
</class>
|
2005-05-31 12:24:34 -04:00
|
|
|
<!-- Profile support -->
|
2005-05-05 02:24:07 -04:00
|
|
|
<class>
|
2005-05-31 12:24:34 -04:00
|
|
|
<name>Profile</name>
|
2005-05-05 02:24:07 -04:00
|
|
|
<version>1.0.0</version>
|
2005-06-14 23:01:48 -04:00
|
|
|
<superClass>IdentifiableBase</superClass>
|
2005-05-31 12:24:34 -04:00
|
|
|
<description><![CDATA[
|
|
|
|
Modifications to the build process which is keyed on some
|
|
|
|
sort of environmental parameter.
|
|
|
|
]]></description>
|
2005-05-05 02:24:07 -04:00
|
|
|
<fields>
|
|
|
|
<field>
|
2005-05-31 12:24:34 -04:00
|
|
|
<name>activation</name>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<description><![CDATA[The conditional logic which will automatically
|
|
|
|
trigger the inclusion of this profile.]]></description>
|
|
|
|
<association>
|
|
|
|
<type>Activation</type>
|
|
|
|
</association>
|
|
|
|
</field>
|
|
|
|
<field>
|
2005-06-07 23:27:43 -04:00
|
|
|
<name>properties</name>
|
2005-09-21 04:53:46 -04:00
|
|
|
<description>Extended configuration specific to this profile goes
|
2005-05-31 12:24:34 -04:00
|
|
|
here.</description>
|
2005-06-07 23:27:43 -04:00
|
|
|
<type>Properties</type>
|
|
|
|
<association xml.mapStyle="inline">
|
|
|
|
<type>String</type>
|
|
|
|
<multiplicity>*</multiplicity>
|
|
|
|
</association>
|
2005-05-31 12:24:34 -04:00
|
|
|
</field>
|
|
|
|
<field>
|
|
|
|
<name>repositories</name>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<description><![CDATA[The lists of the remote repositories]]>
|
2005-09-21 04:53:46 -04:00
|
|
|
</description>
|
2005-05-31 12:24:34 -04:00
|
|
|
<association>
|
|
|
|
<type>Repository</type>
|
|
|
|
<multiplicity>*</multiplicity>
|
|
|
|
</association>
|
|
|
|
</field>
|
|
|
|
<field>
|
|
|
|
<name>pluginRepositories</name>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<description><![CDATA[
|
|
|
|
The lists of the remote repositories for discovering plugins
|
|
|
|
]]></description>
|
|
|
|
<association>
|
|
|
|
<type>Repository</type>
|
|
|
|
<multiplicity>*</multiplicity>
|
|
|
|
</association>
|
|
|
|
<comment><![CDATA[ This may be removed or relocated in the near
|
|
|
|
future. It is undecided whether plugins really need a remote
|
|
|
|
repository set of their own. ]]></comment>
|
|
|
|
</field>
|
|
|
|
</fields>
|
|
|
|
</class>
|
|
|
|
<class>
|
|
|
|
<name>Activation</name>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<description><![CDATA[
|
|
|
|
The conditions within the build runtime environment which will trigger
|
|
|
|
the automatic inclusion of the parent build profile.
|
|
|
|
]]></description>
|
|
|
|
<fields>
|
2005-09-12 23:23:16 -04:00
|
|
|
<field>
|
|
|
|
<name>activeByDefault</name>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<type>boolean</type>
|
|
|
|
<description>Flag specifying whether this profile is active as a default.</description>
|
|
|
|
</field>
|
2005-05-31 12:24:34 -04:00
|
|
|
<field>
|
|
|
|
<name>jdk</name>
|
2005-05-05 02:24:07 -04:00
|
|
|
<version>1.0.0</version>
|
|
|
|
<type>String</type>
|
2005-05-31 12:24:34 -04:00
|
|
|
<description><![CDATA[
|
|
|
|
Specifies that this profile will be activated when a matching JDK is detected.
|
|
|
|
]]></description>
|
|
|
|
</field>
|
2005-10-03 21:07:36 -04:00
|
|
|
<field>
|
|
|
|
<name>os</name>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<description><![CDATA[
|
|
|
|
Specifies that this profile will be activated when matching OS attributes are detected.
|
|
|
|
]]></description>
|
|
|
|
<association>
|
|
|
|
<type>ActivationOS</type>
|
|
|
|
</association>
|
|
|
|
</field>
|
2005-05-31 12:24:34 -04:00
|
|
|
<field>
|
|
|
|
<name>property</name>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<description><![CDATA[
|
|
|
|
Specifies that this profile will be activated when this System property is specified.
|
|
|
|
]]></description>
|
2005-06-07 18:36:44 -04:00
|
|
|
<association>
|
|
|
|
<type>ActivationProperty</type>
|
|
|
|
</association>
|
2005-05-31 12:24:34 -04:00
|
|
|
</field>
|
2005-10-03 21:07:36 -04:00
|
|
|
<field>
|
|
|
|
<name>file</name>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<description><![CDATA[
|
|
|
|
Specifies that this profile will be activated based on existence of a file.
|
|
|
|
]]></description>
|
|
|
|
<association>
|
|
|
|
<type>ActivationFile</type>
|
|
|
|
</association>
|
|
|
|
</field>
|
2005-05-31 12:24:34 -04:00
|
|
|
</fields>
|
|
|
|
</class>
|
2005-07-25 05:51:12 -04:00
|
|
|
|
|
|
|
<!-- TODO: reproduced from maven-model/maven.mdo, instead should inherit code and link to external docs -->
|
2005-05-31 12:24:34 -04:00
|
|
|
<class>
|
2005-07-25 05:51:12 -04:00
|
|
|
<name>RepositoryBase</name>
|
2005-05-31 12:24:34 -04:00
|
|
|
<version>1.0.0</version>
|
|
|
|
<description><![CDATA[
|
|
|
|
Repository contains the information needed
|
|
|
|
for establishing connections with remote repoistory
|
|
|
|
]]></description>
|
|
|
|
<fields>
|
|
|
|
<field>
|
|
|
|
<name>id</name>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<description><![CDATA[
|
|
|
|
A unique identifier for a repository.
|
|
|
|
]]></description>
|
|
|
|
<type>String</type>
|
2005-05-05 02:24:07 -04:00
|
|
|
</field>
|
|
|
|
<field>
|
|
|
|
<name>name</name>
|
|
|
|
<version>1.0.0</version>
|
2005-05-31 12:24:34 -04:00
|
|
|
<description><![CDATA[
|
|
|
|
Human readable name of the repository
|
|
|
|
]]></description>
|
2005-05-05 02:24:07 -04:00
|
|
|
<type>String</type>
|
|
|
|
</field>
|
|
|
|
<field>
|
|
|
|
<name>url</name>
|
|
|
|
<version>1.0.0</version>
|
2005-05-31 12:24:34 -04:00
|
|
|
<description><![CDATA[
|
|
|
|
The url of the repository
|
|
|
|
]]></description>
|
2005-05-05 02:24:07 -04:00
|
|
|
<type>String</type>
|
|
|
|
</field>
|
2005-05-31 12:24:34 -04:00
|
|
|
<field>
|
|
|
|
<name>layout</name>
|
|
|
|
<version>1.0.0</version>
|
2005-07-25 05:51:12 -04:00
|
|
|
<description>The type of layout this repository uses for locating and storing artifacts - can be "legacy" or
|
|
|
|
"default".</description>
|
2005-05-31 12:24:34 -04:00
|
|
|
<type>String</type>
|
|
|
|
<defaultValue>default</defaultValue>
|
2005-05-05 02:24:07 -04:00
|
|
|
</field>
|
|
|
|
</fields>
|
2005-05-31 12:24:34 -04:00
|
|
|
<codeSegments>
|
|
|
|
<codeSegment>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<code><![CDATA[
|
|
|
|
public boolean equals( Object obj )
|
|
|
|
{
|
2005-07-25 05:51:12 -04:00
|
|
|
RepositoryBase other = (RepositoryBase) obj;
|
2005-05-31 12:24:34 -04:00
|
|
|
|
|
|
|
boolean retValue = false;
|
|
|
|
|
|
|
|
if ( id != null )
|
|
|
|
{
|
|
|
|
retValue = id.equals( other.id );
|
|
|
|
}
|
|
|
|
|
|
|
|
return retValue;
|
|
|
|
}
|
|
|
|
]]></code>
|
|
|
|
</codeSegment>
|
|
|
|
</codeSegments>
|
2005-05-05 02:24:07 -04:00
|
|
|
</class>
|
2005-07-25 05:51:12 -04:00
|
|
|
|
|
|
|
<class>
|
|
|
|
<name>Repository</name>
|
|
|
|
<superClass>RepositoryBase</superClass>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<description>
|
|
|
|
Repository contains the information needed for establishing connections with remote repoistory
|
|
|
|
</description>
|
|
|
|
<fields>
|
|
|
|
<field>
|
|
|
|
<name>releases</name>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<description>How to handle downloading of releases from this repository</description>
|
|
|
|
<association>
|
|
|
|
<type>RepositoryPolicy</type>
|
|
|
|
</association>
|
|
|
|
</field>
|
|
|
|
<field>
|
|
|
|
<name>snapshots</name>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<description>How to handle downloading of snapshots from this repository</description>
|
|
|
|
<association>
|
|
|
|
<type>RepositoryPolicy</type>
|
|
|
|
</association>
|
|
|
|
</field>
|
|
|
|
</fields>
|
|
|
|
<!-- prevent modello generation of an incorrect equals method. Could be avoided by using <identity/> tags to mark ID as the only identity field -->
|
|
|
|
<codeSegments>
|
|
|
|
<codeSegment>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<code><![CDATA[
|
|
|
|
public boolean equals( Object obj )
|
|
|
|
{
|
|
|
|
return super.equals( obj );
|
|
|
|
}
|
|
|
|
]]></code>
|
|
|
|
</codeSegment>
|
|
|
|
</codeSegments>
|
|
|
|
</class>
|
|
|
|
|
|
|
|
<class>
|
|
|
|
<name>RepositoryPolicy</name>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<description>Download policy</description>
|
|
|
|
<fields>
|
|
|
|
<field>
|
|
|
|
<name>enabled</name>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<description>Whether to use this repository for downloading this type of artifact</description>
|
|
|
|
<type>boolean</type>
|
|
|
|
<defaultValue>true</defaultValue>
|
|
|
|
</field>
|
|
|
|
<field>
|
|
|
|
<name>updatePolicy</name>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<description>
|
|
|
|
The frequency for downloading updates - can be "always", "daily" (default), "interval:XXX" (in minutes) or
|
|
|
|
"never" (only if it doesn't exist locally).
|
|
|
|
</description>
|
|
|
|
<type>String</type>
|
|
|
|
</field>
|
|
|
|
<field>
|
|
|
|
<name>checksumPolicy</name>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<description>What to do when verification of an artifact checksum fails - warn, fail, etc. Valid values are
|
|
|
|
"fail" or "warn"</description>
|
|
|
|
<type>String</type>
|
|
|
|
</field>
|
|
|
|
</fields>
|
|
|
|
</class>
|
|
|
|
|
2005-06-07 18:36:44 -04:00
|
|
|
<class>
|
|
|
|
<name>ActivationProperty</name>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<description><![CDATA[
|
|
|
|
This is the property specification used to activate a profile. If the value field is empty,
|
|
|
|
then the existence of the named property will activate the profile, otherwise it does a case-sensitive
|
|
|
|
match against the property value as well.
|
|
|
|
]]></description>
|
|
|
|
<fields>
|
|
|
|
<field>
|
|
|
|
<name>name</name>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<type>String</type>
|
|
|
|
<required>true</required>
|
|
|
|
<description>The name of the property to be used to activate a profile</description>
|
|
|
|
</field>
|
|
|
|
<field>
|
|
|
|
<name>value</name>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<type>String</type>
|
|
|
|
<description>The value of the property to be used to activate a profile</description>
|
|
|
|
</field>
|
|
|
|
</fields>
|
|
|
|
</class>
|
2005-10-03 21:07:36 -04:00
|
|
|
<class>
|
|
|
|
<name>ActivationOS</name>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<description><![CDATA[
|
|
|
|
This is an activator which will detect an operating system's attributes in order to activate
|
|
|
|
its profile.
|
|
|
|
]]></description>
|
|
|
|
<fields>
|
|
|
|
<field>
|
|
|
|
<name>name</name>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<type>String</type>
|
|
|
|
<description>The name of the OS to be used to activate a profile</description>
|
|
|
|
</field>
|
|
|
|
<field>
|
|
|
|
<name>family</name>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<type>String</type>
|
|
|
|
<description>The general family of the OS to be used to activate a profile (e.g. 'windows')</description>
|
|
|
|
</field>
|
|
|
|
<field>
|
|
|
|
<name>arch</name>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<type>String</type>
|
|
|
|
<description>The architecture of the OS to be used to activate a profile</description>
|
|
|
|
</field>
|
|
|
|
<field>
|
|
|
|
<name>version</name>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<type>String</type>
|
|
|
|
<description>The version of the OS to be used to activate a profile</description>
|
|
|
|
</field>
|
|
|
|
</fields>
|
|
|
|
</class>
|
|
|
|
<class>
|
|
|
|
<name>ActivationFile</name>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<description><![CDATA[
|
|
|
|
This is the file specification used to activate a profile. The missing value will be a the location
|
|
|
|
of a file that needs to exist, and if it doesn't the profile must run. On the other hand exists will test
|
|
|
|
for the existence of the file and if it is there will run the profile.
|
|
|
|
]]></description>
|
|
|
|
<fields>
|
|
|
|
<field>
|
|
|
|
<name>missing</name>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<type>String</type>
|
|
|
|
<description>The name of the file that should be missing to activate a profile</description>
|
|
|
|
</field>
|
|
|
|
<field>
|
|
|
|
<name>exists</name>
|
|
|
|
<version>1.0.0</version>
|
|
|
|
<type>String</type>
|
|
|
|
<description>The name of the file that should exist to activate a profile</description>
|
|
|
|
</field>
|
|
|
|
</fields>
|
|
|
|
</class>
|
2005-05-31 12:24:34 -04:00
|
|
|
<!-- /BuildProfile support -->
|
2005-03-08 01:06:22 -05:00
|
|
|
</classes>
|
2005-09-13 07:41:52 -04:00
|
|
|
</model>
|