Class WebhookDefinition
- java.lang.Object
-
- software.amazon.awssdk.services.codepipeline.model.WebhookDefinition
-
- All Implemented Interfaces:
Serializable,SdkPojo,ToCopyableBuilder<WebhookDefinition.Builder,WebhookDefinition>
@Generated("software.amazon.awssdk:codegen") public final class WebhookDefinition extends Object implements SdkPojo, Serializable, ToCopyableBuilder<WebhookDefinition.Builder,WebhookDefinition>
Represents information about a webhook and its definition.
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interfaceWebhookDefinition.Builder
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description WebhookAuthenticationTypeauthentication()Supported options are GITHUB_HMAC, IP, and UNAUTHENTICATED.StringauthenticationAsString()Supported options are GITHUB_HMAC, IP, and UNAUTHENTICATED.WebhookAuthConfigurationauthenticationConfiguration()Properties that configure the authentication applied to incoming webhook trigger requests.static WebhookDefinition.Builderbuilder()booleanequals(Object obj)booleanequalsBySdkFields(Object obj)List<WebhookFilterRule>filters()A list of rules applied to the body/payload sent in the POST request to a webhook URL.<T> Optional<T>getValueForField(String fieldName, Class<T> clazz)booleanhasFilters()For responses, this returns true if the service returned a value for the Filters property.inthashCode()Stringname()The name of the webhook.Map<String,SdkField<?>>sdkFieldNameToField()List<SdkField<?>>sdkFields()static Class<? extends WebhookDefinition.Builder>serializableBuilderClass()StringtargetAction()The name of the action in a pipeline you want to connect to the webhook.StringtargetPipeline()The name of the pipeline you want to connect to the webhook.WebhookDefinition.BuildertoBuilder()StringtoString()Returns a string representation of this object.-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface software.amazon.awssdk.utils.builder.ToCopyableBuilder
copy
-
-
-
-
Method Detail
-
name
public final String name()
The name of the webhook.
- Returns:
- The name of the webhook.
-
targetPipeline
public final String targetPipeline()
The name of the pipeline you want to connect to the webhook.
- Returns:
- The name of the pipeline you want to connect to the webhook.
-
targetAction
public final String targetAction()
The name of the action in a pipeline you want to connect to the webhook. The action must be from the source (first) stage of the pipeline.
- Returns:
- The name of the action in a pipeline you want to connect to the webhook. The action must be from the source (first) stage of the pipeline.
-
hasFilters
public final boolean hasFilters()
For responses, this returns true if the service returned a value for the Filters property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
-
filters
public final List<WebhookFilterRule> filters()
A list of rules applied to the body/payload sent in the POST request to a webhook URL. All defined rules must pass for the request to be accepted and the pipeline started.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasFilters()method.- Returns:
- A list of rules applied to the body/payload sent in the POST request to a webhook URL. All defined rules must pass for the request to be accepted and the pipeline started.
-
authentication
public final WebhookAuthenticationType authentication()
Supported options are GITHUB_HMAC, IP, and UNAUTHENTICATED.
When creating CodePipeline webhooks, do not use your own credentials or reuse the same secret token across multiple webhooks. For optimal security, generate a unique secret token for each webhook you create. The secret token is an arbitrary string that you provide, which GitHub uses to compute and sign the webhook payloads sent to CodePipeline, for protecting the integrity and authenticity of the webhook payloads. Using your own credentials or reusing the same token across multiple webhooks can lead to security vulnerabilities.
If a secret token was provided, it will be redacted in the response.
-
For information about the authentication scheme implemented by GITHUB_HMAC, see Securing your webhooks on the GitHub Developer website.
-
IP rejects webhooks trigger requests unless they originate from an IP address in the IP range whitelisted in the authentication configuration.
-
UNAUTHENTICATED accepts all webhook trigger requests regardless of origin.
If the service returns an enum value that is not available in the current SDK version,
authenticationwill returnWebhookAuthenticationType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available fromauthenticationAsString().- Returns:
- Supported options are GITHUB_HMAC, IP, and UNAUTHENTICATED.
When creating CodePipeline webhooks, do not use your own credentials or reuse the same secret token across multiple webhooks. For optimal security, generate a unique secret token for each webhook you create. The secret token is an arbitrary string that you provide, which GitHub uses to compute and sign the webhook payloads sent to CodePipeline, for protecting the integrity and authenticity of the webhook payloads. Using your own credentials or reusing the same token across multiple webhooks can lead to security vulnerabilities.
If a secret token was provided, it will be redacted in the response.
-
For information about the authentication scheme implemented by GITHUB_HMAC, see Securing your webhooks on the GitHub Developer website.
-
IP rejects webhooks trigger requests unless they originate from an IP address in the IP range whitelisted in the authentication configuration.
-
UNAUTHENTICATED accepts all webhook trigger requests regardless of origin.
-
- See Also:
WebhookAuthenticationType
-
-
authenticationAsString
public final String authenticationAsString()
Supported options are GITHUB_HMAC, IP, and UNAUTHENTICATED.
When creating CodePipeline webhooks, do not use your own credentials or reuse the same secret token across multiple webhooks. For optimal security, generate a unique secret token for each webhook you create. The secret token is an arbitrary string that you provide, which GitHub uses to compute and sign the webhook payloads sent to CodePipeline, for protecting the integrity and authenticity of the webhook payloads. Using your own credentials or reusing the same token across multiple webhooks can lead to security vulnerabilities.
If a secret token was provided, it will be redacted in the response.
-
For information about the authentication scheme implemented by GITHUB_HMAC, see Securing your webhooks on the GitHub Developer website.
-
IP rejects webhooks trigger requests unless they originate from an IP address in the IP range whitelisted in the authentication configuration.
-
UNAUTHENTICATED accepts all webhook trigger requests regardless of origin.
If the service returns an enum value that is not available in the current SDK version,
authenticationwill returnWebhookAuthenticationType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available fromauthenticationAsString().- Returns:
- Supported options are GITHUB_HMAC, IP, and UNAUTHENTICATED.
When creating CodePipeline webhooks, do not use your own credentials or reuse the same secret token across multiple webhooks. For optimal security, generate a unique secret token for each webhook you create. The secret token is an arbitrary string that you provide, which GitHub uses to compute and sign the webhook payloads sent to CodePipeline, for protecting the integrity and authenticity of the webhook payloads. Using your own credentials or reusing the same token across multiple webhooks can lead to security vulnerabilities.
If a secret token was provided, it will be redacted in the response.
-
For information about the authentication scheme implemented by GITHUB_HMAC, see Securing your webhooks on the GitHub Developer website.
-
IP rejects webhooks trigger requests unless they originate from an IP address in the IP range whitelisted in the authentication configuration.
-
UNAUTHENTICATED accepts all webhook trigger requests regardless of origin.
-
- See Also:
WebhookAuthenticationType
-
-
authenticationConfiguration
public final WebhookAuthConfiguration authenticationConfiguration()
Properties that configure the authentication applied to incoming webhook trigger requests. The required properties depend on the authentication type. For GITHUB_HMAC, only the
SecretTokenproperty must be set. For IP, only theAllowedIPRangeproperty must be set to a valid CIDR range. For UNAUTHENTICATED, no properties can be set.- Returns:
- Properties that configure the authentication applied to incoming webhook trigger requests. The required
properties depend on the authentication type. For GITHUB_HMAC, only the
SecretTokenproperty must be set. For IP, only theAllowedIPRangeproperty must be set to a valid CIDR range. For UNAUTHENTICATED, no properties can be set.
-
toBuilder
public WebhookDefinition.Builder toBuilder()
- Specified by:
toBuilderin interfaceToCopyableBuilder<WebhookDefinition.Builder,WebhookDefinition>
-
builder
public static WebhookDefinition.Builder builder()
-
serializableBuilderClass
public static Class<? extends WebhookDefinition.Builder> serializableBuilderClass()
-
equalsBySdkFields
public final boolean equalsBySdkFields(Object obj)
- Specified by:
equalsBySdkFieldsin interfaceSdkPojo
-
toString
public final String toString()
Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value.
-
sdkFieldNameToField
public final Map<String,SdkField<?>> sdkFieldNameToField()
- Specified by:
sdkFieldNameToFieldin interfaceSdkPojo
-
-