Upstream merge Add Session wrapper With this patch we can now use gocqlx like: ``` session.Query(`SELECT * FROM struct_table`, nil).Get(&v) ``` instead of (old format): ``` gocqlx.Query(session.Query(`SELECT * FROM struct_table`), nil).Get(&v) ``` Signed-off-by: Michał Matczuk <michal@scylladb.com>
29 lines
769 B
Go
29 lines
769 B
Go
// Copyright (C) 2017 ScyllaDB
|
|
// Use of this source code is governed by a ALv2-style
|
|
// license that can be found in the LICENSE file.
|
|
|
|
package migrate
|
|
|
|
import (
|
|
"context"
|
|
|
|
"github.com/scylladb/gocqlx"
|
|
)
|
|
|
|
// CallbackEvent specifies type of the event when calling CallbackFunc.
|
|
type CallbackEvent uint8
|
|
|
|
// enumeration of CallbackEvents
|
|
const (
|
|
BeforeMigration CallbackEvent = iota
|
|
AfterMigration
|
|
)
|
|
|
|
// CallbackFunc enables interrupting the migration process and executing code
|
|
// while migrating. If error is returned the migration is aborted.
|
|
type CallbackFunc func(ctx context.Context, session gocqlx.Session, ev CallbackEvent, name string) error
|
|
|
|
// Callback is called before and after each migration.
|
|
// See CallbackFunc for details.
|
|
var Callback CallbackFunc
|