entity

package
v0.1.25 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 22, 2024 License: AGPL-3.0 Imports: 2 Imported by: 0

Documentation

Index

Constants

View Source
const (
	PeerType_MyselfPeer   string = "MyselfPeer"
	PeerType_PeerEndpoint string = "PeerEndpoint"
	PeerType_PeerClient   string = "PeerClient"
	PeerType_ChainApp     string = "ChainApp"
)
View Source
const (
	ActiveStatus_Up   string = "Up"
	ActiveStatus_Down string = "Down"
)
View Source
const (
	TransactionType_DataBlock string = "DataBlock"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type ChainApp

type ChainApp struct {
	entity.StatusEntity `xorm:"extends"`
	PeerId              string `xorm:"varchar(255)" json:"peerId,omitempty"`
	AppType             string `xorm:"varchar(255)" json:"appType,omitempty"`
	RegistPeerId        string `xorm:"varchar(255)" json:"registPeerId,omitempty"`
	Path                string `xorm:"varchar(255)" json:"path,omitempty"`
	MainClass           string `xorm:"varchar(255)" json:"mainClass,omitempty"`
	CodePackage         string `xorm:"varchar(255)" json:"codePackage,omitempty"`
	AppHash             string `xorm:"varchar(255)" json:"appHash,omitempty"`
	AppSignature        string `xorm:"varchar(255)" json:"appSignature,omitempty"`
	ConnectSessionId    string `xorm:"varchar(255)" json:"connectSessionId,omitempty"`
	ActiveStatus        string `xorm:"varchar(255)" json:"activeStatus,omitempty"`
}

func (ChainApp) IdName

func (ChainApp) IdName() string

func (ChainApp) KeyName

func (ChainApp) KeyName() string

func (ChainApp) TableName

func (ChainApp) TableName() string

type MyselfPeer

type MyselfPeer struct {
	PeerEntity     `xorm:"extends"`
	PeerPrivateKey string `xorm:"varchar(128)" json:"-"`
	PrivateKey     string `xorm:"varchar(1024)" json:"-"`
	/**
	 * 以下的字段是和证书相关,不是必须的
	 */
	CertType   string `xorm:"varchar(255)" json:"certType,omitempty"`
	CertFormat string `xorm:"varchar(255)" json:"certFormat,omitempty"`
	// peer的保护密码,不保存到数据库,hash后成为password
	OldPassword string `xorm:"-" json:"oldPassword,omitempty"`
	// peer的证书的原密码,申请新证书的时候必须提供,不保存数据库
	OldCertPassword string `xorm:"-" json:"oldCertPassword,omitempty"`
	// peer的新证书的密码,申请新证书的时候必须提供,不保存数据库
	NewCertPassword string `xorm:"-" json:"newCertPassword,omitempty"`
	// peer的hash后密码
	//Password    string `xorm:"-" json:"-"`
	CertContent string `xorm:"varchar(255)" json:"-"`
	/**
	 * 主发现地址,表示可信的,可以推荐你的peer地址
	 */
	DiscoveryAddress string     `xorm:"varchar(255)" json:"discoveryAddress,omitempty"`
	LastFindNodeTime *time.Time `json:"lastFindNodeTime,omitempty"`
}

func (MyselfPeer) IdName

func (MyselfPeer) IdName() string

func (MyselfPeer) KeyName

func (MyselfPeer) KeyName() string

func (MyselfPeer) TableName

func (MyselfPeer) TableName() string

type PeerClient

type PeerClient struct {
	//entity.StatusEntity `xorm:"extends"`
	Id           uint64     `xorm:"pk" json:"-"`
	CreateDate   *time.Time `xorm:"created" json:"createDate,omitempty"`
	UpdateDate   *time.Time `xorm:"updated" json:"updateDate,omitempty"`
	EntityId     string     `xorm:"-" json:"entityId,omitempty"`
	State        string     `xorm:"-" json:"state,omitempty"`
	Status       string     `xorm:"varchar(16)" json:"status,omitempty"`
	StatusReason string     `xorm:"varchar(255)" json:"statusReason,omitempty"`
	StatusDate   *time.Time `json:"statusDate,omitempty"`

	PeerId string `xorm:"varchar(255)" json:"peerId,omitempty"`
	/**
	 * 客户连接到节点的位置
	 */
	ConnectPeerId string `xorm:"varchar(255)" json:"connectPeerId,omitempty"`
	/**
	 * 客户连接到节点的地址
	 */
	ConnectAddress string `xorm:"varchar(255)" json:"connectAddress,omitempty"`
	/**
	 * 客户连接到节点的公钥
	 */
	ConnectPublicKey string `xorm:"varchar(1024)" json:"connectPublicKey,omitempty"`
	// 对应的用户编号
	UserId string `xorm:"varchar(255)" json:"userId,omitempty"`
	// 用户名
	Name string `xorm:"varchar(255)" json:"name,omitempty"`
	// 用户头像(base64字符串)
	Avatar           string `xorm:"varchar(10485760)" json:"avatar,omitempty"`
	ConnectSessionId string `xorm:"varchar(255)" json:"connectSessionId,omitempty"`
	ClientId         string `xorm:"varchar(255)" json:"clientId,omitempty"`
	ClientDevice     string `xorm:"varchar(255)" json:"clientDevice,omitempty"`
	ClientType       string `xorm:"varchar(255)" json:"clientType,omitempty"`
	DeviceToken      string `xorm:"varchar(255)" json:"deviceToken,omitempty"`
	Language         string `xorm:"varchar(255)" json:"language,omitempty"`
	MobileVerified   string `xorm:"varchar(255)" json:"mobileVerified,omitempty"`
	// 可见性YYYYY (peerId、mobileNumber、groupChat、qrCode、contactCard)
	VisibilitySetting string `xorm:"varchar(255)" json:"visibilitySetting,omitempty"`

	LastUpdateTime             *time.Time `json:"lastUpdateTime,omitempty"`
	LastAccessTime             *time.Time `json:"lastAccessTime,omitempty"`
	StartDate                  *time.Time `json:"startDate,omitempty"`
	EndDate                    *time.Time `json:"endDate,omitempty"`
	Mobile                     string     `xorm:"varchar(255)" json:"mobile,omitempty"`
	Email                      string     `xorm:"varchar(255)" json:"email,omitempty"`
	Address                    string     `xorm:"varchar(255)" json:"address,omitempty"`
	PeerPublicKey              string     `xorm:"varchar(255)" json:"peerPublicKey,omitempty"`
	PublicKey                  string     `xorm:"varchar(1024)" json:"publicKey,omitempty"`
	PreviousPublicKeySignature string     `xorm:"-" json:"previousPublicKeySignature,omitempty"`
	Signature                  string     `xorm:"-" json:"signature,omitempty"`
	SignatureData              string     `xorm:"-" json:"signatureData,omitempty"`
	ExpireDate                 int64      `xorm:"-" json:"expireDate,omitempty"`

	ActiveStatus        string     `xorm:"varchar(255)" json:"activeStatus,omitempty"`
	BlockId             string     `xorm:"varchar(255)" json:"blockId,omitempty"`
	Balance             float64    `json:"balance,omitempty"`
	Currency            string     `xorm:"varchar(32)" json:"currency,omitempty"`
	LastTransactionTime *time.Time `json:"lastTransactionTime,omitempty"`
}

* 新的设计考虑成为peerendpoint的从表,存放特定的信息,而且peerId不是唯一的主键了,成为外键

func (PeerClient) IdName

func (PeerClient) IdName() string

func (PeerClient) KeyName

func (PeerClient) KeyName() string

func (PeerClient) TableName

func (PeerClient) TableName() string

type PeerEndpoint

type PeerEndpoint struct {
	PeerEntity       `xorm:"extends"`
	EndpointType     string `xorm:"varchar(255)" json:"endpointType,omitempty"`
	DiscoveryAddress string `xorm:"varchar(255)" json:"discoveryAddress,omitempty"`
	Sdp              string `xorm:"varchar(3096)" json:"sdp,omitempty"`
}

func (PeerEndpoint) IdName

func (PeerEndpoint) IdName() string

func (PeerEndpoint) KeyName

func (PeerEndpoint) KeyName() string

func (PeerEndpoint) TableName

func (PeerEndpoint) TableName() string

type PeerEntity

type PeerEntity struct {
	entity.StatusEntity `xorm:"extends"`
	PeerLocation        `xorm:"extends"`
	Mobile              string     `xorm:"varchar(255) notnull" json:"mobile,omitempty"`
	Email               string     `xorm:"varchar(512)" json:"email,omitempty"`
	StartDate           *time.Time `json:"startDate,omitempty"`
	EndDate             *time.Time `json:"endDate,omitempty"`
	ConnectSessionId    string     `xorm:"varchar(255)" json:"connectSessionId,omitempty"`
	CreditScore         uint64
	PreferenceScore     uint64
	BadCount            uint64
	StaleCount          uint64
	LastAccessMillis    int64
	LastAccessTime      *time.Time `json:"lastAccessTime,omitempty"`
	ActiveStatus        string     `xorm:"varchar(32)" json:"activeStatus,omitempty"`
	BlockId             string     `xorm:"varchar(255)" json:"blockId,omitempty"`
	Balance             float64    `json:"balance,omitempty"`
	Currency            string     `xorm:"varchar(32)" json:"currency,omitempty"`
	LastTransactionTime *time.Time `json:"lastTransactionTime,omitempty"`

	PreviousPublicKeySignature string `xorm:"-" json:"previousPublicKeySignature,omitempty"`
	Signature                  string `xorm:"-" json:"signature,omitempty"`
	SignatureData              string `xorm:"-" json:"signatureData,omitempty"`
	ExpireDate                 int64  `xorm:"-" json:"expireDate,omitempty"`
}

type PeerLocation

type PeerLocation struct {
	PeerId          string `xorm:"varchar(255) unique" json:"peerId,omitempty"`
	Kind            string `xorm:"varchar(255) notnull" json:"kind,omitempty"`
	Name            string `xorm:"varchar(255) notnull" json:"name,omitempty"`
	SecurityContext string `xorm:"varchar(1024)" json:"securityContext,omitempty"`
	/**
	libp2p的公私钥
	*/
	PeerPublicKey string `xorm:"varchar(128)" json:"peerPublicKey,omitempty"`
	/**
	openpgp的公私钥
	*/
	PublicKey      string     `xorm:"varchar(1024)" json:"publicKey,omitempty"`
	Address        string     `xorm:"varchar(1024) notnull" json:"address,omitempty"`
	LastUpdateTime *time.Time `json:"lastUpdateTime,omitempty"`
}

* 节点的位置,

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL