You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by hb...@apache.org on 2017/01/15 19:24:18 UTC
[44/53] [abbrv] [partial] maven-resolver git commit: [MNG-6007]
renamed Aether to Maven Artifact Resolver
http://git-wip-us.apache.org/repos/asf/maven-resolver/blob/3a1b8ae0/aether-api/src/main/java/org/eclipse/aether/resolution/DependencyRequest.java
----------------------------------------------------------------------
diff --git a/aether-api/src/main/java/org/eclipse/aether/resolution/DependencyRequest.java b/aether-api/src/main/java/org/eclipse/aether/resolution/DependencyRequest.java
deleted file mode 100644
index 138304a..0000000
--- a/aether-api/src/main/java/org/eclipse/aether/resolution/DependencyRequest.java
+++ /dev/null
@@ -1,187 +0,0 @@
-package org.eclipse.aether.resolution;
-
-/*
- * 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 org.eclipse.aether.RepositorySystem;
-import org.eclipse.aether.RepositorySystemSession;
-import org.eclipse.aether.RequestTrace;
-import org.eclipse.aether.artifact.Artifact;
-import org.eclipse.aether.collection.CollectRequest;
-import org.eclipse.aether.graph.DependencyFilter;
-import org.eclipse.aether.graph.DependencyNode;
-
-/**
- * A request to resolve transitive dependencies. This request can either be supplied with a {@link CollectRequest} to
- * calculate the transitive dependencies or with an already resolved dependency graph.
- *
- * @see RepositorySystem#resolveDependencies(RepositorySystemSession, DependencyRequest)
- * @see Artifact#getFile()
- */
-public final class DependencyRequest
-{
-
- private DependencyNode root;
-
- private CollectRequest collectRequest;
-
- private DependencyFilter filter;
-
- private RequestTrace trace;
-
- /**
- * Creates an uninitialized request. Note that either {@link #setRoot(DependencyNode)} or
- * {@link #setCollectRequest(CollectRequest)} must eventually be called to create a valid request.
- */
- public DependencyRequest()
- {
- // enables default constructor
- }
-
- /**
- * Creates a request for the specified dependency graph and with the given resolution filter.
- *
- * @param node The root node of the dependency graph whose artifacts should be resolved, may be {@code null}.
- * @param filter The resolution filter to use, may be {@code null}.
- */
- public DependencyRequest( DependencyNode node, DependencyFilter filter )
- {
- setRoot( node );
- setFilter( filter );
- }
-
- /**
- * Creates a request for the specified collect request and with the given resolution filter.
- *
- * @param request The collect request used to calculate the dependency graph whose artifacts should be resolved, may
- * be {@code null}.
- * @param filter The resolution filter to use, may be {@code null}.
- */
- public DependencyRequest( CollectRequest request, DependencyFilter filter )
- {
- setCollectRequest( request );
- setFilter( filter );
- }
-
- /**
- * Gets the root node of the dependency graph whose artifacts should be resolved.
- *
- * @return The root node of the dependency graph or {@code null} if none.
- */
- public DependencyNode getRoot()
- {
- return root;
- }
-
- /**
- * Sets the root node of the dependency graph whose artifacts should be resolved. When this request is processed,
- * the nodes of the given dependency graph will be updated to refer to the resolved artifacts. Eventually, either
- * {@link #setRoot(DependencyNode)} or {@link #setCollectRequest(CollectRequest)} must be called to create a valid
- * request.
- *
- * @param root The root node of the dependency graph, may be {@code null}.
- * @return This request for chaining, never {@code null}.
- */
- public DependencyRequest setRoot( DependencyNode root )
- {
- this.root = root;
- return this;
- }
-
- /**
- * Gets the collect request used to calculate the dependency graph whose artifacts should be resolved.
- *
- * @return The collect request or {@code null} if none.
- */
- public CollectRequest getCollectRequest()
- {
- return collectRequest;
- }
-
- /**
- * Sets the collect request used to calculate the dependency graph whose artifacts should be resolved. Eventually,
- * either {@link #setRoot(DependencyNode)} or {@link #setCollectRequest(CollectRequest)} must be called to create a
- * valid request. If this request is supplied with a dependency node via {@link #setRoot(DependencyNode)}, the
- * collect request is ignored.
- *
- * @param collectRequest The collect request, may be {@code null}.
- * @return This request for chaining, never {@code null}.
- */
- public DependencyRequest setCollectRequest( CollectRequest collectRequest )
- {
- this.collectRequest = collectRequest;
- return this;
- }
-
- /**
- * Gets the resolution filter used to select which artifacts of the dependency graph should be resolved.
- *
- * @return The resolution filter or {@code null} to resolve all artifacts of the dependency graph.
- */
- public DependencyFilter getFilter()
- {
- return filter;
- }
-
- /**
- * Sets the resolution filter used to select which artifacts of the dependency graph should be resolved. For
- * example, use this filter to restrict resolution to dependencies of a certain scope.
- *
- * @param filter The resolution filter, may be {@code null} to resolve all artifacts of the dependency graph.
- * @return This request for chaining, never {@code null}.
- */
- public DependencyRequest setFilter( DependencyFilter filter )
- {
- this.filter = filter;
- return this;
- }
-
- /**
- * Gets the trace information that describes the higher level request/operation in which this request is issued.
- *
- * @return The trace information about the higher level operation or {@code null} if none.
- */
- public RequestTrace getTrace()
- {
- return trace;
- }
-
- /**
- * Sets the trace information that describes the higher level request/operation in which this request is issued.
- *
- * @param trace The trace information about the higher level operation, may be {@code null}.
- * @return This request for chaining, never {@code null}.
- */
- public DependencyRequest setTrace( RequestTrace trace )
- {
- this.trace = trace;
- return this;
- }
-
- @Override
- public String toString()
- {
- if ( root != null )
- {
- return String.valueOf( root );
- }
- return String.valueOf( collectRequest );
- }
-
-}
http://git-wip-us.apache.org/repos/asf/maven-resolver/blob/3a1b8ae0/aether-api/src/main/java/org/eclipse/aether/resolution/DependencyResolutionException.java
----------------------------------------------------------------------
diff --git a/aether-api/src/main/java/org/eclipse/aether/resolution/DependencyResolutionException.java b/aether-api/src/main/java/org/eclipse/aether/resolution/DependencyResolutionException.java
deleted file mode 100644
index 2c12b57..0000000
--- a/aether-api/src/main/java/org/eclipse/aether/resolution/DependencyResolutionException.java
+++ /dev/null
@@ -1,83 +0,0 @@
-package org.eclipse.aether.resolution;
-
-/*
- * 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 org.eclipse.aether.RepositoryException;
-
-/**
- * Thrown in case of a unresolvable dependencies.
- */
-public class DependencyResolutionException
- extends RepositoryException
-{
-
- private final transient DependencyResult result;
-
- /**
- * Creates a new exception with the specified result and cause.
- *
- * @param result The dependency result at the point the exception occurred, may be {@code null}.
- * @param cause The exception that caused this one, may be {@code null}.
- */
- public DependencyResolutionException( DependencyResult result, Throwable cause )
- {
- super( getMessage( cause ), cause );
- this.result = result;
- }
-
- /**
- * Creates a new exception with the specified result, detail message and cause.
- *
- * @param result The dependency result at the point the exception occurred, may be {@code null}.
- * @param message The detail message, may be {@code null}.
- * @param cause The exception that caused this one, may be {@code null}.
- */
- public DependencyResolutionException( DependencyResult result, String message, Throwable cause )
- {
- super( message, cause );
- this.result = result;
- }
-
- private static String getMessage( Throwable cause )
- {
- String msg = null;
- if ( cause != null )
- {
- msg = cause.getMessage();
- }
- if ( msg == null || msg.length() <= 0 )
- {
- msg = "Could not resolve transitive dependencies";
- }
- return msg;
- }
-
- /**
- * Gets the dependency result at the point the exception occurred. Despite being incomplete, callers might want to
- * use this result to fail gracefully and continue their operation with whatever interim data has been gathered.
- *
- * @return The dependency result or {@code null} if unknown.
- */
- public DependencyResult getResult()
- {
- return result;
- }
-
-}
http://git-wip-us.apache.org/repos/asf/maven-resolver/blob/3a1b8ae0/aether-api/src/main/java/org/eclipse/aether/resolution/DependencyResult.java
----------------------------------------------------------------------
diff --git a/aether-api/src/main/java/org/eclipse/aether/resolution/DependencyResult.java b/aether-api/src/main/java/org/eclipse/aether/resolution/DependencyResult.java
deleted file mode 100644
index 030e923..0000000
--- a/aether-api/src/main/java/org/eclipse/aether/resolution/DependencyResult.java
+++ /dev/null
@@ -1,195 +0,0 @@
-package org.eclipse.aether.resolution;
-
-/*
- * 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.Collections;
-import java.util.List;
-
-import org.eclipse.aether.RepositorySystem;
-import org.eclipse.aether.RepositorySystemSession;
-import org.eclipse.aether.graph.DependencyCycle;
-import org.eclipse.aether.graph.DependencyNode;
-
-/**
- * The result of a dependency resolution request.
- *
- * @see RepositorySystem#resolveDependencies(RepositorySystemSession, DependencyRequest)
- */
-public final class DependencyResult
-{
-
- private final DependencyRequest request;
-
- private DependencyNode root;
-
- private List<DependencyCycle> cycles;
-
- private List<Exception> collectExceptions;
-
- private List<ArtifactResult> artifactResults;
-
- /**
- * Creates a new result for the specified request.
- *
- * @param request The resolution request, must not be {@code null}.
- */
- public DependencyResult( DependencyRequest request )
- {
- if ( request == null )
- {
- throw new IllegalArgumentException( "dependency request has not been specified" );
- }
- this.request = request;
- root = request.getRoot();
- cycles = Collections.emptyList();
- collectExceptions = Collections.emptyList();
- artifactResults = Collections.emptyList();
- }
-
- /**
- * Gets the resolution request that was made.
- *
- * @return The resolution request, never {@code null}.
- */
- public DependencyRequest getRequest()
- {
- return request;
- }
-
- /**
- * Gets the root node of the resolved dependency graph. Note that this dependency graph might be
- * incomplete/unfinished in case of {@link #getCollectExceptions()} indicating errors during its calculation.
- *
- * @return The root node of the resolved dependency graph or {@code null} if none.
- */
- public DependencyNode getRoot()
- {
- return root;
- }
-
- /**
- * Sets the root node of the resolved dependency graph.
- *
- * @param root The root node of the resolved dependency graph, may be {@code null}.
- * @return This result for chaining, never {@code null}.
- */
- public DependencyResult setRoot( DependencyNode root )
- {
- this.root = root;
- return this;
- }
-
- /**
- * Gets the dependency cycles that were encountered while building the dependency graph. Note that dependency cycles
- * will only be reported here if the underlying request was created from a
- * {@link org.eclipse.aether.collection.CollectRequest CollectRequest}. If the underlying {@link DependencyRequest}
- * was created from an existing dependency graph, information about cycles will not be available in this result.
- *
- * @return The dependency cycles in the (raw) graph, never {@code null}.
- */
- public List<DependencyCycle> getCycles()
- {
- return cycles;
- }
-
- /**
- * Records the specified dependency cycles while building the dependency graph.
- *
- * @param cycles The dependency cycles to record, may be {@code null}.
- * @return This result for chaining, never {@code null}.
- */
- public DependencyResult setCycles( List<DependencyCycle> cycles )
- {
- if ( cycles == null )
- {
- this.cycles = Collections.emptyList();
- }
- else
- {
- this.cycles = cycles;
- }
- return this;
- }
-
- /**
- * Gets the exceptions that occurred while building the dependency graph.
- *
- * @return The exceptions that occurred, never {@code null}.
- */
- public List<Exception> getCollectExceptions()
- {
- return collectExceptions;
- }
-
- /**
- * Records the specified exceptions while building the dependency graph.
- *
- * @param exceptions The exceptions to record, may be {@code null}.
- * @return This result for chaining, never {@code null}.
- */
- public DependencyResult setCollectExceptions( List<Exception> exceptions )
- {
- if ( exceptions == null )
- {
- this.collectExceptions = Collections.emptyList();
- }
- else
- {
- this.collectExceptions = exceptions;
- }
- return this;
- }
-
- /**
- * Gets the resolution results for the dependency artifacts that matched {@link DependencyRequest#getFilter()}.
- *
- * @return The resolution results for the dependency artifacts, never {@code null}.
- */
- public List<ArtifactResult> getArtifactResults()
- {
- return artifactResults;
- }
-
- /**
- * Sets the resolution results for the artifacts that matched {@link DependencyRequest#getFilter()}.
- *
- * @param results The resolution results for the artifacts, may be {@code null}.
- * @return This result for chaining, never {@code null}.
- */
- public DependencyResult setArtifactResults( List<ArtifactResult> results )
- {
- if ( results == null )
- {
- this.artifactResults = Collections.emptyList();
- }
- else
- {
- this.artifactResults = results;
- }
- return this;
- }
-
- @Override
- public String toString()
- {
- return String.valueOf( artifactResults );
- }
-
-}
http://git-wip-us.apache.org/repos/asf/maven-resolver/blob/3a1b8ae0/aether-api/src/main/java/org/eclipse/aether/resolution/MetadataRequest.java
----------------------------------------------------------------------
diff --git a/aether-api/src/main/java/org/eclipse/aether/resolution/MetadataRequest.java b/aether-api/src/main/java/org/eclipse/aether/resolution/MetadataRequest.java
deleted file mode 100644
index 86063ff..0000000
--- a/aether-api/src/main/java/org/eclipse/aether/resolution/MetadataRequest.java
+++ /dev/null
@@ -1,232 +0,0 @@
-package org.eclipse.aether.resolution;
-
-/*
- * 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 org.eclipse.aether.RepositorySystem;
-import org.eclipse.aether.RepositorySystemSession;
-import org.eclipse.aether.RequestTrace;
-import org.eclipse.aether.metadata.Metadata;
-import org.eclipse.aether.repository.RemoteRepository;
-
-/**
- * A request to resolve metadata from either a remote repository or the local repository.
- *
- * @see RepositorySystem#resolveMetadata(RepositorySystemSession, java.util.Collection)
- * @see Metadata#getFile()
- */
-public final class MetadataRequest
-{
-
- private Metadata metadata;
-
- private RemoteRepository repository;
-
- private String context = "";
-
- private boolean deleteLocalCopyIfMissing;
-
- private boolean favorLocalRepository;
-
- private RequestTrace trace;
-
- /**
- * Creates an uninitialized request.
- */
- public MetadataRequest()
- {
- // enables default constructor
- }
-
- /**
- * Creates a request to resolve the specified metadata from the local repository.
- *
- * @param metadata The metadata to resolve, may be {@code null}.
- */
- public MetadataRequest( Metadata metadata )
- {
- setMetadata( metadata );
- }
-
- /**
- * Creates a request with the specified properties.
- *
- * @param metadata The metadata to resolve, may be {@code null}.
- * @param repository The repository to resolve the metadata from, may be {@code null} to resolve from the local
- * repository.
- * @param context The context in which this request is made, may be {@code null}.
- */
- public MetadataRequest( Metadata metadata, RemoteRepository repository, String context )
- {
- setMetadata( metadata );
- setRepository( repository );
- setRequestContext( context );
- }
-
- /**
- * Gets the metadata to resolve.
- *
- * @return The metadata or {@code null} if not set.
- */
- public Metadata getMetadata()
- {
- return metadata;
- }
-
- /**
- * Sets the metadata to resolve.
- *
- * @param metadata The metadata, may be {@code null}.
- * @return This request for chaining, never {@code null}.
- */
- public MetadataRequest setMetadata( Metadata metadata )
- {
- this.metadata = metadata;
- return this;
- }
-
- /**
- * Gets the repository from which the metadata should be resolved.
- *
- * @return The repository or {@code null} to resolve from the local repository.
- */
- public RemoteRepository getRepository()
- {
- return repository;
- }
-
- /**
- * Sets the repository from which the metadata should be resolved.
- *
- * @param repository The repository, may be {@code null} to resolve from the local repository.
- * @return This request for chaining, never {@code null}.
- */
- public MetadataRequest setRepository( RemoteRepository repository )
- {
- this.repository = repository;
- return this;
- }
-
- /**
- * Gets the context in which this request is made.
- *
- * @return The context, never {@code null}.
- */
- public String getRequestContext()
- {
- return context;
- }
-
- /**
- * Sets the context in which this request is made.
- *
- * @param context The context, may be {@code null}.
- * @return This request for chaining, never {@code null}.
- */
- public MetadataRequest setRequestContext( String context )
- {
- this.context = ( context != null ) ? context : "";
- return this;
- }
-
- /**
- * Indicates whether the locally cached copy of the metadata should be removed if the corresponding file does not
- * exist (any more) in the remote repository.
- *
- * @return {@code true} if locally cached metadata should be deleted if no corresponding remote file exists,
- * {@code false} to keep the local copy.
- */
- public boolean isDeleteLocalCopyIfMissing()
- {
- return deleteLocalCopyIfMissing;
- }
-
- /**
- * Controls whether the locally cached copy of the metadata should be removed if the corresponding file does not
- * exist (any more) in the remote repository.
- *
- * @param deleteLocalCopyIfMissing {@code true} if locally cached metadata should be deleted if no corresponding
- * remote file exists, {@code false} to keep the local copy.
- * @return This request for chaining, never {@code null}.
- */
- public MetadataRequest setDeleteLocalCopyIfMissing( boolean deleteLocalCopyIfMissing )
- {
- this.deleteLocalCopyIfMissing = deleteLocalCopyIfMissing;
- return this;
- }
-
- /**
- * Indicates whether the metadata resolution should be suppressed if the corresponding metadata of the local
- * repository is up-to-date according to the update policy of the remote repository. In this case, the metadata
- * resolution will even be suppressed if no local copy of the remote metadata exists yet.
- *
- * @return {@code true} to suppress resolution of remote metadata if the corresponding metadata of the local
- * repository is up-to-date, {@code false} to resolve the remote metadata normally according to the update
- * policy.
- */
- public boolean isFavorLocalRepository()
- {
- return favorLocalRepository;
- }
-
- /**
- * Controls resolution of remote metadata when already corresponding metadata of the local repository exists. In
- * cases where the local repository's metadata is sufficient and going to be preferred, resolution of the remote
- * metadata can be suppressed to avoid unnecessary network access.
- *
- * @param favorLocalRepository {@code true} to suppress resolution of remote metadata if the corresponding metadata
- * of the local repository is up-to-date, {@code false} to resolve the remote metadata normally according
- * to the update policy.
- * @return This request for chaining, never {@code null}.
- */
- public MetadataRequest setFavorLocalRepository( boolean favorLocalRepository )
- {
- this.favorLocalRepository = favorLocalRepository;
- return this;
- }
-
- /**
- * Gets the trace information that describes the higher level request/operation in which this request is issued.
- *
- * @return The trace information about the higher level operation or {@code null} if none.
- */
- public RequestTrace getTrace()
- {
- return trace;
- }
-
- /**
- * Sets the trace information that describes the higher level request/operation in which this request is issued.
- *
- * @param trace The trace information about the higher level operation, may be {@code null}.
- * @return This request for chaining, never {@code null}.
- */
- public MetadataRequest setTrace( RequestTrace trace )
- {
- this.trace = trace;
- return this;
- }
-
- @Override
- public String toString()
- {
- return getMetadata() + " < " + getRepository();
- }
-
-}
http://git-wip-us.apache.org/repos/asf/maven-resolver/blob/3a1b8ae0/aether-api/src/main/java/org/eclipse/aether/resolution/MetadataResult.java
----------------------------------------------------------------------
diff --git a/aether-api/src/main/java/org/eclipse/aether/resolution/MetadataResult.java b/aether-api/src/main/java/org/eclipse/aether/resolution/MetadataResult.java
deleted file mode 100644
index 2bba499..0000000
--- a/aether-api/src/main/java/org/eclipse/aether/resolution/MetadataResult.java
+++ /dev/null
@@ -1,166 +0,0 @@
-package org.eclipse.aether.resolution;
-
-/*
- * 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 org.eclipse.aether.RepositorySystem;
-import org.eclipse.aether.RepositorySystemSession;
-import org.eclipse.aether.metadata.Metadata;
-import org.eclipse.aether.transfer.MetadataNotFoundException;
-
-/**
- * The result of a metadata resolution request.
- *
- * @see RepositorySystem#resolveMetadata(RepositorySystemSession, java.util.Collection)
- */
-public final class MetadataResult
-{
-
- private final MetadataRequest request;
-
- private Exception exception;
-
- private boolean updated;
-
- private Metadata metadata;
-
- /**
- * Creates a new result for the specified request.
- *
- * @param request The resolution request, must not be {@code null}.
- */
- public MetadataResult( MetadataRequest request )
- {
- if ( request == null )
- {
- throw new IllegalArgumentException( "metadata request has not been specified" );
- }
- this.request = request;
- }
-
- /**
- * Gets the resolution request that was made.
- *
- * @return The resolution request, never {@code null}.
- */
- public MetadataRequest getRequest()
- {
- return request;
- }
-
- /**
- * Gets the resolved metadata (if any).
- *
- * @return The resolved metadata or {@code null} if the resolution failed.
- */
- public Metadata getMetadata()
- {
- return metadata;
- }
-
- /**
- * Sets the resolved metadata.
- *
- * @param metadata The resolved metadata, may be {@code null} if the resolution failed.
- * @return This result for chaining, never {@code null}.
- */
- public MetadataResult setMetadata( Metadata metadata )
- {
- this.metadata = metadata;
- return this;
- }
-
- /**
- * Records the specified exception while resolving the metadata.
- *
- * @param exception The exception to record, may be {@code null}.
- * @return This result for chaining, never {@code null}.
- */
- public MetadataResult setException( Exception exception )
- {
- this.exception = exception;
- return this;
- }
-
- /**
- * Gets the exception that occurred while resolving the metadata.
- *
- * @return The exception that occurred or {@code null} if none.
- */
- public Exception getException()
- {
- return exception;
- }
-
- /**
- * Sets the updated flag for the metadata.
- *
- * @param updated {@code true} if the metadata was actually fetched from the remote repository during the
- * resolution, {@code false} if the metadata was resolved from a locally cached copy.
- * @return This result for chaining, never {@code null}.
- */
- public MetadataResult setUpdated( boolean updated )
- {
- this.updated = updated;
- return this;
- }
-
- /**
- * Indicates whether the metadata was actually fetched from the remote repository or resolved from the local cache.
- * If metadata has been locally cached during a previous resolution request and this local copy is still up-to-date
- * according to the remote repository's update policy, no remote access is made.
- *
- * @return {@code true} if the metadata was actually fetched from the remote repository during the resolution,
- * {@code false} if the metadata was resolved from a locally cached copy.
- */
- public boolean isUpdated()
- {
- return updated;
- }
-
- /**
- * Indicates whether the requested metadata was resolved. Note that the metadata might have been successfully
- * resolved (from the local cache) despite {@link #getException()} indicating a transfer error while trying to
- * refetch the metadata from the remote repository.
- *
- * @return {@code true} if the metadata was resolved, {@code false} otherwise.
- * @see Metadata#getFile()
- */
- public boolean isResolved()
- {
- return getMetadata() != null && getMetadata().getFile() != null;
- }
-
- /**
- * Indicates whether the requested metadata is not present in the remote repository.
- *
- * @return {@code true} if the metadata is not present in the remote repository, {@code false} otherwise.
- */
- public boolean isMissing()
- {
- return getException() instanceof MetadataNotFoundException;
- }
-
- @Override
- public String toString()
- {
- return getMetadata() + ( isUpdated() ? " (updated)" : " (cached)" );
- }
-
-}
http://git-wip-us.apache.org/repos/asf/maven-resolver/blob/3a1b8ae0/aether-api/src/main/java/org/eclipse/aether/resolution/ResolutionErrorPolicy.java
----------------------------------------------------------------------
diff --git a/aether-api/src/main/java/org/eclipse/aether/resolution/ResolutionErrorPolicy.java b/aether-api/src/main/java/org/eclipse/aether/resolution/ResolutionErrorPolicy.java
deleted file mode 100644
index 5158fa0..0000000
--- a/aether-api/src/main/java/org/eclipse/aether/resolution/ResolutionErrorPolicy.java
+++ /dev/null
@@ -1,82 +0,0 @@
-package org.eclipse.aether.resolution;
-
-/*
- * 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 org.eclipse.aether.RepositorySystemSession;
-import org.eclipse.aether.artifact.Artifact;
-import org.eclipse.aether.metadata.Metadata;
-
-/**
- * Controls the caching of resolution errors for artifacts/metadata from remote repositories. If caching is enabled for
- * a given resource, a marker will be set (usually somewhere in the local repository) to suppress repeated resolution
- * attempts for the broken resource, thereby avoiding expensive but useless network IO. The error marker is considered
- * stale once the repository's update policy has expired at which point a future resolution attempt will be allowed.
- * Error caching considers the current network settings such that fixes to the configuration like authentication or
- * proxy automatically trigger revalidation with the remote side regardless of the time elapsed since the previous
- * resolution error.
- *
- * @see RepositorySystemSession#getResolutionErrorPolicy()
- */
-public interface ResolutionErrorPolicy
-{
-
- /**
- * Bit mask indicating that resolution errors should not be cached in the local repository. This forces the system
- * to always query the remote repository for locally missing artifacts/metadata.
- */
- int CACHE_DISABLED = 0x00;
-
- /**
- * Bit flag indicating whether missing artifacts/metadata should be cached in the local repository. If caching is
- * enabled, resolution will not be reattempted until the update policy for the affected resource has expired.
- */
- int CACHE_NOT_FOUND = 0x01;
-
- /**
- * Bit flag indicating whether connectivity/transfer errors (e.g. unreachable host, bad authentication) should be
- * cached in the local repository. If caching is enabled, resolution will not be reattempted until the update policy
- * for the affected resource has expired.
- */
- int CACHE_TRANSFER_ERROR = 0x02;
-
- /**
- * Bit mask indicating that all resolution errors should be cached in the local repository.
- */
- int CACHE_ALL = CACHE_NOT_FOUND | CACHE_TRANSFER_ERROR;
-
- /**
- * Gets the error policy for an artifact.
- *
- * @param session The repository session during which the policy is determined, must not be {@code null}.
- * @param request The policy request holding further details, must not be {@code null}.
- * @return The bit mask describing the desired error policy.
- */
- int getArtifactPolicy( RepositorySystemSession session, ResolutionErrorPolicyRequest<Artifact> request );
-
- /**
- * Gets the error policy for some metadata.
- *
- * @param session The repository session during which the policy is determined, must not be {@code null}.
- * @param request The policy request holding further details, must not be {@code null}.
- * @return The bit mask describing the desired error policy.
- */
- int getMetadataPolicy( RepositorySystemSession session, ResolutionErrorPolicyRequest<Metadata> request );
-
-}
http://git-wip-us.apache.org/repos/asf/maven-resolver/blob/3a1b8ae0/aether-api/src/main/java/org/eclipse/aether/resolution/ResolutionErrorPolicyRequest.java
----------------------------------------------------------------------
diff --git a/aether-api/src/main/java/org/eclipse/aether/resolution/ResolutionErrorPolicyRequest.java b/aether-api/src/main/java/org/eclipse/aether/resolution/ResolutionErrorPolicyRequest.java
deleted file mode 100644
index 9126914..0000000
--- a/aether-api/src/main/java/org/eclipse/aether/resolution/ResolutionErrorPolicyRequest.java
+++ /dev/null
@@ -1,107 +0,0 @@
-package org.eclipse.aether.resolution;
-
-/*
- * 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 org.eclipse.aether.repository.RemoteRepository;
-
-/**
- * A query for the resolution error policy for a given artifact/metadata.
- *
- * @param <T> The type of the affected repository item (artifact or metadata).
- * @see ResolutionErrorPolicy
- */
-public final class ResolutionErrorPolicyRequest<T>
-{
-
- private T item;
-
- private RemoteRepository repository;
-
- /**
- * Creates an uninitialized request.
- */
- public ResolutionErrorPolicyRequest()
- {
- // enables default constructor
- }
-
- /**
- * Creates a request for the specified artifact/metadata and remote repository.
- *
- * @param item The artifact/metadata for which to determine the error policy, may be {@code null}.
- * @param repository The repository from which the resolution is attempted, may be {@code null}.
- */
- public ResolutionErrorPolicyRequest( T item, RemoteRepository repository )
- {
- setItem( item );
- setRepository( repository );
- }
-
- /**
- * Gets the artifact/metadata for which to determine the error policy.
- *
- * @return The artifact/metadata for which to determine the error policy or {@code null} if not set.
- */
- public T getItem()
- {
- return item;
- }
-
- /**
- * Sets the artifact/metadata for which to determine the error policy.
- *
- * @param item The artifact/metadata for which to determine the error policy, may be {@code null}.
- * @return This request for chaining, never {@code null}.
- */
- public ResolutionErrorPolicyRequest<T> setItem( T item )
- {
- this.item = item;
- return this;
- }
-
- /**
- * Gets the remote repository from which the resolution of the artifact/metadata is attempted.
- *
- * @return The involved remote repository or {@code null} if not set.
- */
- public RemoteRepository getRepository()
- {
- return repository;
- }
-
- /**
- * Sets the remote repository from which the resolution of the artifact/metadata is attempted.
- *
- * @param repository The repository from which the resolution is attempted, may be {@code null}.
- * @return This request for chaining, never {@code null}.
- */
- public ResolutionErrorPolicyRequest<T> setRepository( RemoteRepository repository )
- {
- this.repository = repository;
- return this;
- }
-
- @Override
- public String toString()
- {
- return getItem() + " < " + getRepository();
- }
-
-}
http://git-wip-us.apache.org/repos/asf/maven-resolver/blob/3a1b8ae0/aether-api/src/main/java/org/eclipse/aether/resolution/VersionRangeRequest.java
----------------------------------------------------------------------
diff --git a/aether-api/src/main/java/org/eclipse/aether/resolution/VersionRangeRequest.java b/aether-api/src/main/java/org/eclipse/aether/resolution/VersionRangeRequest.java
deleted file mode 100644
index d6aa16b..0000000
--- a/aether-api/src/main/java/org/eclipse/aether/resolution/VersionRangeRequest.java
+++ /dev/null
@@ -1,190 +0,0 @@
-package org.eclipse.aether.resolution;
-
-/*
- * 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.ArrayList;
-import java.util.Collections;
-import java.util.List;
-
-import org.eclipse.aether.RepositorySystem;
-import org.eclipse.aether.RepositorySystemSession;
-import org.eclipse.aether.RequestTrace;
-import org.eclipse.aether.artifact.Artifact;
-import org.eclipse.aether.repository.RemoteRepository;
-
-/**
- * A request to resolve a version range.
- *
- * @see RepositorySystem#resolveVersionRange(RepositorySystemSession, VersionRangeRequest)
- */
-public final class VersionRangeRequest
-{
-
- private Artifact artifact;
-
- private List<RemoteRepository> repositories = Collections.emptyList();
-
- private String context = "";
-
- private RequestTrace trace;
-
- /**
- * Creates an uninitialized request.
- */
- public VersionRangeRequest()
- {
- // enables default constructor
- }
-
- /**
- * Creates a request with the specified properties.
- *
- * @param artifact The artifact whose version range should be resolved, may be {@code null}.
- * @param repositories The repositories to resolve the version from, may be {@code null}.
- * @param context The context in which this request is made, may be {@code null}.
- */
- public VersionRangeRequest( Artifact artifact, List<RemoteRepository> repositories, String context )
- {
- setArtifact( artifact );
- setRepositories( repositories );
- setRequestContext( context );
- }
-
- /**
- * Gets the artifact whose version range shall be resolved.
- *
- * @return The artifact or {@code null} if not set.
- */
- public Artifact getArtifact()
- {
- return artifact;
- }
-
- /**
- * Sets the artifact whose version range shall be resolved.
- *
- * @param artifact The artifact, may be {@code null}.
- * @return This request for chaining, never {@code null}.
- */
- public VersionRangeRequest setArtifact( Artifact artifact )
- {
- this.artifact = artifact;
- return this;
- }
-
- /**
- * Gets the repositories to resolve the version range from.
- *
- * @return The repositories, never {@code null}.
- */
- public List<RemoteRepository> getRepositories()
- {
- return repositories;
- }
-
- /**
- * Sets the repositories to resolve the version range from.
- *
- * @param repositories The repositories, may be {@code null}.
- * @return This request for chaining, never {@code null}.
- */
- public VersionRangeRequest setRepositories( List<RemoteRepository> repositories )
- {
- if ( repositories == null )
- {
- this.repositories = Collections.emptyList();
- }
- else
- {
- this.repositories = repositories;
- }
- return this;
- }
-
- /**
- * Adds the specified repository for the resolution.
- *
- * @param repository The repository to add, may be {@code null}.
- * @return This request for chaining, never {@code null}.
- */
- public VersionRangeRequest addRepository( RemoteRepository repository )
- {
- if ( repository != null )
- {
- if ( this.repositories.isEmpty() )
- {
- this.repositories = new ArrayList<RemoteRepository>();
- }
- this.repositories.add( repository );
- }
- return this;
- }
-
- /**
- * Gets the context in which this request is made.
- *
- * @return The context, never {@code null}.
- */
- public String getRequestContext()
- {
- return context;
- }
-
- /**
- * Sets the context in which this request is made.
- *
- * @param context The context, may be {@code null}.
- * @return This request for chaining, never {@code null}.
- */
- public VersionRangeRequest setRequestContext( String context )
- {
- this.context = ( context != null ) ? context : "";
- return this;
- }
-
- /**
- * Gets the trace information that describes the higher level request/operation in which this request is issued.
- *
- * @return The trace information about the higher level operation or {@code null} if none.
- */
- public RequestTrace getTrace()
- {
- return trace;
- }
-
- /**
- * Sets the trace information that describes the higher level request/operation in which this request is issued.
- *
- * @param trace The trace information about the higher level operation, may be {@code null}.
- * @return This request for chaining, never {@code null}.
- */
- public VersionRangeRequest setTrace( RequestTrace trace )
- {
- this.trace = trace;
- return this;
- }
-
- @Override
- public String toString()
- {
- return getArtifact() + " < " + getRepositories();
- }
-
-}
http://git-wip-us.apache.org/repos/asf/maven-resolver/blob/3a1b8ae0/aether-api/src/main/java/org/eclipse/aether/resolution/VersionRangeResolutionException.java
----------------------------------------------------------------------
diff --git a/aether-api/src/main/java/org/eclipse/aether/resolution/VersionRangeResolutionException.java b/aether-api/src/main/java/org/eclipse/aether/resolution/VersionRangeResolutionException.java
deleted file mode 100644
index deb0e52..0000000
--- a/aether-api/src/main/java/org/eclipse/aether/resolution/VersionRangeResolutionException.java
+++ /dev/null
@@ -1,105 +0,0 @@
-package org.eclipse.aether.resolution;
-
-/*
- * 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 org.eclipse.aether.RepositoryException;
-
-/**
- * Thrown in case of an unparseable or unresolvable version range.
- */
-public class VersionRangeResolutionException
- extends RepositoryException
-{
-
- private final transient VersionRangeResult result;
-
- /**
- * Creates a new exception with the specified result.
- *
- * @param result The version range result at the point the exception occurred, may be {@code null}.
- */
- public VersionRangeResolutionException( VersionRangeResult result )
- {
- super( getMessage( result ), getCause( result ) );
- this.result = result;
- }
-
- private static String getMessage( VersionRangeResult result )
- {
- StringBuilder buffer = new StringBuilder( 256 );
- buffer.append( "Failed to resolve version range" );
- if ( result != null )
- {
- buffer.append( " for " ).append( result.getRequest().getArtifact() );
- if ( !result.getExceptions().isEmpty() )
- {
- buffer.append( ": " ).append( result.getExceptions().iterator().next().getMessage() );
- }
- }
- return buffer.toString();
- }
-
- private static Throwable getCause( VersionRangeResult result )
- {
- Throwable cause = null;
- if ( result != null && !result.getExceptions().isEmpty() )
- {
- cause = result.getExceptions().get( 0 );
- }
- return cause;
- }
-
- /**
- * Creates a new exception with the specified result and detail message.
- *
- * @param result The version range result at the point the exception occurred, may be {@code null}.
- * @param message The detail message, may be {@code null}.
- */
- public VersionRangeResolutionException( VersionRangeResult result, String message )
- {
- super( message );
- this.result = result;
- }
-
- /**
- * Creates a new exception with the specified result, detail message and cause.
- *
- * @param result The version range result at the point the exception occurred, may be {@code null}.
- * @param message The detail message, may be {@code null}.
- * @param cause The exception that caused this one, may be {@code null}.
- */
- public VersionRangeResolutionException( VersionRangeResult result, String message, Throwable cause )
- {
- super( message, cause );
- this.result = result;
- }
-
- /**
- * Gets the version range result at the point the exception occurred. Despite being incomplete, callers might want
- * to use this result to fail gracefully and continue their operation with whatever interim data has been gathered.
- *
- * @return The version range result or {@code null} if unknown.
- */
- public VersionRangeResult getResult()
- {
- return result;
- }
-
-}
http://git-wip-us.apache.org/repos/asf/maven-resolver/blob/3a1b8ae0/aether-api/src/main/java/org/eclipse/aether/resolution/VersionRangeResult.java
----------------------------------------------------------------------
diff --git a/aether-api/src/main/java/org/eclipse/aether/resolution/VersionRangeResult.java b/aether-api/src/main/java/org/eclipse/aether/resolution/VersionRangeResult.java
deleted file mode 100644
index 4749f7c..0000000
--- a/aether-api/src/main/java/org/eclipse/aether/resolution/VersionRangeResult.java
+++ /dev/null
@@ -1,240 +0,0 @@
-package org.eclipse.aether.resolution;
-
-/*
- * 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.ArrayList;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.aether.RepositorySystem;
-import org.eclipse.aether.RepositorySystemSession;
-import org.eclipse.aether.repository.ArtifactRepository;
-import org.eclipse.aether.version.Version;
-import org.eclipse.aether.version.VersionConstraint;
-
-/**
- * The result of a version range resolution request.
- *
- * @see RepositorySystem#resolveVersionRange(RepositorySystemSession, VersionRangeRequest)
- */
-public final class VersionRangeResult
-{
-
- private final VersionRangeRequest request;
-
- private List<Exception> exceptions;
-
- private List<Version> versions;
-
- private Map<Version, ArtifactRepository> repositories;
-
- private VersionConstraint versionConstraint;
-
- /**
- * Creates a new result for the specified request.
- *
- * @param request The resolution request, must not be {@code null}.
- */
- public VersionRangeResult( VersionRangeRequest request )
- {
- if ( request == null )
- {
- throw new IllegalArgumentException( "version range request has not been specified" );
- }
- this.request = request;
- exceptions = Collections.emptyList();
- versions = Collections.emptyList();
- repositories = Collections.emptyMap();
- }
-
- /**
- * Gets the resolution request that was made.
- *
- * @return The resolution request, never {@code null}.
- */
- public VersionRangeRequest getRequest()
- {
- return request;
- }
-
- /**
- * Gets the exceptions that occurred while resolving the version range.
- *
- * @return The exceptions that occurred, never {@code null}.
- */
- public List<Exception> getExceptions()
- {
- return exceptions;
- }
-
- /**
- * Records the specified exception while resolving the version range.
- *
- * @param exception The exception to record, may be {@code null}.
- * @return This result for chaining, never {@code null}.
- */
- public VersionRangeResult addException( Exception exception )
- {
- if ( exception != null )
- {
- if ( exceptions.isEmpty() )
- {
- exceptions = new ArrayList<Exception>();
- }
- exceptions.add( exception );
- }
- return this;
- }
-
- /**
- * Gets the versions (in ascending order) that matched the requested range.
- *
- * @return The matching versions (if any), never {@code null}.
- */
- public List<Version> getVersions()
- {
- return versions;
- }
-
- /**
- * Adds the specified version to the result. Note that versions must be added in ascending order.
- *
- * @param version The version to add, must not be {@code null}.
- * @return This result for chaining, never {@code null}.
- */
- public VersionRangeResult addVersion( Version version )
- {
- if ( versions.isEmpty() )
- {
- versions = new ArrayList<Version>();
- }
- versions.add( version );
- return this;
- }
-
- /**
- * Sets the versions (in ascending order) matching the requested range.
- *
- * @param versions The matching versions, may be empty or {@code null} if none.
- * @return This result for chaining, never {@code null}.
- */
- public VersionRangeResult setVersions( List<Version> versions )
- {
- if ( versions == null )
- {
- this.versions = Collections.emptyList();
- }
- else
- {
- this.versions = versions;
- }
- return this;
- }
-
- /**
- * Gets the lowest version matching the requested range.
- *
- * @return The lowest matching version or {@code null} if no versions matched the requested range.
- */
- public Version getLowestVersion()
- {
- if ( versions.isEmpty() )
- {
- return null;
- }
- return versions.get( 0 );
- }
-
- /**
- * Gets the highest version matching the requested range.
- *
- * @return The highest matching version or {@code null} if no versions matched the requested range.
- */
- public Version getHighestVersion()
- {
- if ( versions.isEmpty() )
- {
- return null;
- }
- return versions.get( versions.size() - 1 );
- }
-
- /**
- * Gets the repository from which the specified version was resolved.
- *
- * @param version The version whose source repository should be retrieved, must not be {@code null}.
- * @return The repository from which the version was resolved or {@code null} if unknown.
- */
- public ArtifactRepository getRepository( Version version )
- {
- return repositories.get( version );
- }
-
- /**
- * Records the repository from which the specified version was resolved
- *
- * @param version The version whose source repository is to be recorded, must not be {@code null}.
- * @param repository The repository from which the version was resolved, may be {@code null}.
- * @return This result for chaining, never {@code null}.
- */
- public VersionRangeResult setRepository( Version version, ArtifactRepository repository )
- {
- if ( repository != null )
- {
- if ( repositories.isEmpty() )
- {
- repositories = new HashMap<Version, ArtifactRepository>();
- }
- repositories.put( version, repository );
- }
- return this;
- }
-
- /**
- * Gets the version constraint that was parsed from the artifact's version string.
- *
- * @return The parsed version constraint or {@code null}.
- */
- public VersionConstraint getVersionConstraint()
- {
- return versionConstraint;
- }
-
- /**
- * Sets the version constraint that was parsed from the artifact's version string.
- *
- * @param versionConstraint The parsed version constraint, may be {@code null}.
- * @return This result for chaining, never {@code null}.
- */
- public VersionRangeResult setVersionConstraint( VersionConstraint versionConstraint )
- {
- this.versionConstraint = versionConstraint;
- return this;
- }
-
- @Override
- public String toString()
- {
- return String.valueOf( repositories );
- }
-
-}
http://git-wip-us.apache.org/repos/asf/maven-resolver/blob/3a1b8ae0/aether-api/src/main/java/org/eclipse/aether/resolution/VersionRequest.java
----------------------------------------------------------------------
diff --git a/aether-api/src/main/java/org/eclipse/aether/resolution/VersionRequest.java b/aether-api/src/main/java/org/eclipse/aether/resolution/VersionRequest.java
deleted file mode 100644
index 3dde7dd..0000000
--- a/aether-api/src/main/java/org/eclipse/aether/resolution/VersionRequest.java
+++ /dev/null
@@ -1,190 +0,0 @@
-package org.eclipse.aether.resolution;
-
-/*
- * 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.ArrayList;
-import java.util.Collections;
-import java.util.List;
-
-import org.eclipse.aether.RepositorySystem;
-import org.eclipse.aether.RepositorySystemSession;
-import org.eclipse.aether.RequestTrace;
-import org.eclipse.aether.artifact.Artifact;
-import org.eclipse.aether.repository.RemoteRepository;
-
-/**
- * A request to resolve a metaversion.
- *
- * @see RepositorySystem#resolveVersion(RepositorySystemSession, VersionRequest)
- */
-public final class VersionRequest
-{
-
- private Artifact artifact;
-
- private List<RemoteRepository> repositories = Collections.emptyList();
-
- private String context = "";
-
- private RequestTrace trace;
-
- /**
- * Creates an uninitialized request.
- */
- public VersionRequest()
- {
- // enables default constructor
- }
-
- /**
- * Creates a request with the specified properties.
- *
- * @param artifact The artifact whose (meta-)version should be resolved, may be {@code null}.
- * @param repositories The repositories to resolve the version from, may be {@code null}.
- * @param context The context in which this request is made, may be {@code null}.
- */
- public VersionRequest( Artifact artifact, List<RemoteRepository> repositories, String context )
- {
- setArtifact( artifact );
- setRepositories( repositories );
- setRequestContext( context );
- }
-
- /**
- * Gets the artifact whose (meta-)version shall be resolved.
- *
- * @return The artifact or {@code null} if not set.
- */
- public Artifact getArtifact()
- {
- return artifact;
- }
-
- /**
- * Sets the artifact whose (meta-)version shall be resolved.
- *
- * @param artifact The artifact, may be {@code null}.
- * @return This request for chaining, never {@code null}.
- */
- public VersionRequest setArtifact( Artifact artifact )
- {
- this.artifact = artifact;
- return this;
- }
-
- /**
- * Gets the repositories to resolve the version from.
- *
- * @return The repositories, never {@code null}.
- */
- public List<RemoteRepository> getRepositories()
- {
- return repositories;
- }
-
- /**
- * Sets the repositories to resolve the version from.
- *
- * @param repositories The repositories, may be {@code null}.
- * @return This request for chaining, never {@code null}.
- */
- public VersionRequest setRepositories( List<RemoteRepository> repositories )
- {
- if ( repositories == null )
- {
- this.repositories = Collections.emptyList();
- }
- else
- {
- this.repositories = repositories;
- }
- return this;
- }
-
- /**
- * Adds the specified repository for the resolution.
- *
- * @param repository The repository to add, may be {@code null}.
- * @return This request for chaining, never {@code null}.
- */
- public VersionRequest addRepository( RemoteRepository repository )
- {
- if ( repository != null )
- {
- if ( this.repositories.isEmpty() )
- {
- this.repositories = new ArrayList<RemoteRepository>();
- }
- this.repositories.add( repository );
- }
- return this;
- }
-
- /**
- * Gets the context in which this request is made.
- *
- * @return The context, never {@code null}.
- */
- public String getRequestContext()
- {
- return context;
- }
-
- /**
- * Sets the context in which this request is made.
- *
- * @param context The context, may be {@code null}.
- * @return This request for chaining, never {@code null}.
- */
- public VersionRequest setRequestContext( String context )
- {
- this.context = ( context != null ) ? context : "";
- return this;
- }
-
- /**
- * Gets the trace information that describes the higher level request/operation in which this request is issued.
- *
- * @return The trace information about the higher level operation or {@code null} if none.
- */
- public RequestTrace getTrace()
- {
- return trace;
- }
-
- /**
- * Sets the trace information that describes the higher level request/operation in which this request is issued.
- *
- * @param trace The trace information about the higher level operation, may be {@code null}.
- * @return This request for chaining, never {@code null}.
- */
- public VersionRequest setTrace( RequestTrace trace )
- {
- this.trace = trace;
- return this;
- }
-
- @Override
- public String toString()
- {
- return getArtifact() + " < " + getRepositories();
- }
-
-}
http://git-wip-us.apache.org/repos/asf/maven-resolver/blob/3a1b8ae0/aether-api/src/main/java/org/eclipse/aether/resolution/VersionResolutionException.java
----------------------------------------------------------------------
diff --git a/aether-api/src/main/java/org/eclipse/aether/resolution/VersionResolutionException.java b/aether-api/src/main/java/org/eclipse/aether/resolution/VersionResolutionException.java
deleted file mode 100644
index 1aca861..0000000
--- a/aether-api/src/main/java/org/eclipse/aether/resolution/VersionResolutionException.java
+++ /dev/null
@@ -1,105 +0,0 @@
-package org.eclipse.aether.resolution;
-
-/*
- * 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 org.eclipse.aether.RepositoryException;
-
-/**
- * Thrown in case of an unresolvable metaversion.
- */
-public class VersionResolutionException
- extends RepositoryException
-{
-
- private final transient VersionResult result;
-
- /**
- * Creates a new exception with the specified result.
- *
- * @param result The version result at the point the exception occurred, may be {@code null}.
- */
- public VersionResolutionException( VersionResult result )
- {
- super( getMessage( result ), getCause( result ) );
- this.result = result;
- }
-
- private static String getMessage( VersionResult result )
- {
- StringBuilder buffer = new StringBuilder( 256 );
- buffer.append( "Failed to resolve version" );
- if ( result != null )
- {
- buffer.append( " for " ).append( result.getRequest().getArtifact() );
- if ( !result.getExceptions().isEmpty() )
- {
- buffer.append( ": " ).append( result.getExceptions().iterator().next().getMessage() );
- }
- }
- return buffer.toString();
- }
-
- private static Throwable getCause( VersionResult result )
- {
- Throwable cause = null;
- if ( result != null && !result.getExceptions().isEmpty() )
- {
- cause = result.getExceptions().get( 0 );
- }
- return cause;
- }
-
- /**
- * Creates a new exception with the specified result and detail message.
- *
- * @param result The version result at the point the exception occurred, may be {@code null}.
- * @param message The detail message, may be {@code null}.
- */
- public VersionResolutionException( VersionResult result, String message )
- {
- super( message, getCause( result ) );
- this.result = result;
- }
-
- /**
- * Creates a new exception with the specified result, detail message and cause.
- *
- * @param result The version result at the point the exception occurred, may be {@code null}.
- * @param message The detail message, may be {@code null}.
- * @param cause The exception that caused this one, may be {@code null}.
- */
- public VersionResolutionException( VersionResult result, String message, Throwable cause )
- {
- super( message, cause );
- this.result = result;
- }
-
- /**
- * Gets the version result at the point the exception occurred. Despite being incomplete, callers might want to use
- * this result to fail gracefully and continue their operation with whatever interim data has been gathered.
- *
- * @return The version result or {@code null} if unknown.
- */
- public VersionResult getResult()
- {
- return result;
- }
-
-}
http://git-wip-us.apache.org/repos/asf/maven-resolver/blob/3a1b8ae0/aether-api/src/main/java/org/eclipse/aether/resolution/VersionResult.java
----------------------------------------------------------------------
diff --git a/aether-api/src/main/java/org/eclipse/aether/resolution/VersionResult.java b/aether-api/src/main/java/org/eclipse/aether/resolution/VersionResult.java
deleted file mode 100644
index 5125773..0000000
--- a/aether-api/src/main/java/org/eclipse/aether/resolution/VersionResult.java
+++ /dev/null
@@ -1,150 +0,0 @@
-package org.eclipse.aether.resolution;
-
-/*
- * 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.ArrayList;
-import java.util.Collections;
-import java.util.List;
-
-import org.eclipse.aether.RepositorySystem;
-import org.eclipse.aether.RepositorySystemSession;
-import org.eclipse.aether.repository.ArtifactRepository;
-
-/**
- * The result of a version resolution request.
- *
- * @see RepositorySystem#resolveVersion(RepositorySystemSession, VersionRequest)
- */
-public final class VersionResult
-{
-
- private final VersionRequest request;
-
- private List<Exception> exceptions;
-
- private String version;
-
- private ArtifactRepository repository;
-
- /**
- * Creates a new result for the specified request.
- *
- * @param request The resolution request, must not be {@code null}.
- */
- public VersionResult( VersionRequest request )
- {
- if ( request == null )
- {
- throw new IllegalArgumentException( "version request has not been specified" );
- }
- this.request = request;
- exceptions = Collections.emptyList();
- }
-
- /**
- * Gets the resolution request that was made.
- *
- * @return The resolution request, never {@code null}.
- */
- public VersionRequest getRequest()
- {
- return request;
- }
-
- /**
- * Gets the exceptions that occurred while resolving the version.
- *
- * @return The exceptions that occurred, never {@code null}.
- */
- public List<Exception> getExceptions()
- {
- return exceptions;
- }
-
- /**
- * Records the specified exception while resolving the version.
- *
- * @param exception The exception to record, may be {@code null}.
- * @return This result for chaining, never {@code null}.
- */
- public VersionResult addException( Exception exception )
- {
- if ( exception != null )
- {
- if ( exceptions.isEmpty() )
- {
- exceptions = new ArrayList<Exception>();
- }
- exceptions.add( exception );
- }
- return this;
- }
-
- /**
- * Gets the resolved version.
- *
- * @return The resolved version or {@code null} if the resolution failed.
- */
- public String getVersion()
- {
- return version;
- }
-
- /**
- * Sets the resolved version.
- *
- * @param version The resolved version, may be {@code null}.
- * @return This result for chaining, never {@code null}.
- */
- public VersionResult setVersion( String version )
- {
- this.version = version;
- return this;
- }
-
- /**
- * Gets the repository from which the version was eventually resolved.
- *
- * @return The repository from which the version was resolved or {@code null} if unknown.
- */
- public ArtifactRepository getRepository()
- {
- return repository;
- }
-
- /**
- * Sets the repository from which the version was resolved.
- *
- * @param repository The repository from which the version was resolved, may be {@code null}.
- * @return This result for chaining, never {@code null}.
- */
- public VersionResult setRepository( ArtifactRepository repository )
- {
- this.repository = repository;
- return this;
- }
-
- @Override
- public String toString()
- {
- return getVersion() + " @ " + getRepository();
- }
-
-}
http://git-wip-us.apache.org/repos/asf/maven-resolver/blob/3a1b8ae0/aether-api/src/main/java/org/eclipse/aether/resolution/package-info.java
----------------------------------------------------------------------
diff --git a/aether-api/src/main/java/org/eclipse/aether/resolution/package-info.java b/aether-api/src/main/java/org/eclipse/aether/resolution/package-info.java
deleted file mode 100644
index 33f9ef8..0000000
--- a/aether-api/src/main/java/org/eclipse/aether/resolution/package-info.java
+++ /dev/null
@@ -1,24 +0,0 @@
-// CHECKSTYLE_OFF: RegexpHeader
-/*
- * 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.
- */
-/**
- * The types supporting the resolution of artifacts and metadata from repositories.
- */
-package org.eclipse.aether.resolution;
-
http://git-wip-us.apache.org/repos/asf/maven-resolver/blob/3a1b8ae0/aether-api/src/main/java/org/eclipse/aether/transfer/AbstractTransferListener.java
----------------------------------------------------------------------
diff --git a/aether-api/src/main/java/org/eclipse/aether/transfer/AbstractTransferListener.java b/aether-api/src/main/java/org/eclipse/aether/transfer/AbstractTransferListener.java
deleted file mode 100644
index 5691e31..0000000
--- a/aether-api/src/main/java/org/eclipse/aether/transfer/AbstractTransferListener.java
+++ /dev/null
@@ -1,64 +0,0 @@
-package org.eclipse.aether.transfer;
-
-/*
- * 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.
- */
-
-/**
- * A skeleton implementation for custom transfer listeners. The callback methods in this class do nothing.
- */
-public abstract class AbstractTransferListener
- implements TransferListener
-{
-
- /**
- * Enables subclassing.
- */
- protected AbstractTransferListener()
- {
- }
-
- public void transferInitiated( TransferEvent event )
- throws TransferCancelledException
- {
- }
-
- public void transferStarted( TransferEvent event )
- throws TransferCancelledException
- {
- }
-
- public void transferProgressed( TransferEvent event )
- throws TransferCancelledException
- {
- }
-
- public void transferCorrupted( TransferEvent event )
- throws TransferCancelledException
- {
- }
-
- public void transferSucceeded( TransferEvent event )
- {
- }
-
- public void transferFailed( TransferEvent event )
- {
- }
-
-}
http://git-wip-us.apache.org/repos/asf/maven-resolver/blob/3a1b8ae0/aether-api/src/main/java/org/eclipse/aether/transfer/ArtifactNotFoundException.java
----------------------------------------------------------------------
diff --git a/aether-api/src/main/java/org/eclipse/aether/transfer/ArtifactNotFoundException.java b/aether-api/src/main/java/org/eclipse/aether/transfer/ArtifactNotFoundException.java
deleted file mode 100644
index 89a50d4..0000000
--- a/aether-api/src/main/java/org/eclipse/aether/transfer/ArtifactNotFoundException.java
+++ /dev/null
@@ -1,104 +0,0 @@
-package org.eclipse.aether.transfer;
-
-/*
- * 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 org.eclipse.aether.artifact.Artifact;
-import org.eclipse.aether.artifact.ArtifactProperties;
-import org.eclipse.aether.repository.RemoteRepository;
-
-/**
- * Thrown when an artifact was not found in a particular repository.
- */
-public class ArtifactNotFoundException
- extends ArtifactTransferException
-{
-
- /**
- * Creates a new exception with the specified artifact and repository.
- *
- * @param artifact The missing artifact, may be {@code null}.
- * @param repository The involved remote repository, may be {@code null}.
- */
- public ArtifactNotFoundException( Artifact artifact, RemoteRepository repository )
- {
- super( artifact, repository, getMessage( artifact, repository ) );
- }
-
- private static String getMessage( Artifact artifact, RemoteRepository repository )
- {
- StringBuilder buffer = new StringBuilder( 256 );
- buffer.append( "Could not find artifact " ).append( artifact );
- buffer.append( getString( " in ", repository ) );
- if ( artifact != null )
- {
- String localPath = artifact.getProperty( ArtifactProperties.LOCAL_PATH, null );
- if ( localPath != null && repository == null )
- {
- buffer.append( " at specified path " ).append( localPath );
- }
- String downloadUrl = artifact.getProperty( ArtifactProperties.DOWNLOAD_URL, null );
- if ( downloadUrl != null )
- {
- buffer.append( ", try downloading from " ).append( downloadUrl );
- }
- }
- return buffer.toString();
- }
-
- /**
- * Creates a new exception with the specified artifact, repository and detail message.
- *
- * @param artifact The missing artifact, may be {@code null}.
- * @param repository The involved remote repository, may be {@code null}.
- * @param message The detail message, may be {@code null}.
- */
- public ArtifactNotFoundException( Artifact artifact, RemoteRepository repository, String message )
- {
- super( artifact, repository, message );
- }
-
- /**
- * Creates a new exception with the specified artifact, repository and detail message.
- *
- * @param artifact The missing artifact, may be {@code null}.
- * @param repository The involved remote repository, may be {@code null}.
- * @param message The detail message, may be {@code null}.
- * @param fromCache {@code true} if the exception was played back from the error cache, {@code false} if the
- * exception actually just occurred.
- */
- public ArtifactNotFoundException( Artifact artifact, RemoteRepository repository, String message, boolean fromCache )
- {
- super( artifact, repository, message, fromCache );
- }
-
- /**
- * Creates a new exception with the specified artifact, repository, detail message and cause.
- *
- * @param artifact The missing artifact, may be {@code null}.
- * @param repository The involved remote repository, may be {@code null}.
- * @param message The detail message, may be {@code null}.
- * @param cause The exception that caused this one, may be {@code null}.
- */
- public ArtifactNotFoundException( Artifact artifact, RemoteRepository repository, String message, Throwable cause )
- {
- super( artifact, repository, message, cause );
- }
-
-}
http://git-wip-us.apache.org/repos/asf/maven-resolver/blob/3a1b8ae0/aether-api/src/main/java/org/eclipse/aether/transfer/ArtifactTransferException.java
----------------------------------------------------------------------
diff --git a/aether-api/src/main/java/org/eclipse/aether/transfer/ArtifactTransferException.java b/aether-api/src/main/java/org/eclipse/aether/transfer/ArtifactTransferException.java
deleted file mode 100644
index 087040f..0000000
--- a/aether-api/src/main/java/org/eclipse/aether/transfer/ArtifactTransferException.java
+++ /dev/null
@@ -1,140 +0,0 @@
-package org.eclipse.aether.transfer;
-
-/*
- * 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 org.eclipse.aether.RepositoryException;
-import org.eclipse.aether.artifact.Artifact;
-import org.eclipse.aether.repository.RemoteRepository;
-
-/**
- * Thrown when an artifact could not be uploaded/downloaded to/from a particular remote repository.
- */
-public class ArtifactTransferException
- extends RepositoryException
-{
-
- private final transient Artifact artifact;
-
- private final transient RemoteRepository repository;
-
- private final boolean fromCache;
-
- static String getString( String prefix, RemoteRepository repository )
- {
- if ( repository == null )
- {
- return "";
- }
- else
- {
- return prefix + repository.getId() + " (" + repository.getUrl() + ")";
- }
- }
-
- /**
- * Creates a new exception with the specified artifact, repository and detail message.
- *
- * @param artifact The untransferable artifact, may be {@code null}.
- * @param repository The involved remote repository, may be {@code null}.
- * @param message The detail message, may be {@code null}.
- */
- public ArtifactTransferException( Artifact artifact, RemoteRepository repository, String message )
- {
- this( artifact, repository, message, false );
- }
-
- /**
- * Creates a new exception with the specified artifact, repository and detail message.
- *
- * @param artifact The untransferable artifact, may be {@code null}.
- * @param repository The involved remote repository, may be {@code null}.
- * @param message The detail message, may be {@code null}.
- * @param fromCache {@code true} if the exception was played back from the error cache, {@code false} if the
- * exception actually just occurred.
- */
- public ArtifactTransferException( Artifact artifact, RemoteRepository repository, String message, boolean fromCache )
- {
- super( message );
- this.artifact = artifact;
- this.repository = repository;
- this.fromCache = fromCache;
- }
-
- /**
- * Creates a new exception with the specified artifact, repository and cause.
- *
- * @param artifact The untransferable artifact, may be {@code null}.
- * @param repository The involved remote repository, may be {@code null}.
- * @param cause The exception that caused this one, may be {@code null}.
- */
- public ArtifactTransferException( Artifact artifact, RemoteRepository repository, Throwable cause )
- {
- this( artifact, repository, "Could not transfer artifact " + artifact + getString( " from/to ", repository )
- + getMessage( ": ", cause ), cause );
- }
-
- /**
- * Creates a new exception with the specified artifact, repository, detail message and cause.
- *
- * @param artifact The untransferable artifact, may be {@code null}.
- * @param repository The involved remote repository, may be {@code null}.
- * @param message The detail message, may be {@code null}.
- * @param cause The exception that caused this one, may be {@code null}.
- */
- public ArtifactTransferException( Artifact artifact, RemoteRepository repository, String message, Throwable cause )
- {
- super( message, cause );
- this.artifact = artifact;
- this.repository = repository;
- this.fromCache = false;
- }
-
- /**
- * Gets the artifact that could not be transferred.
- *
- * @return The troublesome artifact or {@code null} if unknown.
- */
- public Artifact getArtifact()
- {
- return artifact;
- }
-
- /**
- * Gets the remote repository involved in the transfer.
- *
- * @return The involved remote repository or {@code null} if unknown.
- */
- public RemoteRepository getRepository()
- {
- return repository;
- }
-
- /**
- * Indicates whether this exception actually just occurred or was played back from the error cache.
- *
- * @return {@code true} if the exception was played back from the error cache, {@code false} if the exception
- * actually occurred just now.
- */
- public boolean isFromCache()
- {
- return fromCache;
- }
-
-}