aboutsummaryrefslogtreecommitdiffstats
path: root/framework/src/maven/apache-maven-3.3.3/maven-settings-builder/src/main/java/org/apache/maven/settings/validation/DefaultSettingsValidator.java
diff options
context:
space:
mode:
Diffstat (limited to 'framework/src/maven/apache-maven-3.3.3/maven-settings-builder/src/main/java/org/apache/maven/settings/validation/DefaultSettingsValidator.java')
-rw-r--r--framework/src/maven/apache-maven-3.3.3/maven-settings-builder/src/main/java/org/apache/maven/settings/validation/DefaultSettingsValidator.java285
1 files changed, 0 insertions, 285 deletions
diff --git a/framework/src/maven/apache-maven-3.3.3/maven-settings-builder/src/main/java/org/apache/maven/settings/validation/DefaultSettingsValidator.java b/framework/src/maven/apache-maven-3.3.3/maven-settings-builder/src/main/java/org/apache/maven/settings/validation/DefaultSettingsValidator.java
deleted file mode 100644
index 5d17456d..00000000
--- a/framework/src/maven/apache-maven-3.3.3/maven-settings-builder/src/main/java/org/apache/maven/settings/validation/DefaultSettingsValidator.java
+++ /dev/null
@@ -1,285 +0,0 @@
-package org.apache.maven.settings.validation;
-
-/*
- * 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.
- */
-
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-
-import org.apache.maven.settings.Mirror;
-import org.apache.maven.settings.Profile;
-import org.apache.maven.settings.Repository;
-import org.apache.maven.settings.Proxy;
-import org.apache.maven.settings.Server;
-import org.apache.maven.settings.Settings;
-import org.apache.maven.settings.building.SettingsProblem.Severity;
-import org.apache.maven.settings.building.SettingsProblemCollector;
-import org.codehaus.plexus.component.annotations.Component;
-import org.codehaus.plexus.util.StringUtils;
-
-/**
- * @author Milos Kleint
- */
-@Component( role = SettingsValidator.class )
-public class DefaultSettingsValidator
- implements SettingsValidator
-{
-
- private static final String ID_REGEX = "[A-Za-z0-9_\\-.]+";
-
- private static final String ILLEGAL_FS_CHARS = "\\/:\"<>|?*";
-
- private static final String ILLEGAL_REPO_ID_CHARS = ILLEGAL_FS_CHARS;
-
- @Override
- public void validate( Settings settings, SettingsProblemCollector problems )
- {
- if ( settings.isUsePluginRegistry() )
- {
- addViolation( problems, Severity.WARNING, "usePluginRegistry", null, "is deprecated and has no effect." );
- }
-
- List<String> pluginGroups = settings.getPluginGroups();
-
- if ( pluginGroups != null )
- {
- for ( int i = 0; i < pluginGroups.size(); i++ )
- {
- String pluginGroup = pluginGroups.get( i ).trim();
-
- if ( StringUtils.isBlank( pluginGroup ) )
- {
- addViolation( problems, Severity.ERROR, "pluginGroups.pluginGroup[" + i + "]", null,
- "must not be empty" );
- }
- else if ( !pluginGroup.matches( ID_REGEX ) )
- {
- addViolation( problems, Severity.ERROR, "pluginGroups.pluginGroup[" + i + "]", null,
- "must denote a valid group id and match the pattern " + ID_REGEX );
- }
- }
- }
-
- List<Server> servers = settings.getServers();
-
- if ( servers != null )
- {
- Set<String> serverIds = new HashSet<String>();
-
- for ( int i = 0; i < servers.size(); i++ )
- {
- Server server = servers.get( i );
-
- validateStringNotEmpty( problems, "servers.server[" + i + "].id", server.getId(), null );
-
- if ( !serverIds.add( server.getId() ) )
- {
- addViolation( problems, Severity.WARNING, "servers.server.id", null,
- "must be unique but found duplicate server with id " + server.getId() );
- }
- }
- }
-
- List<Mirror> mirrors = settings.getMirrors();
-
- if ( mirrors != null )
- {
- for ( Mirror mirror : mirrors )
- {
- validateStringNotEmpty( problems, "mirrors.mirror.id", mirror.getId(), mirror.getUrl() );
-
- validateBannedCharacters( problems, "mirrors.mirror.id", Severity.WARNING, mirror.getId(), null,
- ILLEGAL_REPO_ID_CHARS );
-
- if ( "local".equals( mirror.getId() ) )
- {
- addViolation( problems, Severity.WARNING, "mirrors.mirror.id", null, "must not be 'local'"
- + ", this identifier is reserved for the local repository"
- + ", using it for other repositories will corrupt your repository metadata." );
- }
-
- validateStringNotEmpty( problems, "mirrors.mirror.url", mirror.getUrl(), mirror.getId() );
-
- validateStringNotEmpty( problems, "mirrors.mirror.mirrorOf", mirror.getMirrorOf(), mirror.getId() );
- }
- }
-
- List<Profile> profiles = settings.getProfiles();
-
- if ( profiles != null )
- {
- Set<String> profileIds = new HashSet<String>();
-
- for ( Profile profile : profiles )
- {
- if ( !profileIds.add( profile.getId() ) )
- {
- addViolation( problems, Severity.WARNING, "profiles.profile.id", null,
- "must be unique but found duplicate profile with id " + profile.getId() );
- }
-
- String prefix = "profiles.profile[" + profile.getId() + "].";
-
- validateRepositories( problems, profile.getRepositories(), prefix + "repositories.repository" );
- validateRepositories( problems, profile.getPluginRepositories(), prefix
- + "pluginRepositories.pluginRepository" );
- }
- }
-
- List<Proxy> proxies = settings.getProxies();
-
- if ( proxies != null )
- {
- Set<String> proxyIds = new HashSet<String>();
-
- for ( Proxy proxy : proxies )
- {
- if ( !proxyIds.add( proxy.getId() ) )
- {
- addViolation( problems, Severity.WARNING, "proxies.proxy.id", null,
- "must be unique but found duplicate proxy with id " + proxy.getId() );
- }
- validateStringNotEmpty( problems, "proxies.proxy.host", proxy.getHost(), proxy.getId() );
- }
- }
- }
-
- private void validateRepositories( SettingsProblemCollector problems, List<Repository> repositories, String prefix )
- {
- Set<String> repoIds = new HashSet<String>();
-
- for ( Repository repository : repositories )
- {
- validateStringNotEmpty( problems, prefix + ".id", repository.getId(), repository.getUrl() );
-
- validateBannedCharacters( problems, prefix + ".id", Severity.WARNING, repository.getId(), null,
- ILLEGAL_REPO_ID_CHARS );
-
- if ( "local".equals( repository.getId() ) )
- {
- addViolation( problems, Severity.WARNING, prefix + ".id", null, "must not be 'local'"
- + ", this identifier is reserved for the local repository"
- + ", using it for other repositories will corrupt your repository metadata." );
- }
-
- if ( !repoIds.add( repository.getId() ) )
- {
- addViolation( problems, Severity.WARNING, prefix + ".id", null,
- "must be unique but found duplicate repository with id " + repository.getId() );
- }
-
- validateStringNotEmpty( problems, prefix + ".url", repository.getUrl(), repository.getId() );
-
- if ( "legacy".equals( repository.getLayout() ) )
- {
- addViolation( problems, Severity.WARNING, prefix + ".layout", repository.getId(),
- "uses the unsupported value 'legacy', artifact resolution might fail." );
- }
- }
- }
-
- // ----------------------------------------------------------------------
- // Field validation
- // ----------------------------------------------------------------------
-
- /**
- * Asserts:
- * <p/>
- * <ul>
- * <li><code>string.length != null</code>
- * <li><code>string.length > 0</code>
- * </ul>
- */
- private static boolean validateStringNotEmpty( SettingsProblemCollector problems, String fieldName, String string,
- String sourceHint )
- {
- if ( !validateNotNull( problems, fieldName, string, sourceHint ) )
- {
- return false;
- }
-
- if ( string.length() > 0 )
- {
- return true;
- }
-
- addViolation( problems, Severity.ERROR, fieldName, sourceHint, "is missing" );
-
- return false;
- }
-
- /**
- * Asserts:
- * <p/>
- * <ul>
- * <li><code>string != null</code>
- * </ul>
- */
- private static boolean validateNotNull( SettingsProblemCollector problems, String fieldName, Object object,
- String sourceHint )
- {
- if ( object != null )
- {
- return true;
- }
-
- addViolation( problems, Severity.ERROR, fieldName, sourceHint, "is missing" );
-
- return false;
- }
-
- private static boolean validateBannedCharacters( SettingsProblemCollector problems, String fieldName,
- Severity severity, String string, String sourceHint,
- String banned )
- {
- if ( string != null )
- {
- for ( int i = string.length() - 1; i >= 0; i-- )
- {
- if ( banned.indexOf( string.charAt( i ) ) >= 0 )
- {
- addViolation( problems, severity, fieldName, sourceHint,
- "must not contain any of these characters " + banned + " but found "
- + string.charAt( i ) );
- return false;
- }
- }
- }
-
- return true;
- }
-
- private static void addViolation( SettingsProblemCollector problems, Severity severity, String fieldName,
- String sourceHint, String message )
- {
- StringBuilder buffer = new StringBuilder( 256 );
- buffer.append( '\'' ).append( fieldName ).append( '\'' );
-
- if ( sourceHint != null )
- {
- buffer.append( " for " ).append( sourceHint );
- }
-
- buffer.append( ' ' ).append( message );
-
- problems.add( severity, buffer.toString(), -1, -1, null );
- }
-
-}