Class PentestJob

java.lang.Object
software.amazon.awssdk.services.securityagent.model.PentestJob
All Implemented Interfaces:
Serializable, SdkPojo, ToCopyableBuilder<PentestJob.Builder,PentestJob>

@Generated("software.amazon.awssdk:codegen") public final class PentestJob extends Object implements SdkPojo, Serializable, ToCopyableBuilder<PentestJob.Builder,PentestJob>

Represents a pentest job, which is an execution instance of a pentest. A pentest job progresses through preflight, static analysis, pentest, and finalizing steps.

See Also:
  • Method Details

    • pentestJobId

      public final String pentestJobId()

      The unique identifier of the pentest job.

      Returns:
      The unique identifier of the pentest job.
    • pentestId

      public final String pentestId()

      The unique identifier of the pentest associated with the job.

      Returns:
      The unique identifier of the pentest associated with the job.
    • title

      public final String title()

      The title of the pentest job.

      Returns:
      The title of the pentest job.
    • overview

      public final String overview()

      An overview of the pentest job results.

      Returns:
      An overview of the pentest job results.
    • status

      public final JobStatus status()

      The current status of the pentest job.

      If the service returns an enum value that is not available in the current SDK version, status will return JobStatus.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from statusAsString().

      Returns:
      The current status of the pentest job.
      See Also:
    • statusAsString

      public final String statusAsString()

      The current status of the pentest job.

      If the service returns an enum value that is not available in the current SDK version, status will return JobStatus.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from statusAsString().

      Returns:
      The current status of the pentest job.
      See Also:
    • hasEndpoints

      public final boolean hasEndpoints()
      For responses, this returns true if the service returned a value for the Endpoints property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() 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.
    • endpoints

      public final List<Endpoint> endpoints()

      The list of endpoints being tested in the pentest job.

      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 hasEndpoints() method.

      Returns:
      The list of endpoints being tested in the pentest job.
    • hasActors

      public final boolean hasActors()
      For responses, this returns true if the service returned a value for the Actors property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() 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.
    • actors

      public final List<Actor> actors()

      The list of actors used during the pentest job.

      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 hasActors() method.

      Returns:
      The list of actors used during the pentest job.
    • hasDocuments

      public final boolean hasDocuments()
      For responses, this returns true if the service returned a value for the Documents property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() 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.
    • documents

      public final List<DocumentInfo> documents()

      The list of documents providing context for the pentest job.

      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 hasDocuments() method.

      Returns:
      The list of documents providing context for the pentest job.
    • hasSourceCode

      public final boolean hasSourceCode()
      For responses, this returns true if the service returned a value for the SourceCode property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() 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.
    • sourceCode

      public final List<SourceCodeRepository> sourceCode()

      The list of source code repositories analyzed during the pentest job.

      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 hasSourceCode() method.

      Returns:
      The list of source code repositories analyzed during the pentest job.
    • hasExcludePaths

      public final boolean hasExcludePaths()
      For responses, this returns true if the service returned a value for the ExcludePaths property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() 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.
    • excludePaths

      public final List<Endpoint> excludePaths()

      The list of paths excluded from the pentest job.

      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 hasExcludePaths() method.

      Returns:
      The list of paths excluded from the pentest job.
    • hasAllowedDomains

      public final boolean hasAllowedDomains()
      For responses, this returns true if the service returned a value for the AllowedDomains property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() 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.
    • allowedDomains

      public final List<Endpoint> allowedDomains()

      The list of domains allowed during the pentest job.

      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 hasAllowedDomains() method.

      Returns:
      The list of domains allowed during the pentest job.
    • excludeRiskTypes

      public final List<RiskType> excludeRiskTypes()

      The list of risk types excluded from the pentest job.

      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 hasExcludeRiskTypes() method.

      Returns:
      The list of risk types excluded from the pentest job.
    • hasExcludeRiskTypes

      public final boolean hasExcludeRiskTypes()
      For responses, this returns true if the service returned a value for the ExcludeRiskTypes property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() 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.
    • excludeRiskTypesAsStrings

      public final List<String> excludeRiskTypesAsStrings()

      The list of risk types excluded from the pentest job.

      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 hasExcludeRiskTypes() method.

      Returns:
      The list of risk types excluded from the pentest job.
    • hasSteps

      public final boolean hasSteps()
      For responses, this returns true if the service returned a value for the Steps property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() 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.
    • steps

      public final List<Step> steps()

      The list of steps in the pentest job execution.

      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 hasSteps() method.

      Returns:
      The list of steps in the pentest job execution.
    • hasExecutionContext

      public final boolean hasExecutionContext()
      For responses, this returns true if the service returned a value for the ExecutionContext property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() 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.
    • executionContext

      public final List<ExecutionContext> executionContext()

      The execution context messages for the pentest job.

      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 hasExecutionContext() method.

      Returns:
      The execution context messages for the pentest job.
    • serviceRole

      public final String serviceRole()

      The IAM service role used for the pentest job.

      Returns:
      The IAM service role used for the pentest job.
    • logConfig

      public final CloudWatchLog logConfig()

      The CloudWatch Logs configuration for the pentest job.

      Returns:
      The CloudWatch Logs configuration for the pentest job.
    • vpcConfig

      public final VpcConfig vpcConfig()

      The VPC configuration for the pentest job.

      Returns:
      The VPC configuration for the pentest job.
    • networkTrafficConfig

      public final NetworkTrafficConfig networkTrafficConfig()

      The network traffic configuration for the pentest job.

      Returns:
      The network traffic configuration for the pentest job.
    • errorInformation

      public final ErrorInformation errorInformation()

      Error information if the pentest job encountered an error.

      Returns:
      Error information if the pentest job encountered an error.
    • hasIntegratedRepositories

      public final boolean hasIntegratedRepositories()
      For responses, this returns true if the service returned a value for the IntegratedRepositories property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() 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.
    • integratedRepositories

      public final List<IntegratedRepository> integratedRepositories()

      The list of integrated repositories associated with the pentest job.

      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 hasIntegratedRepositories() method.

      Returns:
      The list of integrated repositories associated with the pentest job.
    • codeRemediationStrategy

      public final CodeRemediationStrategy codeRemediationStrategy()

      The code remediation strategy for the pentest job.

      If the service returns an enum value that is not available in the current SDK version, codeRemediationStrategy will return CodeRemediationStrategy.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from codeRemediationStrategyAsString().

      Returns:
      The code remediation strategy for the pentest job.
      See Also:
    • codeRemediationStrategyAsString

      public final String codeRemediationStrategyAsString()

      The code remediation strategy for the pentest job.

      If the service returns an enum value that is not available in the current SDK version, codeRemediationStrategy will return CodeRemediationStrategy.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from codeRemediationStrategyAsString().

      Returns:
      The code remediation strategy for the pentest job.
      See Also:
    • createdAt

      public final Instant createdAt()

      The date and time the pentest job was created, in UTC format.

      Returns:
      The date and time the pentest job was created, in UTC format.
    • updatedAt

      public final Instant updatedAt()

      The date and time the pentest job was last updated, in UTC format.

      Returns:
      The date and time the pentest job was last updated, in UTC format.
    • toBuilder

      public PentestJob.Builder toBuilder()
      Description copied from interface: ToCopyableBuilder
      Take this object and create a builder that contains all of the current property values of this object.
      Specified by:
      toBuilder in interface ToCopyableBuilder<PentestJob.Builder,PentestJob>
      Returns:
      a builder for type T
    • builder

      public static PentestJob.Builder builder()
    • serializableBuilderClass

      public static Class<? extends PentestJob.Builder> serializableBuilderClass()
    • hashCode

      public final int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public final boolean equals(Object obj)
      Overrides:
      equals in class Object
    • equalsBySdkFields

      public final boolean equalsBySdkFields(Object obj)
      Description copied from interface: SdkPojo
      Indicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in an SdkPojo class, and is generated based on a service model.

      If an SdkPojo class does not have any inherited fields, equalsBySdkFields and equals are essentially the same.

      Specified by:
      equalsBySdkFields in interface SdkPojo
      Parameters:
      obj - the object to be compared with
      Returns:
      true if the other object equals to this object by sdk fields, false otherwise.
    • 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.
      Overrides:
      toString in class Object
    • getValueForField

      public final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz)
    • sdkFields

      public final List<SdkField<?>> sdkFields()
      Specified by:
      sdkFields in interface SdkPojo
      Returns:
      List of SdkField in this POJO. May be empty list but should never be null.
    • sdkFieldNameToField

      public final Map<String,SdkField<?>> sdkFieldNameToField()
      Specified by:
      sdkFieldNameToField in interface SdkPojo
      Returns:
      The mapping between the field name and its corresponding field.