org.eclipse.aether.resolution

## Class MetadataRequest

- java.lang.Object
- - org.eclipse.aether.resolution.MetadataRequest

-     public final class MetadataRequest
      extends Object

  A request to resolve metadata from either a remote repository or the local repository.
  See Also:
    `RepositorySystem.resolveMetadata(RepositorySystemSession, java.util.Collection)`, `Metadata.getFile()`

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `MetadataRequest()` Creates an unitialized request.
    `MetadataRequest(Metadata metadata)` Creates a request to resolve the specified metadata from the local repository.
    `MetadataRequest(Metadata metadata, RemoteRepository repository, String context)` Creates a request with the specified properties.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `Metadata` | `getMetadata()` Gets the metadata to resolve.
    `RemoteRepository` | `getRepository()` Gets the repository from which the metadata should be resolved.
    `String` | `getRequestContext()` Gets the context in which this request is made.
    `RequestTrace` | `getTrace()` Gets the trace information that describes the higher level request/operation in which this request is issued.
    `boolean` | `isDeleteLocalCopyIfMissing()` 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.
    `boolean` | `isFavorLocalRepository()` 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.
    `MetadataRequest` | `setDeleteLocalCopyIfMissing(boolean 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.
    `MetadataRequest` | `setFavorLocalRepository(boolean favorLocalRepository)` Controls resolution of remote metadata when already corresponding metadata of the local repository exists.
    `MetadataRequest` | `setMetadata(Metadata metadata)` Sets the metadata to resolve.
    `MetadataRequest` | `setRepository(RemoteRepository repository)` Sets the repository from which the metadata should be resolved.
    `MetadataRequest` | `setRequestContext(String context)` Sets the context in which this request is made.
    `MetadataRequest` | `setTrace(RequestTrace trace)` Sets the trace information that describes the higher level request/operation in which this request is issued.
    `String` | `toString()`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### MetadataRequest

          public MetadataRequest()

      Creates an unitialized request.

    - #### MetadataRequest

          public MetadataRequest(Metadata metadata)

      Creates a request to resolve the specified metadata from the local repository.
      Parameters:
        `metadata` - The metadata to resolve, may be `null`.

    - #### MetadataRequest

          public MetadataRequest(Metadata metadata,
                         RemoteRepository repository,
                         String context)

      Creates a request with the specified properties.
      Parameters:
        `metadata` - The metadata to resolve, may be `null`.
        `repository` - The repository to resolve the metadata from, may be `null` to resolve from the local repository.
        `context` - The context in which this request is made, may be `null`.

  - ### Method Detail

    - #### getMetadata

          public Metadata getMetadata()

      Gets the metadata to resolve.
      Returns:
        The metadata or `null` if not set.

    - #### setMetadata

          public MetadataRequest setMetadata(Metadata metadata)

      Sets the metadata to resolve.
      Parameters:
        `metadata` - The metadata, may be `null`.
      Returns:
        This request for chaining, never `null`.

    - #### getRepository

          public RemoteRepository getRepository()

      Gets the repository from which the metadata should be resolved.
      Returns:
        The repository or `null` to resolve from the local repository.

    - #### setRepository

          public MetadataRequest setRepository(RemoteRepository repository)

      Sets the repository from which the metadata should be resolved.
      Parameters:
        `repository` - The repository, may be `null` to resolve from the local repository.
      Returns:
        This request for chaining, never `null`.

    - #### getRequestContext

          public String getRequestContext()

      Gets the context in which this request is made.
      Returns:
        The context, never `null`.

    - #### setRequestContext

          public MetadataRequest setRequestContext(String context)

      Sets the context in which this request is made.
      Parameters:
        `context` - The context, may be `null`.
      Returns:
        This request for chaining, never `null`.

    - #### isDeleteLocalCopyIfMissing

          public boolean isDeleteLocalCopyIfMissing()

      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.
      Returns:
        `true` if locally cached metadata should be deleted if no corresponding remote file exists, `false` to keep the local copy.

    - #### setDeleteLocalCopyIfMissing

          public MetadataRequest setDeleteLocalCopyIfMissing(boolean 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.
      Parameters:
        `deleteLocalCopyIfMissing` - `true` if locally cached metadata should be deleted if no corresponding remote file exists, `false` to keep the local copy.
      Returns:
        This request for chaining, never `null`.

    - #### isFavorLocalRepository

          public boolean isFavorLocalRepository()

      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.
      Returns:
        `true` to suppress resolution of remote metadata if the corresponding metadata of the local repository is up-to-date, `false` to resolve the remote metadata normally according to the update policy.

    - #### setFavorLocalRepository

          public MetadataRequest setFavorLocalRepository(boolean 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.
      Parameters:
        `favorLocalRepository` - `true` to suppress resolution of remote metadata if the corresponding metadata of the local repository is up-to-date, `false` to resolve the remote metadata normally according to the update policy.
      Returns:
        This request for chaining, never `null`.

    - #### getTrace

          public RequestTrace getTrace()

      Gets the trace information that describes the higher level request/operation in which this request is issued.
      Returns:
        The trace information about the higher level operation or `null` if none.

    - #### setTrace

          public MetadataRequest setTrace(RequestTrace trace)

      Sets the trace information that describes the higher level request/operation in which this request is issued.
      Parameters:
        `trace` - The trace information about the higher level operation, may be `null`.
      Returns:
        This request for chaining, never `null`.

    - #### toString

          public String toString()

      Overrides:
        `toString` in class `Object`

Copyright © 2010-2012 The Eclipse Foundation. All Rights Reserved.