libmongoconnector

package module
v1.5.2 Latest Latest
Warning

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

Go to latest
Published: Jul 25, 2023 License: GPL-3.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func BaseCB

func BaseCB(
	payload []byte,
	requestUnitFactory ErasedRequestFactory,
	m ModelMap,
	actionCB ActionCB,
) wimark.Document

BaseCB General callback for all MQTT broker incoming messages. Uses actionCB for useful side effects.

func CreateCB

func CreateCB(db *mongo.MongoDb,
	payload []byte, m ModelMap) wimark.Document

CreateCB Callback for creation.

func DeleteCB

func DeleteCB(db *mongo.MongoDb, payload []byte, m ModelMap) wimark.Document

DeleteCB Callback for removal.

func GetBaseLocationMaskQuery added in v1.5.1

func GetBaseLocationMaskQuery(mask wimark.BaseLocationMask) bson.M

GetBaseLocationMaskQuery Base location UUID OR mask

func GetCPEModelMaskQuery

func GetCPEModelMaskQuery(mask wimark.CPEModelMask) bson.M

GetCPEModelMaskQuery query

func GetClientStatMaskQuery

func GetClientStatMaskQuery(mask wimark.ClientStatMask) bson.M

GetClientStatMaskQuery client stat mask

func GetConfigRuleMaskQuery

func GetConfigRuleMaskQuery(mask wimark.ConfigRuleMask) bson.M

GetConfigRuleMaskQuery query

func GetControllerMask

func GetControllerMask(mask wimark.ControllerMask) bson.M

GetControllerMask controller mask

func GetCpeMaskQuery

func GetCpeMaskQuery(mask wimark.CPEMask) bson.M

GetCpeMaskQuery CPE mask query

func GetEventMaskQuery

func GetEventMaskQuery(mask wimark.EventMask) bson.M

GetEventMaskQuery event mask

func GetLBSCPEInfoMaskQuery

func GetLBSCPEInfoMaskQuery(mask wimark.LBSCPEInfoMask) bson.M

GetLBSCPEInfoMaskQuery lbs cpe info mask

func GetLBSClientCoordsMaskQuery

func GetLBSClientCoordsMaskQuery(mask wimark.LBSClientCoordsMask) bson.M

GetLBSClientCoordsMaskQuery lbs client coord mask

func GetLBSClientDataMaskQuery

func GetLBSClientDataMaskQuery(mask wimark.LBSClientDataMask) bson.M

GetLBSClientDataMaskQuery lbs mask

func GetRRMGroupMaskQuery added in v1.5.2

func GetRRMGroupMaskQuery(mask wimark.RRMGroupMask) bson.M

GetRRMGroupMaskQuery query

func GetSimpleMaskQuery

func GetSimpleMaskQuery(mask wimark.SimpleMask) bson.M

GetSimpleMaskQuery simple UUID mask

func GetStatsMaskQuery

func GetStatsMaskQuery(mask wimark.StatsMask) bson.M

GetStatsMaskQuery stat mask

func GetTimestampMaskQuery

func GetTimestampMaskQuery(v wimark.TimestampMask) bson.M

GetTimestampMaskQuery timestamp query

func GetWlanMaskQuery

func GetWlanMaskQuery(mask wimark.WLANMask) bson.M

GetWlanMaskQuery WLAN query

func ReadCB

func ReadCB(db *mongo.MongoDb, payload []byte, m ModelMap) wimark.Document

ReadCB Callback for search.

func UpdateCB

func UpdateCB(db *mongo.MongoDb,
	payload []byte, m ModelMap) wimark.Document

UpdateCB Callback for update.

Types

type ActionCB

type ActionCB func(ErasedRequest, ModelInfo) (interface{}, []wimark.ModelError)

ActionCB See BaseCB

type ErasedRequest

type ErasedRequest interface{}

ErasedRequest is the alias for 'any' type used for processing incoming requests

type ErasedRequestFactory

type ErasedRequestFactory func() ErasedRequest

ErasedRequestFactory fot factory

type FindData

type FindData map[wimark.UUID]json.RawMessage

FindData as main map for mask finding

type ModelInfo

type ModelInfo struct {
	Coll        string
	Indexes     []mgo.Index
	ToMongoFn   func(json.RawMessage) (bson.M, error)
	FromMongoFn func(bson.M) (json.RawMessage, error)
	MaskF       func(json.RawMessage) (bson.M, error)
}

ModelInfo is information required by CRUD functions

type ModelMap

type ModelMap map[string]ModelInfo

ModelMap is a mapping between model type name in JSON and corresponding ModelInfo (e.g. {"cpe": libwimark.CPE})

func GenericFactories

func GenericFactories() ModelMap

GenericFactories for return factories

type OperationCB

type OperationCB func(*mongo.MongoDb, *log.Logger,
	[]byte, ModelMap) wimark.Document

OperationCB ...

type UnitFactory

type UnitFactory func() interface{}

UnitFactory represents a factory function that creates type-erased objects. It is used to mimic generic behaviour.

Jump to

Keyboard shortcuts

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