Class/Object

fr.acinq.eclair.channel

Commitments

Related Docs: object Commitments | package channel

Permalink

case class Commitments(channelVersion: ChannelVersion, localParams: LocalParams, remoteParams: RemoteParams, channelFlags: Byte, localCommit: LocalCommit, remoteCommit: RemoteCommit, localChanges: LocalChanges, remoteChanges: RemoteChanges, localNextHtlcId: Long, remoteNextHtlcId: Long, originChannels: Map[Long, Origin], remoteNextCommitInfo: Either[WaitingForRevocation, PublicKey], commitInput: InputInfo, remotePerCommitmentSecrets: ShaChain, channelId: ByteVector32) extends Product with Serializable

about remoteNextCommitInfo: we either: - have built and signed their next commit tx with their next revocation hash which can now be discarded - have their next per-commitment point So, when we've signed and sent a commit message and are waiting for their revocation message, theirNextCommitInfo is their next commit tx. The rest of the time, it is their next per-commitment point

Linear Supertypes
Serializable, Serializable, Product, Equals, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Commitments
  2. Serializable
  3. Serializable
  4. Product
  5. Equals
  6. AnyRef
  7. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new Commitments(channelVersion: ChannelVersion, localParams: LocalParams, remoteParams: RemoteParams, channelFlags: Byte, localCommit: LocalCommit, remoteCommit: RemoteCommit, localChanges: LocalChanges, remoteChanges: RemoteChanges, localNextHtlcId: Long, remoteNextHtlcId: Long, originChannels: Map[Long, Origin], remoteNextCommitInfo: Either[WaitingForRevocation, PublicKey], commitInput: InputInfo, remotePerCommitmentSecrets: ShaChain, channelId: ByteVector32)

    Permalink

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. def addLocalProposal(proposal: UpdateMessage): Commitments

    Permalink
  5. def addRemoteProposal(proposal: UpdateMessage): Commitments

    Permalink
  6. def almostTimedOutIncomingHtlcs(blockheight: Long, fulfillSafety: CltvExpiryDelta): Set[UpdateAddHtlc]

    Permalink

    HTLCs that are close to timing out upstream are potentially dangerous.

    HTLCs that are close to timing out upstream are potentially dangerous. If we received the pre-image for those HTLCs, we need to get a remote signed updated commitment that removes this HTLC. Otherwise when we get close to the upstream timeout, we risk an on-chain race condition between their HTLC timeout and our HTLC success in case of a force-close.

  7. val announceChannel: Boolean

    Permalink
  8. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  9. lazy val availableBalanceForReceive: MilliSatoshi

    Permalink
  10. lazy val availableBalanceForSend: MilliSatoshi

    Permalink
  11. val channelFlags: Byte

    Permalink
  12. val channelId: ByteVector32

    Permalink
  13. val channelVersion: ChannelVersion

    Permalink
  14. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @HotSpotIntrinsicCandidate() @throws( ... )
  15. val commitInput: InputInfo

    Permalink
  16. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  17. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
    Annotations
    @HotSpotIntrinsicCandidate()
  18. def hasNoPendingHtlcs: Boolean

    Permalink
  19. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  20. val localChanges: LocalChanges

    Permalink
  21. val localCommit: LocalCommit

    Permalink
  22. val localNextHtlcId: Long

    Permalink
  23. val localParams: LocalParams

    Permalink
  24. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  25. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @HotSpotIntrinsicCandidate()
  26. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @HotSpotIntrinsicCandidate()
  27. val originChannels: Map[Long, Origin]

    Permalink
  28. val remoteChanges: RemoteChanges

    Permalink
  29. val remoteCommit: RemoteCommit

    Permalink
  30. val remoteNextCommitInfo: Either[WaitingForRevocation, PublicKey]

    Permalink
  31. val remoteNextHtlcId: Long

    Permalink
  32. val remoteParams: RemoteParams

    Permalink
  33. val remotePerCommitmentSecrets: ShaChain

    Permalink
  34. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  35. def timedOutOutgoingHtlcs(blockheight: Long): Set[UpdateAddHtlc]

    Permalink
  36. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  37. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  38. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Deprecated Value Members

  1. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @Deprecated @deprecated @throws( classOf[java.lang.Throwable] )
    Deprecated

    (Since version ) see corresponding Javadoc for more information.

Inherited from Serializable

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from AnyRef

Inherited from Any

Ungrouped