actions

package
v0.0.8 Latest Latest
Warning

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

Go to latest
Published: Mar 18, 2022 License: AGPL-3.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var Actions = kodex.ActionDefinitions{
	"undo": kodex.ActionDefinition{
		Name:  "Undo",
		Maker: MakeUndoAction,
	},
	"pseudonymize": kodex.ActionDefinition{
		Name:  "Pseudonymize",
		Maker: MakePseudonymizeAction,
	},
	"quantize": kodex.ActionDefinition{
		Name:  "Quantize",
		Maker: MakeQuantizeAction,
	},
	"form": kodex.ActionDefinition{
		Name:  "Form Validation",
		Maker: MakeFormAction,
	},
	"anonymize": kodex.ActionDefinition{
		Name:  "Anonymize",
		Maker: MakeAnonymizeAction,
	},
	"transcode": kodex.ActionDefinition{
		Name:  "Transcode",
		Maker: MakeTranscodeAction,
	},
	"drop": kodex.ActionDefinition{
		Name:  "Drop",
		Maker: MakeDropAction,
	},
}
View Source
var AnonymizeConfigForm = forms.Form{
	ErrorMsg: "invalid data encountered in the 'anonymize' form",
	Fields: []forms.Field{
		{
			Name: "method",
			Validators: []forms.Validator{
				forms.IsRequired{},
				forms.IsString{},
				forms.IsIn{
					Choices: []interface{}{"aggregate"},
				},
			},
		},
	},
}
View Source
var IsActionForm = forms.Form{
	Fields: []forms.Field{
		{
			Name: "type",
			Validators: []forms.Validator{
				forms.IsString{},
			},
		},
		{
			Name: "config",
			Validators: []forms.Validator{
				forms.IsStringMap{},
			},
		},
	},
}
View Source
var PseudonymizeConfigForm = forms.Form{
	ErrorMsg: "invalid data encountered in the 'pseudonymize' form",
	Fields: []forms.Field{
		{
			Name: "method",
			Validators: []forms.Validator{
				forms.IsRequired{},
				forms.IsString{},
				forms.IsIn{
					Choices: []interface{}{"merengue", "structured"},
				},
			},
		},
		{
			Name: "key",
			Validators: []forms.Validator{
				forms.IsOptional{Default: "_"},
				forms.IsString{},
			},
		},
	},
}
View Source
var QuantizeForm = forms.Form{
	ErrorMsg: "invalid data encountered in the encode/decode form",
	Fields: []forms.Field{
		{
			Name: "key",
			Validators: []forms.Validator{
				forms.IsString{},
			},
		},
		{
			Name: "precision",
			Validators: []forms.Validator{
				forms.IsFloat{HasMin: true, Min: 0},
			},
		},
	},
}
View Source
var TranscodeConfigForm = forms.Form{
	ErrorMsg: "invalid data encountered in the encode/decode form",
	Fields: []forms.Field{
		{
			Name: "key",
			Validators: []forms.Validator{
				forms.IsRequired{},
				forms.IsString{},
			},
		},
		{
			Name: "from",
			Validators: []forms.Validator{
				forms.IsRequired{},
				forms.IsString{},
				forms.IsIn{
					Choices: []interface{}{"bytes", "string", "base64", "base64-url", "hex", "utf-8"},
				},
			},
		},
		{
			Name: "to",
			Validators: []forms.Validator{
				forms.IsRequired{},
				forms.IsString{},
				forms.IsIn{
					Choices: []interface{}{"bytes", "string", "base64", "base64-url", "hex", "utf-8"},
				},
			},
		},
	},
}
View Source
var UndoActionConfigForm = forms.Form{
	ErrorMsg: "invalid data encountered in the undo form",
	Fields: []forms.Field{
		forms.Field{
			Name: "actions",
			Validators: []forms.Validator{
				forms.IsOptional{
					Default: []kodex.ActionSpecification{},
				},
				forms.IsList{
					Validators: []forms.Validator{
						forms.IsStringMap{},
						kodex.IsActionSpecification{},
					},
				},
				kodex.IsActionSpecifications{},
			},
		},
	},
}
View Source
var Validators = map[string]forms.ValidatorMaker{}

Functions

func MakeAnonymizeAction

func MakeAnonymizeAction(spec kodex.ActionSpecification) (kodex.Action, error)

func MakeDropAction

func MakeDropAction(spec kodex.ActionSpecification) (kodex.Action, error)

func MakeFormAction

func MakeFormAction(spec kodex.ActionSpecification) (kodex.Action, error)

func MakePseudonymizeAction

func MakePseudonymizeAction(spec kodex.ActionSpecification) (kodex.Action, error)

func MakeQuantizeAction

func MakeQuantizeAction(spec kodex.ActionSpecification) (kodex.Action, error)

func MakeTranscodeAction

func MakeTranscodeAction(spec kodex.ActionSpecification) (kodex.Action, error)

func MakeUndoAction

func MakeUndoAction(spec kodex.ActionSpecification) (kodex.Action, error)

Types

type AnonymizeAction

type AnonymizeAction struct {
	kodex.BaseAction
	// contains filtered or unexported fields
}

func (*AnonymizeAction) Advance

func (p *AnonymizeAction) Advance(writer kodex.ChannelWriter) ([]*kodex.Item, error)

func (*AnonymizeAction) Do

func (p *AnonymizeAction) Do(item *kodex.Item, writer kodex.ChannelWriter) (*kodex.Item, error)

func (*AnonymizeAction) Finalize

func (p *AnonymizeAction) Finalize(writer kodex.ChannelWriter) ([]*kodex.Item, error)

func (*AnonymizeAction) GenerateParams

func (p *AnonymizeAction) GenerateParams(key, salt []byte) error

func (*AnonymizeAction) Params

func (p *AnonymizeAction) Params() interface{}

func (*AnonymizeAction) Reset

func (p *AnonymizeAction) Reset() error

func (*AnonymizeAction) SetParams

func (p *AnonymizeAction) SetParams(params interface{}) error

func (*AnonymizeAction) Setup

func (p *AnonymizeAction) Setup(settings kodex.Settings) error

func (*AnonymizeAction) Teardown

func (p *AnonymizeAction) Teardown() error

func (*AnonymizeAction) Undoable

func (p *AnonymizeAction) Undoable(interface{}) bool

type DropAction

type DropAction struct {
	kodex.BaseAction
}

func (*DropAction) Do

func (a *DropAction) Do(item *kodex.Item, writer kodex.ChannelWriter) (*kodex.Item, error)

func (*DropAction) GenerateParams

func (a *DropAction) GenerateParams(key, salt []byte) error

func (*DropAction) Params

func (a *DropAction) Params() interface{}

func (*DropAction) SetParams

func (a *DropAction) SetParams(params interface{}) error

type FormAction

type FormAction struct {
	kodex.BaseAction
	// contains filtered or unexported fields
}

func (*FormAction) Do

func (a *FormAction) Do(item *kodex.Item, writer kodex.ChannelWriter) (*kodex.Item, error)

func (*FormAction) GenerateParams

func (a *FormAction) GenerateParams(key, salt []byte) error

func (*FormAction) Params

func (a *FormAction) Params() interface{}

func (*FormAction) SetParams

func (a *FormAction) SetParams(params interface{}) error

type IsAction

type IsAction struct {
	Action kodex.Action
	Type   string                 `json:"type"`
	Config map[string]interface{} `json:"config"`
}

func (IsAction) Validate

func (i IsAction) Validate(input interface{}, values map[string]interface{}) (interface{}, error)

type ParametrizedValidator

type ParametrizedValidator interface {
	GenerateParams(key, salt []byte) error
	SetParams(params interface{}) error
	Params() interface{}
}

type PseudonymizeTransformation

type PseudonymizeTransformation struct {
	kodex.BaseAction
	// contains filtered or unexported fields
}

func (*PseudonymizeTransformation) Do

func (*PseudonymizeTransformation) GenerateParams

func (p *PseudonymizeTransformation) GenerateParams(key, salt []byte) error

func (*PseudonymizeTransformation) Params

func (p *PseudonymizeTransformation) Params() interface{}

func (*PseudonymizeTransformation) SetParams

func (p *PseudonymizeTransformation) SetParams(params interface{}) error

func (*PseudonymizeTransformation) Undo

func (*PseudonymizeTransformation) Undoable

func (p *PseudonymizeTransformation) Undoable(item *kodex.Item) bool

type QuantizeAction

type QuantizeAction struct {
	kodex.BaseAction
	// contains filtered or unexported fields
}

func (*QuantizeAction) Do

func (a *QuantizeAction) Do(item *kodex.Item, writer kodex.ChannelWriter) (*kodex.Item, error)

func (*QuantizeAction) GenerateParams

func (a *QuantizeAction) GenerateParams(key, salt []byte) error

func (*QuantizeAction) Params

func (a *QuantizeAction) Params() interface{}

func (*QuantizeAction) SetParams

func (a *QuantizeAction) SetParams(params interface{}) error

type QuantizeConfig

type QuantizeConfig struct {
	Key       string  `json:"key"`
	Precision float64 `json:"precision"`
}

type TranscodeAction

type TranscodeAction struct {
	kodex.BaseAction
	// contains filtered or unexported fields
}

func (*TranscodeAction) Do

func (t *TranscodeAction) Do(item *kodex.Item) (*kodex.Item, error)

func (*TranscodeAction) GenerateParams

func (p *TranscodeAction) GenerateParams(key, salt []byte) error

func (*TranscodeAction) Params

func (p *TranscodeAction) Params() interface{}

func (*TranscodeAction) SetParams

func (p *TranscodeAction) SetParams(params interface{}) error

func (*TranscodeAction) Undo

func (t *TranscodeAction) Undo(item *kodex.Item) (*kodex.Item, error)

type UndoAction

type UndoAction struct {
	kodex.BaseAction
	// contains filtered or unexported fields
}

func (*UndoAction) DoWithConfig

func (a *UndoAction) DoWithConfig(item *kodex.Item, writer kodex.ChannelWriter, config kodex.Config) (*kodex.Item, error)

func (*UndoAction) GenerateParams

func (a *UndoAction) GenerateParams(key, salt []byte) error

func (*UndoAction) HasParams

func (a *UndoAction) HasParams() bool

func (*UndoAction) Params

func (a *UndoAction) Params() interface{}

func (*UndoAction) SetParams

func (a *UndoAction) SetParams(params interface{}) error

Jump to

Keyboard shortcuts

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