commonMain.ssm.data.dsl.model.DataSsmSession.kt Maven / Gradle / Ivy
package ssm.data.dsl.model
import kotlin.js.JsExport
import kotlin.js.JsName
import kotlinx.serialization.Serializable
import ssm.chaincode.dsl.blockchain.Transaction
import ssm.chaincode.dsl.blockchain.TransactionDTO
import ssm.chaincode.dsl.model.SessionName
import ssm.chaincode.dsl.model.uri.SsmUri
@JsExport
@JsName("DataSsmSessionDTO")
interface DataSsmSessionDTO {
/**
* uri of the the ssm
* @example "ssm:peerId?:channelId:chaincodeId"
*/
val ssmUri: SsmUri
/**
* Identifier of the session
* @example [ssm.chaincode.dsl.model.SsmSession.session]
*/
val sessionName: SessionName
/**
* The state of an SSM session
*/
val state: DataSsmSessionStateDTO
/**
* The channel this session was instantiated in
*/
val channel: DataChannelDTO
/**
* Transaction that initiated the state of the session
*/
val transaction: TransactionDTO?
val transactions: List
}
/**
* @d2 model
* @parent [ssm.data.dsl.DataSsmD2Model]
* Represents an SSM session with metadata
*/
@Serializable
@JsExport
@JsName("DataSsmSession")
class DataSsmSession(
override val sessionName: SessionName,
override val state: DataSsmSessionState,
override val channel: DataChannel,
override val transaction: Transaction?,
override val ssmUri: SsmUri,
override val transactions: List,
) : DataSsmSessionDTO
© 2015 - 2025 Weber Informatics LLC | Privacy Policy