Package org.gradle.api.artifacts.repositories

## Interface UrlArtifactRepository

- All Known Subinterfaces:
    `IvyArtifactRepository`, `MavenArtifactRepository`

      @Incubating
      public interface UrlArtifactRepository

  A repository that supports resolving artifacts from a URL.
  Since:
    6.0

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `URI` | `getUrl()` | The base URL of this repository.
    `boolean` | `isAllowInsecureProtocol()` | Specifies whether it is acceptable to communicate with a repository over an insecure HTTP connection.
    `void` | `setAllowInsecureProtocol​(boolean allowInsecureProtocol)` | Specifies whether it is acceptable to communicate with a repository over an insecure HTTP connection.
    `void` | `setUrl​(Object url)` | Sets the base URL of this repository.
    `void` | `setUrl​(URI url)` | Sets the base URL of this repository.

- - ### Method Detail

    - #### getUrl

          URI getUrl()

      The base URL of this repository.
      Returns:
        The URL.

    - #### setUrl

          void setUrl​(URI url)

      Sets the base URL of this repository.
      Parameters:
        `url` - The base URL.

    - #### setUrl

          void setUrl​(Object url)

      Sets the base URL of this repository.
      Parameters:
        `url` - The base URL.

    - #### isAllowInsecureProtocol

          boolean isAllowInsecureProtocol()

      Specifies whether it is acceptable to communicate with a repository over an insecure HTTP connection.

      For security purposes this intentionally requires a user to opt-in to using insecure protocols on case by case basis.

      Gradle intentionally does not offer a global system/gradle property that allows a universal disable of this check.

      Allowing communication over insecure protocols allows for a man-in-the-middle to impersonate the intended server, and gives an attacker the ability to serve malicious executable code onto the system.

      See also: Want to take over the Java ecosystem? All you need is a MITM!

    - #### setAllowInsecureProtocol

          void setAllowInsecureProtocol​(boolean allowInsecureProtocol)

      Specifies whether it is acceptable to communicate with a repository over an insecure HTTP connection.
      See Also:
        `isAllowInsecureProtocol()`