/
EsInterface.go
61 lines (56 loc) · 2.96 KB
/
EsInterface.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
package es
import (
"errors"
"github.com/1340691923/ElasticView/platform-basic-libs/escache"
"github.com/gofiber/fiber/v2"
)
type EsInterface interface {
SnapshotRepositoryList(ctx *fiber.Ctx, esSnapshotInfo *escache.EsSnapshotInfo) (err error)
SnapshotCreateRepository(ctx *fiber.Ctx, snapshotCreateRepository *escache.SnapshotCreateRepository) (err error)
CleanupeRepository(ctx *fiber.Ctx, repository *escache.CleanupeRepository) (err error)
SnapshotDeleteRepository(ctx *fiber.Ctx, repository *escache.SnapshotDeleteRepository) (err error)
CreateSnapshot(ctx *fiber.Ctx, snapshot *escache.CreateSnapshot) (err error)
SnapshotList(ctx *fiber.Ctx, list *escache.SnapshotList) (err error)
SnapshotDelete(ctx *fiber.Ctx, snapshotDelete *escache.SnapshotDelete) (err error)
SnapshotDetail(ctx *fiber.Ctx, detail *escache.SnapshotDetail) (err error)
SnapshotRestore(ctx *fiber.Ctx, restore *escache.SnapshotRestore) (err error)
SnapshotStatus(ctx *fiber.Ctx, status *escache.SnapshotStatus) (err error)
Cat(ctx *fiber.Ctx, rest *escache.EsCat) (err error)
RunDsl(ctx *fiber.Ctx, optimize *escache.EsRest) (err error)
Optimize(ctx *fiber.Ctx, optimize *escache.EsOptimize) (err error)
RecoverCanWrite(ctx *fiber.Ctx) (err error)
EsDocDeleteRowByID(ctx *fiber.Ctx, id *escache.EsDocDeleteRowByID) (err error)
EsDocUpdateByID(ctx *fiber.Ctx, id *escache.EsDocUpdateByID) (err error)
EsDocInsert(ctx *fiber.Ctx, id *escache.EsDocUpdateByID) (err error)
EsIndexCreate(ctx *fiber.Ctx, info *escache.EsIndexInfo) (err error)
EsIndexDelete(ctx *fiber.Ctx, info *escache.EsIndexInfo) (err error)
EsIndexGetSettings(ctx *fiber.Ctx, info *escache.EsIndexInfo) (err error)
EsIndexGetSettingsInfo(ctx *fiber.Ctx, info *escache.EsIndexInfo) (err error)
EsIndexGetAlias(ctx *fiber.Ctx, info *escache.EsAliasInfo) (err error)
EsIndexOperateAlias(ctx *fiber.Ctx, info *escache.EsAliasInfo) (err error)
EsIndexReindex(ctx *fiber.Ctx, info *escache.EsReIndexInfo) (err error)
EsIndexIndexNames(ctx *fiber.Ctx) (err error)
EsIndexStats(ctx *fiber.Ctx, info *escache.EsIndexInfo) (err error)
EsIndexCatStatus(ctx *fiber.Ctx, info *escache.EsIndexInfo) (err error)
EsMappingList(ctx *fiber.Ctx, properties *escache.EsMapGetProperties) (err error)
UpdateMapping(ctx *fiber.Ctx, mapping *escache.UpdateMapping) (err error)
TaskList(ctx *fiber.Ctx) (err error)
Cancel(ctx *fiber.Ctx, task *escache.CancelTask) (err error)
CrudGetList(ctx *fiber.Ctx, task *escache.CrudFilter) (err error)
CrudGetDSL(ctx *fiber.Ctx, task *escache.CrudFilter) (err error)
}
var VerError = errors.New("ES版本暂只支持6,7")
var EsServiceMap = map[int]func(conn *escache.EsConnect) (EsInterface, error){
6: NewEsServiceV6,
7: NewEsServiceV7,
8: NewEsServiceV8,
}
func NewEsService(conn *escache.EsConnect) (EsInterface, error) {
var found bool
var fn func(conn *escache.EsConnect) (EsInterface, error)
if fn, found = EsServiceMap[conn.Version]; !found {
return nil, VerError
}
fn = EsServiceMap[conn.Version]
return fn(conn)
}