mirror of
https://github.com/zitadel/zitadel.git
synced 2025-08-12 04:37:31 +00:00
chore: move the go code into a subfolder
This commit is contained in:
116
apps/api/internal/query/key.go
Normal file
116
apps/api/internal/query/key.go
Normal file
@@ -0,0 +1,116 @@
|
||||
package query
|
||||
|
||||
import (
|
||||
"time"
|
||||
|
||||
"github.com/zitadel/zitadel/internal/crypto"
|
||||
"github.com/zitadel/zitadel/internal/query/projection"
|
||||
)
|
||||
|
||||
type Key interface {
|
||||
ID() string
|
||||
Algorithm() string
|
||||
Use() crypto.KeyUsage
|
||||
Sequence() uint64
|
||||
}
|
||||
|
||||
type PrivateKey interface {
|
||||
Key
|
||||
Expiry() time.Time
|
||||
Key() *crypto.CryptoValue
|
||||
}
|
||||
|
||||
type PublicKey interface {
|
||||
Key
|
||||
Expiry() time.Time
|
||||
Key() interface{}
|
||||
}
|
||||
|
||||
type PublicKeys struct {
|
||||
SearchResponse
|
||||
Keys []PublicKey
|
||||
}
|
||||
|
||||
type key struct {
|
||||
id string
|
||||
creationDate time.Time
|
||||
changeDate time.Time
|
||||
sequence uint64
|
||||
resourceOwner string
|
||||
algorithm string
|
||||
use crypto.KeyUsage
|
||||
}
|
||||
|
||||
func (k *key) ID() string {
|
||||
return k.id
|
||||
}
|
||||
|
||||
func (k *key) Algorithm() string {
|
||||
return k.algorithm
|
||||
}
|
||||
|
||||
func (k *key) Use() crypto.KeyUsage {
|
||||
return k.use
|
||||
}
|
||||
|
||||
func (k *key) Sequence() uint64 {
|
||||
return k.sequence
|
||||
}
|
||||
|
||||
var (
|
||||
keyTable = table{
|
||||
name: projection.KeyProjectionTable,
|
||||
instanceIDCol: projection.KeyColumnInstanceID,
|
||||
}
|
||||
KeyColID = Column{
|
||||
name: projection.KeyColumnID,
|
||||
table: keyTable,
|
||||
}
|
||||
KeyColCreationDate = Column{
|
||||
name: projection.KeyColumnCreationDate,
|
||||
table: keyTable,
|
||||
}
|
||||
KeyColChangeDate = Column{
|
||||
name: projection.KeyColumnChangeDate,
|
||||
table: keyTable,
|
||||
}
|
||||
KeyColResourceOwner = Column{
|
||||
name: projection.KeyColumnResourceOwner,
|
||||
table: keyTable,
|
||||
}
|
||||
KeyColInstanceID = Column{
|
||||
name: projection.KeyColumnInstanceID,
|
||||
table: keyTable,
|
||||
}
|
||||
KeyColSequence = Column{
|
||||
name: projection.KeyColumnSequence,
|
||||
table: keyTable,
|
||||
}
|
||||
KeyColAlgorithm = Column{
|
||||
name: projection.KeyColumnAlgorithm,
|
||||
table: keyTable,
|
||||
}
|
||||
KeyColUse = Column{
|
||||
name: projection.KeyColumnUse,
|
||||
table: keyTable,
|
||||
}
|
||||
)
|
||||
|
||||
var (
|
||||
keyPrivateTable = table{
|
||||
name: projection.KeyPrivateTable,
|
||||
instanceIDCol: projection.KeyPrivateColumnInstanceID,
|
||||
}
|
||||
KeyPrivateColID = Column{
|
||||
name: projection.KeyPrivateColumnID,
|
||||
table: keyPrivateTable,
|
||||
}
|
||||
KeyPrivateColExpiry = Column{
|
||||
name: projection.KeyPrivateColumnExpiry,
|
||||
table: keyPrivateTable,
|
||||
}
|
||||
KeyPrivateColKey = Column{
|
||||
name: projection.KeyPrivateColumnKey,
|
||||
table: keyPrivateTable,
|
||||
}
|
||||
)
|
Reference in New Issue
Block a user