Interface AuthenticationSupported
-
- All Known Subinterfaces:
IvyArtifactRepository
,JavaToolchainRepository
,MavenArtifactRepository
public interface AuthenticationSupported
An artifact repository which supports username/password authentication.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
authentication(Action<? super AuthenticationContainer> action)
Configures the authentication schemes for this repository.void
credentials(java.lang.Class<? extends Credentials> credentialsType)
Configures the credentials for this repository that will be provided by the build.<T extends Credentials>
voidcredentials(java.lang.Class<T> credentialsType, Action<? super T> action)
Configures the credentials for this repository using the supplied action.void
credentials(Action<? super PasswordCredentials> action)
Configures the username and password credentials for this repository using the supplied action.AuthenticationContainer
getAuthentication()
Returns the authentication schemes for this repository.PasswordCredentials
getCredentials()
Returns the username and password credentials used to authenticate to this repository.<T extends Credentials>
TgetCredentials(java.lang.Class<T> credentialsType)
Returns the credentials of the specified type used to authenticate with this repository.
-
-
-
Method Detail
-
getCredentials
PasswordCredentials getCredentials()
Returns the username and password credentials used to authenticate to this repository.If no credentials have been assigned to this repository, an empty set of username and password credentials is assigned to this repository and returned.
If you are using a different type of credentials than
PasswordCredentials
, please usegetCredentials(Class)
to obtain the credentials.- Returns:
- the credentials
- Throws:
java.lang.IllegalStateException
- if the credential type was previously set withcredentials(Class, Action)
where the type was notPasswordCredentials
-
getCredentials
<T extends Credentials> T getCredentials(java.lang.Class<T> credentialsType)
Returns the credentials of the specified type used to authenticate with this repository.If no credentials have been assigned to this repository, an empty set of credentials of the specified type is assigned to this repository and returned.
- Parameters:
credentialsType
- type of the credential- Returns:
- The credentials
- Throws:
java.lang.IllegalArgumentException
- when the credentials assigned to this repository are not assignable to the specified type
-
credentials
void credentials(Action<? super PasswordCredentials> action)
Configures the username and password credentials for this repository using the supplied action.If no credentials have been assigned to this repository, an empty set of username and password credentials is assigned to this repository and passed to the action.
repositories { maven { url "${url}" credentials { username = 'joe' password = 'secret' } } }
- Throws:
java.lang.IllegalStateException
- when the credentials assigned to this repository are not of typePasswordCredentials
-
credentials
<T extends Credentials> void credentials(java.lang.Class<T> credentialsType, Action<? super T> action)
Configures the credentials for this repository using the supplied action.If no credentials have been assigned to this repository, an empty set of credentials of the specified type will be assigned to this repository and given to the configuration action. If credentials have already been specified for this repository, they will be passed to the given configuration action.
repositories { maven { url "${url}" credentials(AwsCredentials) { accessKey "myAccessKey" secretKey "mySecret" } } }
The following credential types are currently supported for the
credentialsType
argument:- Throws:
java.lang.IllegalArgumentException
- ifcredentialsType
is not of a supported typejava.lang.IllegalArgumentException
- ifcredentialsType
is of a different type to the credentials previously specified for this repository
-
credentials
void credentials(java.lang.Class<? extends Credentials> credentialsType)
Configures the credentials for this repository that will be provided by the build.Credentials will be provided from Gradle properties based on the repository name. If credentials for this repository can not be resolved and the repository will be used in the current build, then the build will fail to start and point to the missing configuration.
repositories { maven { url "${url}" credentials(PasswordCredentials) } }
The following credential types are currently supported for the
credentialsType
argument:- Throws:
java.lang.IllegalArgumentException
- ifcredentialsType
is not of a supported type- Since:
- 6.6
-
authentication
void authentication(Action<? super AuthenticationContainer> action)
Configures the authentication schemes for this repository.
This method executes the given action against the
AuthenticationContainer
for this project. TheAuthenticationContainer
is passed to the closure as the closure's delegate.If no authentication schemes have been assigned to this repository, a default set of authentication schemes are used based on the repository's transport scheme.
repositories { maven { url "${url}" authentication { basic(BasicAuthentication) } } }
Supported authentication scheme types extend
Authentication
.- Parameters:
action
- the action to use to configure the authentication schemes.
-
getAuthentication
AuthenticationContainer getAuthentication()
Returns the authentication schemes for this repository.- Returns:
- the authentication schemes for this repository
-
-