removed empty file
parent
6c5b7e0201
commit
9d8166ce11
|
@ -1,234 +0,0 @@
|
|||
package cache
|
||||
|
||||
// import (
|
||||
// "bytes"
|
||||
// bin "encoding/binary"
|
||||
// "errors"
|
||||
// "github.com/jmhodges/levigo"
|
||||
// "goposm/cache/binary"
|
||||
// "goposm/element"
|
||||
// "os"
|
||||
// "path/filepath"
|
||||
// "strconv"
|
||||
// )
|
||||
|
||||
// var levelDbWriteBufferSize, levelDbWriteBlockSize int64
|
||||
// var deltaCacheBunchSize int64
|
||||
|
||||
// func init() {
|
||||
// levelDbWriteBufferSize, _ = strconv.ParseInt(
|
||||
// os.Getenv("GOPOSM_LEVELDB_BUFFERSIZE"), 10, 32)
|
||||
// levelDbWriteBlockSize, _ = strconv.ParseInt(
|
||||
// os.Getenv("GOPOSM_LEVELDB_BLOCKSIZE"), 10, 32)
|
||||
|
||||
// // bunchSize defines how many coordinates should be stored in a
|
||||
// // single record. This is the maximum and a bunch will typically contain
|
||||
// // less coordinates (e.g. when nodes are removes).
|
||||
// //
|
||||
// // A higher number improves -read mode (writing the cache) but also
|
||||
// // increases the overhead during -write mode (reading coords).
|
||||
// deltaCacheBunchSize, _ = strconv.ParseInt(
|
||||
// os.Getenv("GOPOSM_DELTACACHE_BUNCHSIZE"), 10, 32)
|
||||
|
||||
// if deltaCacheBunchSize == 0 {
|
||||
// deltaCacheBunchSize = 128
|
||||
// }
|
||||
// }
|
||||
|
||||
// var (
|
||||
// NotFound = errors.New("not found")
|
||||
// )
|
||||
|
||||
// type OSMCache struct {
|
||||
// Dir string
|
||||
// Coords *DeltaCoordsCache
|
||||
// Ways *WaysCache
|
||||
// Nodes *NodesCache
|
||||
// Relations *RelationsCache
|
||||
// InsertedWays *InsertedWaysCache
|
||||
// opened bool
|
||||
// }
|
||||
|
||||
// func (c *OSMCache) Close() {
|
||||
// if c.Coords != nil {
|
||||
// c.Coords.close()
|
||||
// c.Coords = nil
|
||||
// }
|
||||
// if c.Nodes != nil {
|
||||
// c.Nodes.close()
|
||||
// c.Nodes = nil
|
||||
// }
|
||||
// if c.Ways != nil {
|
||||
// c.Ways.close()
|
||||
// c.Ways = nil
|
||||
// }
|
||||
// if c.Relations != nil {
|
||||
// c.Relations.close()
|
||||
// c.Relations = nil
|
||||
// }
|
||||
// }
|
||||
|
||||
// func NewOSMCache(dir string) *OSMCache {
|
||||
// cache := &OSMCache{Dir: dir}
|
||||
// return cache
|
||||
// }
|
||||
|
||||
// func (c *OSMCache) Open() error {
|
||||
// err := os.MkdirAll(c.Dir, 0755)
|
||||
// if err != nil {
|
||||
// return err
|
||||
// }
|
||||
// c.Coords, err = NewDeltaCoordsCache(filepath.Join(c.Dir, "coords"))
|
||||
// if err != nil {
|
||||
// return err
|
||||
// }
|
||||
// c.Nodes, err = NewNodesCache(filepath.Join(c.Dir, "nodes"))
|
||||
// if err != nil {
|
||||
// c.Close()
|
||||
// return err
|
||||
// }
|
||||
// c.Ways, err = NewWaysCache(filepath.Join(c.Dir, "ways"))
|
||||
// if err != nil {
|
||||
// c.Close()
|
||||
// return err
|
||||
// }
|
||||
// c.Relations, err = NewRelationsCache(filepath.Join(c.Dir, "relations"))
|
||||
// if err != nil {
|
||||
// c.Close()
|
||||
// return err
|
||||
// }
|
||||
// c.InsertedWays, err = NewInsertedWaysCache(filepath.Join(c.Dir, "inserted_ways"))
|
||||
// if err != nil {
|
||||
// c.Close()
|
||||
// return err
|
||||
// }
|
||||
// c.opened = true
|
||||
// return nil
|
||||
// }
|
||||
|
||||
// func (c *OSMCache) Exists() bool {
|
||||
// if c.opened {
|
||||
// return true
|
||||
// }
|
||||
// if _, err := os.Stat(filepath.Join(c.Dir, "coords")); !os.IsNotExist(err) {
|
||||
// return true
|
||||
// }
|
||||
// if _, err := os.Stat(filepath.Join(c.Dir, "nodes")); !os.IsNotExist(err) {
|
||||
// return true
|
||||
// }
|
||||
// if _, err := os.Stat(filepath.Join(c.Dir, "ways")); !os.IsNotExist(err) {
|
||||
// return true
|
||||
// }
|
||||
// if _, err := os.Stat(filepath.Join(c.Dir, "relations")); !os.IsNotExist(err) {
|
||||
// return true
|
||||
// }
|
||||
// if _, err := os.Stat(filepath.Join(c.Dir, "inserted_ways")); !os.IsNotExist(err) {
|
||||
// return true
|
||||
// }
|
||||
// return false
|
||||
// }
|
||||
|
||||
// func (c *OSMCache) Remove() error {
|
||||
// if c.opened {
|
||||
// c.Close()
|
||||
// }
|
||||
// if err := os.RemoveAll(filepath.Join(c.Dir, "coords")); err != nil {
|
||||
// return err
|
||||
// }
|
||||
// if err := os.RemoveAll(filepath.Join(c.Dir, "nodes")); err != nil {
|
||||
// return err
|
||||
// }
|
||||
// if err := os.RemoveAll(filepath.Join(c.Dir, "ways")); err != nil {
|
||||
// return err
|
||||
// }
|
||||
// if err := os.RemoveAll(filepath.Join(c.Dir, "relations")); err != nil {
|
||||
// return err
|
||||
// }
|
||||
// if err := os.RemoveAll(filepath.Join(c.Dir, "inserted_ways")); err != nil {
|
||||
// return err
|
||||
// }
|
||||
// return nil
|
||||
// }
|
||||
|
||||
// type Cache struct {
|
||||
// db *levigo.DB
|
||||
// wo *levigo.WriteOptions
|
||||
// ro *levigo.ReadOptions
|
||||
// }
|
||||
|
||||
// func (c *Cache) open(path string) error {
|
||||
// opts := levigo.NewOptions()
|
||||
// opts.SetCache(levigo.NewLRUCache(1024 * 1024 * 8))
|
||||
// opts.SetCreateIfMissing(true)
|
||||
// opts.SetMaxOpenFiles(64)
|
||||
// // save a few bytes by allowing leveldb to use delta enconding
|
||||
// // for up to n keys (instead of only 16)
|
||||
// opts.SetBlockRestartInterval(128)
|
||||
// if levelDbWriteBufferSize != 0 {
|
||||
// opts.SetWriteBufferSize(int(levelDbWriteBufferSize))
|
||||
// }
|
||||
// if levelDbWriteBlockSize != 0 {
|
||||
// opts.SetBlockSize(int(levelDbWriteBlockSize))
|
||||
// }
|
||||
// db, err := levigo.Open(path, opts)
|
||||
// if err != nil {
|
||||
// return err
|
||||
// }
|
||||
// c.db = db
|
||||
// c.wo = levigo.NewWriteOptions()
|
||||
// c.ro = levigo.NewReadOptions()
|
||||
// return nil
|
||||
// }
|
||||
|
||||
// func (c *Cache) close() {
|
||||
// c.db.Close()
|
||||
// }
|
||||
|
||||
// func idToKeyBuf(id int64) []byte {
|
||||
// var b bytes.Buffer
|
||||
// bin.Write(&b, bin.BigEndian, &id)
|
||||
// return b.Bytes()
|
||||
// }
|
||||
|
||||
// type InsertedWaysCache struct {
|
||||
// Cache
|
||||
// }
|
||||
|
||||
// func NewInsertedWaysCache(path string) (*InsertedWaysCache, error) {
|
||||
// cache := InsertedWaysCache{}
|
||||
// err := cache.open(path)
|
||||
// if err != nil {
|
||||
// return nil, err
|
||||
// }
|
||||
// return &cache, err
|
||||
// }
|
||||
|
||||
// func (p *Cache) Close() {
|
||||
// p.db.Close()
|
||||
// }
|
||||
|
||||
// func (p *InsertedWaysCache) PutMembers(members []element.Member) error {
|
||||
// batch := levigo.NewWriteBatch()
|
||||
// defer batch.Close()
|
||||
|
||||
// for _, m := range members {
|
||||
// if m.Type != element.WAY {
|
||||
// continue
|
||||
// }
|
||||
// keyBuf := idToKeyBuf(m.Id)
|
||||
// batch.Put(keyBuf, []byte{})
|
||||
// }
|
||||
// return p.db.Write(p.wo, batch)
|
||||
// }
|
||||
|
||||
// func (p *InsertedWaysCache) IsInserted(id int64) (bool, error) {
|
||||
// keyBuf := idToKeyBuf(id)
|
||||
// data, err := p.db.Get(p.ro, keyBuf)
|
||||
// if err != nil {
|
||||
// return false, err
|
||||
// }
|
||||
// if data == nil {
|
||||
// return false, nil
|
||||
// }
|
||||
// return true, nil
|
||||
// }
|
Loading…
Reference in New Issue