github.com/condensat/bank-core@v0.1.0/database/model/swapinfo.go (about) 1 // Copyright 2020 Condensat Tech. All rights reserved. 2 // Use of this source code is governed by a MIT 3 // license that can be found in the LICENSE file. 4 5 package model 6 7 import ( 8 "time" 9 ) 10 11 type SwapInfoID ID 12 type SwapStatus String 13 type Payload String 14 15 const ( 16 SwapStatusProposed SwapStatus = "proposed" 17 SwapStatusAccepted SwapStatus = "accepted" 18 SwapStatusFinalized SwapStatus = "finalized" 19 SwapStatusCompleted SwapStatus = "completed" 20 SwapStatusCanceled SwapStatus = "canceled" 21 ) 22 23 type SwapInfo struct { 24 ID SwapInfoID `gorm:"primary_key"` 25 Timestamp time.Time `gorm:"index;not null;type:timestamp"` // Creation timestamp 26 SwapID SwapID `gorm:"index;not null"` // [FK] Reference to Swap table 27 Status SwapStatus `gorm:"index;not null;size:16"` // SwapStatus [proposed, accepted, finalized, completed, canceled] 28 Payload Payload `gorm:"type:blob;not null"` // Payload swap data 29 }