All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.burkard.cdk.services.ec2.cfnSpotFleet.SpotFleetLaunchSpecificationProperty.scala Maven / Gradle / Ivy

The newest version!
package io.burkard.cdk.services.ec2.cfnSpotFleet

import scala.collection.JavaConverters._

@scala.annotation.nowarn("cat=deprecation")
@SuppressWarnings(Array("org.wartremover.warts.DefaultArguments", "org.wartremover.warts.Null", "DisableSyntax.null"))
object SpotFleetLaunchSpecificationProperty {

  def apply(
    imageId: String,
    ebsOptimized: Option[Boolean] = None,
    tagSpecifications: Option[List[_]] = None,
    networkInterfaces: Option[List[_]] = None,
    monitoring: Option[software.amazon.awscdk.services.ec2.CfnSpotFleet.SpotFleetMonitoringProperty] = None,
    userData: Option[String] = None,
    iamInstanceProfile: Option[software.amazon.awscdk.services.ec2.CfnSpotFleet.IamInstanceProfileSpecificationProperty] = None,
    subnetId: Option[String] = None,
    ramdiskId: Option[String] = None,
    instanceType: Option[String] = None,
    instanceRequirements: Option[software.amazon.awscdk.services.ec2.CfnSpotFleet.InstanceRequirementsRequestProperty] = None,
    placement: Option[software.amazon.awscdk.services.ec2.CfnSpotFleet.SpotPlacementProperty] = None,
    securityGroups: Option[List[_]] = None,
    keyName: Option[String] = None,
    weightedCapacity: Option[Number] = None,
    spotPrice: Option[String] = None,
    kernelId: Option[String] = None,
    blockDeviceMappings: Option[List[_]] = None
  ): software.amazon.awscdk.services.ec2.CfnSpotFleet.SpotFleetLaunchSpecificationProperty =
    (new software.amazon.awscdk.services.ec2.CfnSpotFleet.SpotFleetLaunchSpecificationProperty.Builder)
      .imageId(imageId)
      .ebsOptimized(ebsOptimized.map(Boolean.box).orNull)
      .tagSpecifications(tagSpecifications.map(_.asJava).orNull)
      .networkInterfaces(networkInterfaces.map(_.asJava).orNull)
      .monitoring(monitoring.orNull)
      .userData(userData.orNull)
      .iamInstanceProfile(iamInstanceProfile.orNull)
      .subnetId(subnetId.orNull)
      .ramdiskId(ramdiskId.orNull)
      .instanceType(instanceType.orNull)
      .instanceRequirements(instanceRequirements.orNull)
      .placement(placement.orNull)
      .securityGroups(securityGroups.map(_.asJava).orNull)
      .keyName(keyName.orNull)
      .weightedCapacity(weightedCapacity.orNull)
      .spotPrice(spotPrice.orNull)
      .kernelId(kernelId.orNull)
      .blockDeviceMappings(blockDeviceMappings.map(_.asJava).orNull)
      .build()
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy