com.r3corda.protocols / TwoPartyDealProtocol / Floater

# Floater

`class Floater<T : FixableDealState> : Primary<StateRef>`

One side of the fixing protocol for an interest rate swap, but could easily be generalised furher

As per the Fixer, do not infer too much from this class name in terms of business roles. This is just the "side" of the protocol run by the party with the floating leg as a way of deciding who does what in the protocol.

### Constructors

<init> | `Floater(otherSide: SingleMessageRecipient, otherSessionID: Long, notary: NodeInfo, dealToFix: StateAndRef<T>, myKeyPair: KeyPair, sessionID: Long, progressTracker: ProgressTracker = Primary.tracker())` One side of the fixing protocol for an interest rate swap, but could easily be generalised furher

### Properties

progressTracker | `open val progressTracker: ProgressTracker` Override this to provide a ProgressTracker. If one is provided and stepped, the framework will do something helpful with the progress reports. If this protocol is invoked as a sub-protocol of another, then the tracker will be made a child of the current step in the parent. If its null, this protocol doesnt track progress.
sessionID | `val sessionID: Long`

### Inherited Properties

myKeyPair | `val myKeyPair: KeyPair`
notaryNode | `val notaryNode: NodeInfo`
otherSessionID | `val otherSessionID: Long`
otherSide | `val otherSide: SingleMessageRecipient`
payload | `val payload: U`

### Inherited Functions

call | `open fun call(): SignedTransaction` This is where you fill out your business logic.
getPartialTransaction | `fun getPartialTransaction(): UntrustworthyData<SignedTransaction>`
signWithOurKey | `open fun signWithOurKey(partialTX: SignedTransaction): WithKey`
verifyPartialTransaction | `fun verifyPartialTransaction(untrustedPartialTX: UntrustworthyData<SignedTransaction>): SignedTransaction`