sealed trait ContractInfo extends TLVSerializable[ContractInfoTLV]
- Alphabetic
- By Inheritance
- ContractInfo
- TLVSerializable
- NetworkElement
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Abstract Value Members
- abstract def allOutcomesAndPayouts: Vector[(OracleOutcome, Satoshis)]
Computes the CET set and their corresponding payouts using CETCalculator.
- abstract def contractDescriptors: Vector[ContractDescriptor]
- abstract def contracts: Vector[SingleContractInfo]
- abstract def maxOffererPayout: Satoshis
Returns the maximum payout the offerer could win from this contract
- abstract def oracleInfos: Vector[OracleInfo]
- abstract def toTLV: ContractInfoTLV
- Definition Classes
- TLVSerializable
- abstract def totalCollateral: Satoshis
- abstract def updateOnAccept(newTotalCollateral: Satoshis, negotiationFields: NegotiationFields): ContractInfo
A ContractInfo can be constructed by the offerer, but it will not contain new information which alters the DLC's contract which is received in the accept message.
A ContractInfo can be constructed by the offerer, but it will not contain new information which alters the DLC's contract which is received in the accept message.
Specifically if the total collateral changes or negotiation fields are relevant.
In these cases, this function should be called to update the ContractInfo.
Concrete Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- lazy val adaptorPoints: Vector[ECPublicKey]
- lazy val adaptorPointsIndexed: Vector[Indexed[ECPublicKey]]
- lazy val allOutcomes: Vector[OracleOutcome]
Corresponds with this DLC's CET set
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def byteSize: Long
The size of the NetworkElement in bytes.
The size of the NetworkElement in bytes.
- Definition Classes
- NetworkElement
- def bytes: ByteVector
The byte representation of the NetworkElement
The byte representation of the NetworkElement
- Definition Classes
- TLVSerializable → NetworkElement
- def bytesLE: ByteVector
The byte representation of the NetworkElement in little endian
The byte representation of the NetworkElement in little endian
- Definition Classes
- NetworkElement
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- def findOutcome(sigs: Vector[OracleSignatures]): Option[OracleOutcome]
Searches all possible outcomes for one which corresponds to the given signatures.
Searches all possible outcomes for one which corresponds to the given signatures.
Warning: This will return false if too many OracleSignatures are given.
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def getPayouts(outcome: OracleOutcome): (Satoshis, Satoshis)
Returns the payouts for the outcome as (toOffer, toAccept)
- def getPayouts(sigs: Vector[OracleSignatures]): (Satoshis, Satoshis)
Returns the payouts for the signature as (toOffer, toAccept)
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hex: String
The hexadecimal representation of the NetworkElement
The hexadecimal representation of the NetworkElement
- Definition Classes
- NetworkElement
- def hexLE: String
The hexadecimal representation of the NetworkElement in little endian
The hexadecimal representation of the NetworkElement in little endian
- Definition Classes
- NetworkElement
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- lazy val outcomeMap: Map[OracleOutcome, (ECPublicKey, Satoshis, Satoshis)]
Map OracleOutcomes (which correspond to CETs) to their adpator point and payouts
- def resultOfOutcome(outcome: OracleOutcome): (ECPublicKey, Satoshis, Satoshis)
Returns the adaptor point and payouts for a given OracleOutcome
- def serializationVersion: DLCSerializationVersion
- lazy val sigPointMap: Map[ECPublicKey, OracleOutcome]
Maps adpator points to their corresponding OracleOutcomes (which correspond to CETs)
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- def verifySigs(outcome: OracleOutcome, sigs: Vector[OracleSignatures]): Boolean
Checks if the given OracleSignatures exactly match the given OracleOutcome.
Checks if the given OracleSignatures exactly match the given OracleOutcome.
Warning: This will return false if too many OracleSignatures are given.
TODO: Needs a lot of optimization
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()