tapir/applications/transcript_app.go

33 lines
904 B
Go
Raw Normal View History

2019-09-14 23:44:19 +00:00
package applications
import (
"cwtch.im/tapir"
"cwtch.im/tapir/primitives/core"
)
2019-09-15 21:20:05 +00:00
// TranscriptApp defines a Tapir Meta-App which provides a global cryptographic transcript
2019-09-14 23:44:19 +00:00
type TranscriptApp struct {
transcript *core.Transcript
}
// NewInstance creates a new TranscriptApp
func (TranscriptApp) NewInstance() tapir.Application {
ta := new(TranscriptApp)
return ta
}
// Init initializes the cryptographic transcript
func (ta *TranscriptApp) Init(connection tapir.Connection) {
ta.transcript = core.NewTranscript("tapir-transcript")
}
// Transcript returns a pointer to the cryptographic transcript
func (ta *TranscriptApp) Transcript() *core.Transcript {
return ta.transcript
}
2019-09-15 21:20:05 +00:00
// PropagateTranscript overrides the default transcript and propagates a transcript from a previous session
func (ta *TranscriptApp) PropagateTranscript(transcript *core.Transcript) {
ta.transcript = transcript
}