commonMain.aws.sdk.kotlin.services.sagemakergeospatial.model.Properties.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of sagemakergeospatial-jvm Show documentation
Show all versions of sagemakergeospatial-jvm Show documentation
The AWS SDK for Kotlin client for SageMaker Geospatial
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!
package aws.sdk.kotlin.services.sagemakergeospatial.model
import aws.smithy.kotlin.runtime.SdkDsl
/**
* Properties associated with the Item.
*/
public class Properties private constructor(builder: Builder) {
/**
* Estimate of cloud cover.
*/
public val eoCloudCover: kotlin.Float? = builder.eoCloudCover
/**
* Land cloud cover for Landsat Data Collection.
*/
public val landsatCloudCoverLand: kotlin.Float? = builder.landsatCloudCoverLand
/**
* Platform property. Platform refers to the unique name of the specific platform the instrument is attached to. For satellites it is the name of the satellite, eg. landsat-8 (Landsat-8), sentinel-2a.
*/
public val platform: kotlin.String? = builder.platform
/**
* The angle from the sensor between nadir (straight down) and the scene center. Measured in degrees (0-90).
*/
public val viewOffNadir: kotlin.Float? = builder.viewOffNadir
/**
* The sun azimuth angle. From the scene center point on the ground, this is the angle between truth north and the sun. Measured clockwise in degrees (0-360).
*/
public val viewSunAzimuth: kotlin.Float? = builder.viewSunAzimuth
/**
* The sun elevation angle. The angle from the tangent of the scene center point to the sun. Measured from the horizon in degrees (-90-90). Negative values indicate the sun is below the horizon, e.g. sun elevation of -10° means the data was captured during [nautical twilight](https://www.timeanddate.com/astronomy/different-types-twilight.html).
*/
public val viewSunElevation: kotlin.Float? = builder.viewSunElevation
public companion object {
public operator fun invoke(block: Builder.() -> kotlin.Unit): aws.sdk.kotlin.services.sagemakergeospatial.model.Properties = Builder().apply(block).build()
}
override fun toString(): kotlin.String = buildString {
append("Properties(")
append("eoCloudCover=$eoCloudCover,")
append("landsatCloudCoverLand=$landsatCloudCoverLand,")
append("platform=$platform,")
append("viewOffNadir=$viewOffNadir,")
append("viewSunAzimuth=$viewSunAzimuth,")
append("viewSunElevation=$viewSunElevation")
append(")")
}
override fun hashCode(): kotlin.Int {
var result = eoCloudCover?.hashCode() ?: 0
result = 31 * result + (landsatCloudCoverLand?.hashCode() ?: 0)
result = 31 * result + (platform?.hashCode() ?: 0)
result = 31 * result + (viewOffNadir?.hashCode() ?: 0)
result = 31 * result + (viewSunAzimuth?.hashCode() ?: 0)
result = 31 * result + (viewSunElevation?.hashCode() ?: 0)
return result
}
override fun equals(other: kotlin.Any?): kotlin.Boolean {
if (this === other) return true
if (other == null || this::class != other::class) return false
other as Properties
if (!(eoCloudCover?.equals(other.eoCloudCover) ?: (other.eoCloudCover == null))) return false
if (!(landsatCloudCoverLand?.equals(other.landsatCloudCoverLand) ?: (other.landsatCloudCoverLand == null))) return false
if (platform != other.platform) return false
if (!(viewOffNadir?.equals(other.viewOffNadir) ?: (other.viewOffNadir == null))) return false
if (!(viewSunAzimuth?.equals(other.viewSunAzimuth) ?: (other.viewSunAzimuth == null))) return false
if (!(viewSunElevation?.equals(other.viewSunElevation) ?: (other.viewSunElevation == null))) return false
return true
}
public inline fun copy(block: Builder.() -> kotlin.Unit = {}): aws.sdk.kotlin.services.sagemakergeospatial.model.Properties = Builder(this).apply(block).build()
@SdkDsl
public class Builder {
/**
* Estimate of cloud cover.
*/
public var eoCloudCover: kotlin.Float? = null
/**
* Land cloud cover for Landsat Data Collection.
*/
public var landsatCloudCoverLand: kotlin.Float? = null
/**
* Platform property. Platform refers to the unique name of the specific platform the instrument is attached to. For satellites it is the name of the satellite, eg. landsat-8 (Landsat-8), sentinel-2a.
*/
public var platform: kotlin.String? = null
/**
* The angle from the sensor between nadir (straight down) and the scene center. Measured in degrees (0-90).
*/
public var viewOffNadir: kotlin.Float? = null
/**
* The sun azimuth angle. From the scene center point on the ground, this is the angle between truth north and the sun. Measured clockwise in degrees (0-360).
*/
public var viewSunAzimuth: kotlin.Float? = null
/**
* The sun elevation angle. The angle from the tangent of the scene center point to the sun. Measured from the horizon in degrees (-90-90). Negative values indicate the sun is below the horizon, e.g. sun elevation of -10° means the data was captured during [nautical twilight](https://www.timeanddate.com/astronomy/different-types-twilight.html).
*/
public var viewSunElevation: kotlin.Float? = null
@PublishedApi
internal constructor()
@PublishedApi
internal constructor(x: aws.sdk.kotlin.services.sagemakergeospatial.model.Properties) : this() {
this.eoCloudCover = x.eoCloudCover
this.landsatCloudCoverLand = x.landsatCloudCoverLand
this.platform = x.platform
this.viewOffNadir = x.viewOffNadir
this.viewSunAzimuth = x.viewSunAzimuth
this.viewSunElevation = x.viewSunElevation
}
@PublishedApi
internal fun build(): aws.sdk.kotlin.services.sagemakergeospatial.model.Properties = Properties(this)
internal fun correctErrors(): Builder {
return this
}
}
}