package tv.anypoint.proxy.model.agent import kotlinx.serialization.Serializable @Serializable data class ProgramProviderChannel( val id: Int, val delay: Int = 0, val scte35Delay: Int = 0, val serviceId: String, val kid: Boolean = false, /** 없을 경우 service 채널 아님 */ val placementIds: IntArray? = null, val testPlacementIds: IntArray? = null, val taxonomies: List? = null, ) { var recordId: Int = 0 override fun equals(other: Any?): Boolean { if (this === other) return true if (javaClass != other?.javaClass) return false other as ProgramProviderChannel if (id != other.id) return false if (delay != other.delay) return false if (serviceId != other.serviceId) return false if (kid != other.kid) return false if (placementIds != null) { if (other.placementIds == null) return false if (!placementIds.contentEquals(other.placementIds)) return false } else if (other.placementIds != null) return false return true } override fun hashCode(): Int { var result = id result = 31 * result + delay result = 31 * result + serviceId.hashCode() result = 31 * result + kid.hashCode() result = 31 * result + (placementIds?.contentHashCode() ?: 0) return result } }