object

package
v0.11.1 Latest Latest
Warning

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

Go to latest
Published: Jan 8, 2023 License: Apache-2.0 Imports: 6 Imported by: 3

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func SerializeUploadUnit

func SerializeUploadUnit(u interface{}) ([]byte, error)

Types

type BindingConfigPart added in v0.9.0

type BindingConfigPart struct {
	// binding
	DbType        DriverType `mapstructure:"dbType"`
	Neo4jUri      string     `mapstructure:"neo4JUri"`
	Neo4jUserName string     `mapstructure:"neo4JUserName"`
	Neo4jPassword string     `mapstructure:"neo4JPassword"`
	BadgerPath    string     `mapstructure:"badgerPath"`
	TikvAddrs     string     `mapstructure:"tikvAddrs"`
}

type ClazzUploadUnit added in v0.10.0

type ClazzUploadUnit struct {
	WorkspaceConfig *WorkspaceConfig           `json:"workspace"`
	ClazzFileResult *extractor.ClazzFileResult `json:"clazzFileResult"`
}

func DeserializeClazzUploadUnit added in v0.10.0

func DeserializeClazzUploadUnit(data []byte) (*ClazzUploadUnit, error)

type DriverType

type DriverType = string
const (
	DriverTypeNeo4j    DriverType = "NEO4J"
	DriverTypeInMemory DriverType = "INMEM"
	DriverTypeBadger   DriverType = "BADGER"
	DriverTypeTikv     DriverType = "TIKV"

	FlagWcKeySplit = "|,,|"
)

type ExecuteConfig

type ExecuteConfig struct {
	*ServerConfigPart  `mapstructure:"server"`
	*BindingConfigPart `mapstructure:"binding"`
	*WorkerConfigPart  `mapstructure:"worker"`
	*QueueConfigPart   `mapstructure:"queue"`
}

func DefaultExecuteConfig

func DefaultExecuteConfig() ExecuteConfig

func (*ExecuteConfig) ToJson added in v0.8.0

func (config *ExecuteConfig) ToJson() (string, error)

func (*ExecuteConfig) ToMap added in v0.8.1

func (config *ExecuteConfig) ToMap() (map[string]any, error)

type FunctionContextUploadUnit

type FunctionContextUploadUnit struct {
	WorkspaceConfig  *WorkspaceConfig          `json:"workspace"`
	FunctionContexts []*sibyl2.FunctionContext `json:"functionContext"`
}

func DeserializeFuncCtxUploadUnit

func DeserializeFuncCtxUploadUnit(data []byte) (*FunctionContextUploadUnit, error)

type FunctionUploadUnit

type FunctionUploadUnit struct {
	WorkspaceConfig *WorkspaceConfig              `json:"workspace"`
	FunctionResult  *extractor.FunctionFileResult `json:"funcResult"`
}

func DeserializeFuncUploadUnit

func DeserializeFuncUploadUnit(data []byte) (*FunctionUploadUnit, error)

type FunctionWithSignature

type FunctionWithSignature struct {
	*sibyl2.FunctionWithPath
	Signature string `json:"signature"`
}

type QueueConfigPart added in v0.9.0

type QueueConfigPart struct {
	// queue
	QueueType                 QueueType `mapstructure:"queueType"`
	KafkaAddrs                string    `mapstructure:"kafkaAddrs"`
	KafkaFuncTopic            string    `mapstructure:"kafkaFuncTopic"`
	KafkaFuncConsumerGroup    string    `mapstructure:"kafkaFuncConsumerGroup"`
	KafkaFuncCtxTopic         string    `mapstructure:"kafkaFuncCtxTopic"`
	KafkaFuncCtxConsumerGroup string    `mapstructure:"kafkaFuncCtxConsumerGroup"`
	KafkaClazzTopic           string    `mapstructure:"kafkaClazzTopic"`
	KafkaClazzConsumerGroup   string    `mapstructure:"kafkaClazzConsumerGroup"`
}

type QueueType

type QueueType = string
const QueueTypeKafka QueueType = "KAFKA"
const QueueTypeMemory QueueType = "MEMORY"

type ServerConfigPart added in v0.9.0

type ServerConfigPart struct {
	// server
	Port int        `mapstructure:"port"`
	Mode ServerType `mapstructure:"mode"`
}

type ServerType added in v0.9.0

type ServerType = string
const (
	ServerTypeAll     ServerType = "ALL"
	ServerTypeWorker  ServerType = "WORKER"
	ServerTypeGateway ServerType = "GATEWAY"
)

type WorkerConfigPart added in v0.9.0

type WorkerConfigPart struct {
	// worker
	WorkerCount     int `mapstructure:"workerCount"`
	WorkerQueueSize int `mapstructure:"workerQueueSize"`
}

type WorkspaceConfig

type WorkspaceConfig struct {
	RepoId  string `json:"repoId"`
	RevHash string `json:"revHash"`
}

WorkspaceConfig

as an infra lib, it will not assume what kind of repo you used.

just two fields: - repoId: unique id of your repo, no matter git or svn, even appId. - revHash: unique id of your version.

func (*WorkspaceConfig) Key

func (wc *WorkspaceConfig) Key() (string, error)

func (*WorkspaceConfig) Verify

func (wc *WorkspaceConfig) Verify() error

Jump to

Keyboard shortcuts

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