diff --git a/db/load.go b/db/db.go similarity index 66% rename from db/load.go rename to db/db.go index 2f0ab23..8ea30db 100644 --- a/db/load.go +++ b/db/db.go @@ -15,13 +15,37 @@ package db import ( + "errors" + "fmt" "io" + "github.com/barakmich/glog" + "github.com/google/cayley/config" "github.com/google/cayley/graph" "github.com/google/cayley/quad" ) +var ErrNotPersistent = errors.New("database type is not persistent") + +func Init(cfg *config.Config) error { + if !graph.IsPersistent(cfg.DatabaseType) { + return fmt.Errorf("ignoring unproductive database initialization request: %v", ErrNotPersistent) + } + + return graph.InitTripleStore(cfg.DatabaseType, cfg.DatabasePath, cfg.DatabaseOptions) +} + +func Open(cfg *config.Config) (graph.TripleStore, error) { + glog.Infof("Opening database %q at %s", cfg.DatabaseType, cfg.DatabasePath) + ts, err := graph.NewTripleStore(cfg.DatabaseType, cfg.DatabasePath, cfg.DatabaseOptions) + if err != nil { + return nil, err + } + + return ts, nil +} + func Load(ts graph.TripleStore, cfg *config.Config, dec quad.Unmarshaler) error { bulker, canBulk := ts.(graph.BulkLoader) if canBulk { diff --git a/db/init.go b/db/init.go deleted file mode 100644 index 0f0887c..0000000 --- a/db/init.go +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright 2014 The Cayley Authors. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package db - -import ( - "errors" - "fmt" - - "github.com/google/cayley/config" - "github.com/google/cayley/graph" -) - -var ErrNotPersistent = errors.New("database type is not persistent") - -func Init(cfg *config.Config) error { - if !graph.IsPersistent(cfg.DatabaseType) { - return fmt.Errorf("ignoring unproductive database initialization request: %v", ErrNotPersistent) - } - - return graph.InitTripleStore(cfg.DatabaseType, cfg.DatabasePath, cfg.DatabaseOptions) -} diff --git a/db/open.go b/db/open.go deleted file mode 100644 index bf1f2c7..0000000 --- a/db/open.go +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright 2014 The Cayley Authors. All rights reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package db - -import ( - "github.com/barakmich/glog" - - "github.com/google/cayley/config" - "github.com/google/cayley/graph" -) - -func Open(cfg *config.Config) (graph.TripleStore, error) { - glog.Infof("Opening database %q at %s", cfg.DatabaseType, cfg.DatabasePath) - ts, err := graph.NewTripleStore(cfg.DatabaseType, cfg.DatabasePath, cfg.DatabaseOptions) - if err != nil { - return nil, err - } - - return ts, nil -}