~ubuntu-branches/debian/sid/golang-github-blevesearch-bleve/sid

« back to all changes in this revision

Viewing changes to index/store/goleveldb/config.go

  • Committer: Package Import Robot
  • Author(s): Michael Lustfield
  • Date: 2017-03-30 16:06:03 UTC
  • Revision ID: package-import@ubuntu.com-20170330160603-0oogmb960l7918jx
Tags: upstream-0.5.0+git20170324.202.4702785f
ImportĀ upstreamĀ versionĀ 0.5.0+git20170324.202.4702785f

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
//  Copyright (c) 2015 Couchbase, Inc.
 
2
//
 
3
// Licensed under the Apache License, Version 2.0 (the "License");
 
4
// you may not use this file except in compliance with the License.
 
5
// You may obtain a copy of the License at
 
6
//
 
7
//              http://www.apache.org/licenses/LICENSE-2.0
 
8
//
 
9
// Unless required by applicable law or agreed to in writing, software
 
10
// distributed under the License is distributed on an "AS IS" BASIS,
 
11
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 
12
// See the License for the specific language governing permissions and
 
13
// limitations under the License.
 
14
 
 
15
package goleveldb
 
16
 
 
17
import (
 
18
        "github.com/syndtr/goleveldb/leveldb/filter"
 
19
        "github.com/syndtr/goleveldb/leveldb/opt"
 
20
)
 
21
 
 
22
func applyConfig(o *opt.Options, config map[string]interface{}) (*opt.Options, error) {
 
23
 
 
24
        ro, ok := config["read_only"].(bool)
 
25
        if ok {
 
26
                o.ReadOnly = ro
 
27
        }
 
28
 
 
29
        cim, ok := config["create_if_missing"].(bool)
 
30
        if ok {
 
31
                o.ErrorIfMissing = !cim
 
32
        }
 
33
 
 
34
        eie, ok := config["error_if_exists"].(bool)
 
35
        if ok {
 
36
                o.ErrorIfExist = eie
 
37
        }
 
38
 
 
39
        wbs, ok := config["write_buffer_size"].(float64)
 
40
        if ok {
 
41
                o.WriteBuffer = int(wbs)
 
42
        }
 
43
 
 
44
        bs, ok := config["block_size"].(float64)
 
45
        if ok {
 
46
                o.BlockSize = int(bs)
 
47
        }
 
48
 
 
49
        bri, ok := config["block_restart_interval"].(float64)
 
50
        if ok {
 
51
                o.BlockRestartInterval = int(bri)
 
52
        }
 
53
 
 
54
        lcc, ok := config["lru_cache_capacity"].(float64)
 
55
        if ok {
 
56
                o.BlockCacheCapacity = int(lcc)
 
57
        }
 
58
 
 
59
        bfbpk, ok := config["bloom_filter_bits_per_key"].(float64)
 
60
        if ok {
 
61
                bf := filter.NewBloomFilter(int(bfbpk))
 
62
                o.Filter = bf
 
63
        }
 
64
 
 
65
        return o, nil
 
66
}