An atproto PDS written in Go
at main 631 B view raw
1package server 2 3import ( 4 "github.com/haileyok/cocoon/sqlite_blockstore" 5 blockstore "github.com/ipfs/go-ipfs-blockstore" 6) 7 8type BlockstoreVariant int 9 10const ( 11 BlockstoreVariantSqlite = iota 12) 13 14func MustReturnBlockstoreVariant(maybeBsv string) BlockstoreVariant { 15 switch maybeBsv { 16 case "sqlite": 17 return BlockstoreVariantSqlite 18 default: 19 panic("invalid blockstore variant provided") 20 } 21} 22 23func (s *Server) getBlockstore(did string) blockstore.Blockstore { 24 switch s.config.BlockstoreVariant { 25 case BlockstoreVariantSqlite: 26 return sqlite_blockstore.New(did, s.db) 27 default: 28 return sqlite_blockstore.New(did, s.db) 29 } 30}