Categories:
Audio (13)
Biotech (29)
Bytecode (36)
Database (77)
Framework (7)
Game (7)
General (507)
Graphics (53)
I/O (35)
IDE (2)
JAR Tools (102)
JavaBeans (21)
JDBC (121)
JDK (426)
JSP (20)
Logging (108)
Mail (58)
Messaging (8)
Network (84)
PDF (97)
Report (7)
Scripting (84)
Security (32)
Server (121)
Servlet (26)
SOAP (24)
Testing (54)
Web (15)
XML (322)
Collections:
Other Resources:
maven-core-3.5.4.jar - Maven Core Module
maven-core-3.5.4.jar is the JAR file for Apache Maven 3.5.4 Core module.
Apache Maven is a software project management and comprehension tool.
JAR File Size and Download Location:
File: 2018-06-17 19:33 630101 lib\maven-core-3.5.4.jar Download: Apache Maven Website
✍: FYIcenter.com
⏎ org/apache/maven/toolchain/DefaultToolchain.java
package org.apache.maven.toolchain;
/*
* 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.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Properties;
import org.apache.maven.toolchain.model.ToolchainModel;
import org.codehaus.plexus.logging.Logger;
/**
* Default abstract toolchain implementation, to be used as base class for any toolchain implementation
* to avoid rewriting usual code.
*
* @author mkleint
* @since 2.0.9
*/
public abstract class DefaultToolchain // should have been AbstractToolchain...
implements Toolchain, ToolchainPrivate
{
private String type;
private Map<String, RequirementMatcher> provides = new HashMap<>();
public static final String KEY_TYPE = "type"; //NOI18N
private ToolchainModel model;
private Logger logger;
/**
*
* @param model the model, must not be {@code null}
* @param logger the logger, must not be {@code null}
*/
protected DefaultToolchain( ToolchainModel model, Logger logger )
{
this.model = model;
this.logger = logger;
}
/**
*
* @param model the model, must not be {@code null}
* @param type the type
* @param logger the logger, must not be {@code null}
*/
protected DefaultToolchain( ToolchainModel model, String type, Logger logger )
{
this( model, logger );
this.type = type;
}
@Override
public final String getType()
{
return type != null ? type : model.getType();
}
@Override
public final ToolchainModel getModel()
{
return model;
}
public final void addProvideToken( String type, RequirementMatcher matcher )
{
provides.put( type, matcher );
}
@Override
public boolean matchesRequirements( Map<String, String> requirements )
{
for ( Map.Entry<String, String> requirement : requirements.entrySet() )
{
String key = requirement.getKey();
RequirementMatcher matcher = provides.get( key );
if ( matcher == null )
{
getLog().debug( "Toolchain " + this + " is missing required property: " + key );
return false;
}
if ( !matcher.matches( requirement.getValue() ) )
{
getLog().debug( "Toolchain " + this + " doesn't match required property: " + key );
return false;
}
}
return true;
}
protected Logger getLog()
{
return logger;
}
@Override
public boolean equals( Object obj )
{
if ( obj == null )
{
return false;
}
if ( this == obj )
{
return true;
}
if ( !( obj instanceof DefaultToolchain ) )
{
return false;
}
DefaultToolchain other = (DefaultToolchain) obj;
if ( type == null ? other.type != null : !type.equals( other.type ) )
{
return false;
}
Properties thisProvides = this.getModel().getProvides();
Properties otherProvides = other.getModel().getProvides();
if ( thisProvides == null ? otherProvides != null : !thisProvides.equals( otherProvides ) )
{
return false;
}
return true;
}
@Override
public int hashCode()
{
int hashCode = ( type == null ) ? 0 : type.hashCode();
if ( this.getModel().getProvides() != null )
{
hashCode = 31 * hashCode + this.getModel().getProvides().hashCode();
}
return hashCode;
}
@Override
public String toString()
{
StringBuilder builder = new StringBuilder();
builder.append( "type:" ).append( getType() );
builder.append( '{' );
Iterator<Map.Entry<String, RequirementMatcher>> providesIter = provides.entrySet().iterator();
while ( providesIter.hasNext() )
{
Map.Entry<String, RequirementMatcher> provideEntry = providesIter.next();
builder.append( provideEntry.getKey() ).append( " = " ).append( provideEntry.getValue() );
if ( providesIter.hasNext() )
{
builder.append( ';' );
}
}
builder.append( '}' );
return builder.toString();
}
}
⏎ org/apache/maven/toolchain/DefaultToolchain.java
Or download all of them as a single archive file:
File name: maven-core-3.5.4-src.zip File size: 515973 bytes Release date: 2018-06-17 Download
⇒ maven-compat-3.5.4.jar - Maven Compact Module
⇐ apache-maven-3.5.4-bin.zip - Apache Maven Binary Package
2023-06-19, ≈105🔥, 0💬
Popular Posts:
JLayer is a library that decodes/plays/converts MPEG 1/2/2.5 Layer 1/2/3 (i.e. MP3) in real time for...
JDK 8 tools.jar is the JAR file for JDK 8 tools. It contains Java classes to support different JDK t...
JDK 11 jdk.charsets.jmod is the JMOD file for JDK 11 Charsets module. JDK 11 Charsets module compile...
How to download and install JDK (Java Development Kit) 8? If you want to write Java applications, yo...
JDK 17 jdk.javadoc.jmod is the JMOD file for JDK 17 Java Document tool, which can be invoked by the ...