loader

package
v1.0.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 27, 2019 License: GPL-3.0 Imports: 6 Imported by: 0

Documentation

Overview

Copyright © 2018 Antoine GIRARD <[email protected]>

Copyright © 2018 Antoine GIRARD <[email protected]>

Copyright © 2018 Antoine GIRARD <[email protected]>

Index

Constants

This section is empty.

Variables

View Source
var LoaderList = map[string]Loader{
	"default": Loader{
		FormatCreate: func(c *client.Client, obj map[string]interface{}, defaults map[string]string) map[string]interface{} {
			log.Debug().Interface("in", obj).Msgf("default.FormatCreate")

			cleanObj(obj, "dbid")
			if tenant, exist := obj["tenantdbid"]; exist {
				obj["tenantdbid"] = searchFor(c, "CfgTenant", tenant.(string), defaults)
			}
			if folder, exist := obj["folderid"]; exist {
				obj["folderid"] = searchFor(c, "CfgFolder", folder.(string), defaults)
			}

			log.Debug().Interface("out", obj).Msgf("default.FormatCreate")
			return obj
		},
		FormatUpdate: func(c *client.Client, src, obj map[string]interface{}, defaults map[string]string) map[string]interface{} {

			obj["dbid"] = src["dbid"]

			if tenant, exist := src["tenantdbid"]; exist {
				obj["tenantdbid"] = searchFor(c, "CfgTenant", tenant.(string), defaults)
			}
			if folder, exist := src["folderid"]; exist {
				obj["folderid"] = searchFor(c, "CfgFolder", folder.(string), defaults)
			}

			return obj
		},
	},
}

Functions

func FilterBy

func FilterBy(obj map[string]interface{}, data []map[string]interface{}, cmp func(map[string]interface{}, map[string]interface{}) bool) []map[string]interface{}

func ListObject

func ListObject(c *client.Client, t string) []map[string]interface{}

func MatchByEl

func MatchByEl(src, dst map[string]interface{}, el string) bool

func MatchId

func MatchId(src, dst map[string]interface{}) bool

func MatchIdName

func MatchIdName(src, dst map[string]interface{}) bool

func MatchName

func MatchName(src, dst map[string]interface{}) bool

Types

type Loader

type Loader struct {
	FormatCreate func(*client.Client, map[string]interface{}, map[string]string) map[string]interface{}
	FormatUpdate func(*client.Client, map[string]interface{}, map[string]interface{}, map[string]string) map[string]interface{}
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL