segmenters

package
v0.0.0-...-6cc63a5 Latest Latest
Warning

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

Go to latest
Published: Jun 14, 2023 License: Apache-2.0 Imports: 4 Imported by: 10

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	SegmenterValueType_name = map[int32]string{
		0: "STRING",
		1: "BOOL",
		2: "INTEGER",
		3: "REAL",
	}
	SegmenterValueType_value = map[string]int32{
		"STRING":  0,
		"BOOL":    1,
		"INTEGER": 2,
		"REAL":    3,
	}
)

Enum value maps for SegmenterValueType.

View Source
var File_api_proto_segmenters_proto protoreflect.FileDescriptor

Functions

This section is empty.

Types

type Constraint

type Constraint struct {

	// pre_requisites is the list of conditions, all of which must be matched for
	// the use of the allowed_values of the current segmenter.
	PreRequisites []*PreRequisite `protobuf:"bytes,1,rep,name=pre_requisites,json=preRequisites,proto3" json:"pre_requisites,omitempty"`
	// allowed_values is the list of values of the current segmenter that are
	// available when all the pre-requisites are satisfied.
	AllowedValues *ListSegmenterValue `protobuf:"bytes,2,opt,name=allowed_values,json=allowedValues,proto3" json:"allowed_values,omitempty"`
	// options is an optional map of the segmenter values (human-readable name ->
	// internal value) applicable under the current constraint that, if set,
	// overrides the global options map
	Options map[string]*SegmenterValue `` /* 155-byte string literal not displayed */
	// contains filtered or unexported fields
}

Constraint captures a set of requirements that must be met for the use of certain segmenter values.

func (*Constraint) Descriptor deprecated

func (*Constraint) Descriptor() ([]byte, []int)

Deprecated: Use Constraint.ProtoReflect.Descriptor instead.

func (*Constraint) GetAllowedValues

func (x *Constraint) GetAllowedValues() *ListSegmenterValue

func (*Constraint) GetOptions

func (x *Constraint) GetOptions() map[string]*SegmenterValue

func (*Constraint) GetPreRequisites

func (x *Constraint) GetPreRequisites() []*PreRequisite

func (*Constraint) ProtoMessage

func (*Constraint) ProtoMessage()

func (*Constraint) ProtoReflect

func (x *Constraint) ProtoReflect() protoreflect.Message

func (*Constraint) Reset

func (x *Constraint) Reset()

func (*Constraint) String

func (x *Constraint) String() string

type ExperimentVariables

type ExperimentVariables struct {
	Value []string `protobuf:"bytes,1,rep,name=value,proto3" json:"value,omitempty"`
	// contains filtered or unexported fields
}

ExperimentVariables represents a combination of experiment variables name that a segmenter can derrive from

func (*ExperimentVariables) Descriptor deprecated

func (*ExperimentVariables) Descriptor() ([]byte, []int)

Deprecated: Use ExperimentVariables.ProtoReflect.Descriptor instead.

func (*ExperimentVariables) GetValue

func (x *ExperimentVariables) GetValue() []string

func (*ExperimentVariables) ProtoMessage

func (*ExperimentVariables) ProtoMessage()

func (*ExperimentVariables) ProtoReflect

func (x *ExperimentVariables) ProtoReflect() protoreflect.Message

func (*ExperimentVariables) Reset

func (x *ExperimentVariables) Reset()

func (*ExperimentVariables) String

func (x *ExperimentVariables) String() string

type ListExperimentVariables

type ListExperimentVariables struct {
	Values []*ExperimentVariables `protobuf:"bytes,1,rep,name=values,proto3" json:"values,omitempty"`
	// contains filtered or unexported fields
}

ListExperimentVariables is a list of ExperimentVariables, each of which can be used to derive a segmenter

func (*ListExperimentVariables) Descriptor deprecated

func (*ListExperimentVariables) Descriptor() ([]byte, []int)

Deprecated: Use ListExperimentVariables.ProtoReflect.Descriptor instead.

func (*ListExperimentVariables) GetValues

func (x *ListExperimentVariables) GetValues() []*ExperimentVariables

func (*ListExperimentVariables) ProtoMessage

func (*ListExperimentVariables) ProtoMessage()

func (*ListExperimentVariables) ProtoReflect

func (x *ListExperimentVariables) ProtoReflect() protoreflect.Message

func (*ListExperimentVariables) Reset

func (x *ListExperimentVariables) Reset()

func (*ListExperimentVariables) String

func (x *ListExperimentVariables) String() string

type ListSegmenterValue

type ListSegmenterValue struct {
	Values []*SegmenterValue `protobuf:"bytes,1,rep,name=values,proto3" json:"values,omitempty"`
	// contains filtered or unexported fields
}

ListSegmenterValue is a list of SegmenterValue

func (*ListSegmenterValue) Descriptor deprecated

func (*ListSegmenterValue) Descriptor() ([]byte, []int)

Deprecated: Use ListSegmenterValue.ProtoReflect.Descriptor instead.

func (*ListSegmenterValue) GetValues

func (x *ListSegmenterValue) GetValues() []*SegmenterValue

func (*ListSegmenterValue) ProtoMessage

func (*ListSegmenterValue) ProtoMessage()

func (*ListSegmenterValue) ProtoReflect

func (x *ListSegmenterValue) ProtoReflect() protoreflect.Message

func (*ListSegmenterValue) Reset

func (x *ListSegmenterValue) Reset()

func (*ListSegmenterValue) String

func (x *ListSegmenterValue) String() string

type PreRequisite

type PreRequisite struct {

	// segmenter_name is the name of the free segmenter. This must be
	// single-valued.
	SegmenterName string `protobuf:"bytes,1,opt,name=segmenter_name,json=segmenterName,proto3" json:"segmenter_name,omitempty"`
	// segmenter_values is the set of values of the pre-requisite segmenter, one
	// of which must be matched.
	SegmenterValues *ListSegmenterValue `protobuf:"bytes,2,opt,name=segmenter_values,json=segmenterValues,proto3" json:"segmenter_values,omitempty"`
	// contains filtered or unexported fields
}

PreRequisite represents a single requirement related to a free segmenter

func (*PreRequisite) Descriptor deprecated

func (*PreRequisite) Descriptor() ([]byte, []int)

Deprecated: Use PreRequisite.ProtoReflect.Descriptor instead.

func (*PreRequisite) GetSegmenterName

func (x *PreRequisite) GetSegmenterName() string

func (*PreRequisite) GetSegmenterValues

func (x *PreRequisite) GetSegmenterValues() *ListSegmenterValue

func (*PreRequisite) ProtoMessage

func (*PreRequisite) ProtoMessage()

func (*PreRequisite) ProtoReflect

func (x *PreRequisite) ProtoReflect() protoreflect.Message

func (*PreRequisite) Reset

func (x *PreRequisite) Reset()

func (*PreRequisite) String

func (x *PreRequisite) String() string

type ProjectSegmenterCreated

type ProjectSegmenterCreated struct {
	ProjectId        int64                   `protobuf:"varint,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	ProjectSegmenter *SegmenterConfiguration `protobuf:"bytes,2,opt,name=project_segmenter,json=projectSegmenter,proto3" json:"project_segmenter,omitempty"`
	// contains filtered or unexported fields
}

func (*ProjectSegmenterCreated) Descriptor deprecated

func (*ProjectSegmenterCreated) Descriptor() ([]byte, []int)

Deprecated: Use ProjectSegmenterCreated.ProtoReflect.Descriptor instead.

func (*ProjectSegmenterCreated) GetProjectId

func (x *ProjectSegmenterCreated) GetProjectId() int64

func (*ProjectSegmenterCreated) GetProjectSegmenter

func (x *ProjectSegmenterCreated) GetProjectSegmenter() *SegmenterConfiguration

func (*ProjectSegmenterCreated) ProtoMessage

func (*ProjectSegmenterCreated) ProtoMessage()

func (*ProjectSegmenterCreated) ProtoReflect

func (x *ProjectSegmenterCreated) ProtoReflect() protoreflect.Message

func (*ProjectSegmenterCreated) Reset

func (x *ProjectSegmenterCreated) Reset()

func (*ProjectSegmenterCreated) String

func (x *ProjectSegmenterCreated) String() string

type ProjectSegmenterDeleted

type ProjectSegmenterDeleted struct {
	ProjectId     int64  `protobuf:"varint,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	SegmenterName string `protobuf:"bytes,2,opt,name=segmenter_name,json=segmenterName,proto3" json:"segmenter_name,omitempty"`
	// contains filtered or unexported fields
}

func (*ProjectSegmenterDeleted) Descriptor deprecated

func (*ProjectSegmenterDeleted) Descriptor() ([]byte, []int)

Deprecated: Use ProjectSegmenterDeleted.ProtoReflect.Descriptor instead.

func (*ProjectSegmenterDeleted) GetProjectId

func (x *ProjectSegmenterDeleted) GetProjectId() int64

func (*ProjectSegmenterDeleted) GetSegmenterName

func (x *ProjectSegmenterDeleted) GetSegmenterName() string

func (*ProjectSegmenterDeleted) ProtoMessage

func (*ProjectSegmenterDeleted) ProtoMessage()

func (*ProjectSegmenterDeleted) ProtoReflect

func (x *ProjectSegmenterDeleted) ProtoReflect() protoreflect.Message

func (*ProjectSegmenterDeleted) Reset

func (x *ProjectSegmenterDeleted) Reset()

func (*ProjectSegmenterDeleted) String

func (x *ProjectSegmenterDeleted) String() string

type ProjectSegmenterUpdated

type ProjectSegmenterUpdated struct {
	ProjectId        int64                   `protobuf:"varint,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	ProjectSegmenter *SegmenterConfiguration `protobuf:"bytes,2,opt,name=project_segmenter,json=projectSegmenter,proto3" json:"project_segmenter,omitempty"`
	// contains filtered or unexported fields
}

func (*ProjectSegmenterUpdated) Descriptor deprecated

func (*ProjectSegmenterUpdated) Descriptor() ([]byte, []int)

Deprecated: Use ProjectSegmenterUpdated.ProtoReflect.Descriptor instead.

func (*ProjectSegmenterUpdated) GetProjectId

func (x *ProjectSegmenterUpdated) GetProjectId() int64

func (*ProjectSegmenterUpdated) GetProjectSegmenter

func (x *ProjectSegmenterUpdated) GetProjectSegmenter() *SegmenterConfiguration

func (*ProjectSegmenterUpdated) ProtoMessage

func (*ProjectSegmenterUpdated) ProtoMessage()

func (*ProjectSegmenterUpdated) ProtoReflect

func (x *ProjectSegmenterUpdated) ProtoReflect() protoreflect.Message

func (*ProjectSegmenterUpdated) Reset

func (x *ProjectSegmenterUpdated) Reset()

func (*ProjectSegmenterUpdated) String

func (x *ProjectSegmenterUpdated) String() string

type SegmenterConfiguration

type SegmenterConfiguration struct {

	// name is the human-readable name of the segmenter. This must be unique
	// across global and project segmenters.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// type of the segmenter's values. All values of a segmenter
	// should be of the same type.
	Type SegmenterValueType `protobuf:"varint,2,opt,name=type,proto3,enum=segmenters.SegmenterValueType" json:"type,omitempty"`
	// an optional map of the segmenter values (human-readable name -> internal value)
	Options map[string]*SegmenterValue `` /* 155-byte string literal not displayed */
	// multi_valued represents whether multiple values of the segmenter can be
	// chosen in an experiment. Only single-valued segmenters can act as
	// pre-requisites.
	MultiValued bool `protobuf:"varint,4,opt,name=multi_valued,json=multiValued,proto3" json:"multi_valued,omitempty"`
	// treatment_request_fields is the name of the field(s) in the fetch treatment
	// request that can be used to determine the value of the segmenter. This can
	// be the segmenter value as is (in which case, this field can be left empty
	// and the segmenter's name will be used to match the data in the incoming
	// request), or one or more other attributes that can be used to compute the
	// segmenter's value. Eg: A segmenter that checks whether the current month
	// has 31 days only needs the timezone of the request to be supplied.
	TreatmentRequestFields *ListExperimentVariables `` /* 129-byte string literal not displayed */
	// constraints captures an optional list of rules. Each constraint has one or
	// more pre-requisite conditions, which when satisfied, narrows the list of
	// available values for the current segmenter. If none of the constraints are
	// satisfied, all values of the segmenter described by the options field may
	// be applicable.
	Constraints []*Constraint `protobuf:"bytes,6,rep,name=constraints,proto3" json:"constraints,omitempty"`
	// required represents whether the segmenter must be chosen in an experiment
	Required bool `protobuf:"varint,7,opt,name=required,proto3" json:"required,omitempty"`
	// additional information about segmenter
	Description string `protobuf:"bytes,8,opt,name=description,proto3" json:"description,omitempty"`
	// contains filtered or unexported fields
}

SegmenterConfiguration holds the configuration for a segmenter

func (*SegmenterConfiguration) Descriptor deprecated

func (*SegmenterConfiguration) Descriptor() ([]byte, []int)

Deprecated: Use SegmenterConfiguration.ProtoReflect.Descriptor instead.

func (*SegmenterConfiguration) GetConstraints

func (x *SegmenterConfiguration) GetConstraints() []*Constraint

func (*SegmenterConfiguration) GetDescription

func (x *SegmenterConfiguration) GetDescription() string

func (*SegmenterConfiguration) GetMultiValued

func (x *SegmenterConfiguration) GetMultiValued() bool

func (*SegmenterConfiguration) GetName

func (x *SegmenterConfiguration) GetName() string

func (*SegmenterConfiguration) GetOptions

func (x *SegmenterConfiguration) GetOptions() map[string]*SegmenterValue

func (*SegmenterConfiguration) GetRequired

func (x *SegmenterConfiguration) GetRequired() bool

func (*SegmenterConfiguration) GetTreatmentRequestFields

func (x *SegmenterConfiguration) GetTreatmentRequestFields() *ListExperimentVariables

func (*SegmenterConfiguration) GetType

func (*SegmenterConfiguration) ProtoMessage

func (*SegmenterConfiguration) ProtoMessage()

func (*SegmenterConfiguration) ProtoReflect

func (x *SegmenterConfiguration) ProtoReflect() protoreflect.Message

func (*SegmenterConfiguration) Reset

func (x *SegmenterConfiguration) Reset()

func (*SegmenterConfiguration) String

func (x *SegmenterConfiguration) String() string

type SegmenterValue

type SegmenterValue struct {

	// Types that are assignable to Value:
	//
	//	*SegmenterValue_String_
	//	*SegmenterValue_Bool
	//	*SegmenterValue_Integer
	//	*SegmenterValue_Real
	Value isSegmenterValue_Value `protobuf_oneof:"value"`
	// contains filtered or unexported fields
}

SegmenterValue represents a single value of a segmenter

func (*SegmenterValue) Descriptor deprecated

func (*SegmenterValue) Descriptor() ([]byte, []int)

Deprecated: Use SegmenterValue.ProtoReflect.Descriptor instead.

func (*SegmenterValue) GetBool

func (x *SegmenterValue) GetBool() bool

func (*SegmenterValue) GetInteger

func (x *SegmenterValue) GetInteger() int64

func (*SegmenterValue) GetReal

func (x *SegmenterValue) GetReal() float64

func (*SegmenterValue) GetString_

func (x *SegmenterValue) GetString_() string

func (*SegmenterValue) GetValue

func (m *SegmenterValue) GetValue() isSegmenterValue_Value

func (*SegmenterValue) ProtoMessage

func (*SegmenterValue) ProtoMessage()

func (*SegmenterValue) ProtoReflect

func (x *SegmenterValue) ProtoReflect() protoreflect.Message

func (*SegmenterValue) Reset

func (x *SegmenterValue) Reset()

func (*SegmenterValue) String

func (x *SegmenterValue) String() string

type SegmenterValueType

type SegmenterValueType int32

SegmenterValueType represents the possible types that segmenter values can take.

const (
	SegmenterValueType_STRING  SegmenterValueType = 0
	SegmenterValueType_BOOL    SegmenterValueType = 1
	SegmenterValueType_INTEGER SegmenterValueType = 2
	SegmenterValueType_REAL    SegmenterValueType = 3
)

func (SegmenterValueType) Descriptor

func (SegmenterValueType) Enum

func (SegmenterValueType) EnumDescriptor deprecated

func (SegmenterValueType) EnumDescriptor() ([]byte, []int)

Deprecated: Use SegmenterValueType.Descriptor instead.

func (SegmenterValueType) Number

func (SegmenterValueType) String

func (x SegmenterValueType) String() string

func (SegmenterValueType) Type

type SegmenterValue_Bool

type SegmenterValue_Bool struct {
	Bool bool `protobuf:"varint,2,opt,name=bool,proto3,oneof"`
}

type SegmenterValue_Integer

type SegmenterValue_Integer struct {
	Integer int64 `protobuf:"zigzag64,3,opt,name=integer,proto3,oneof"`
}

type SegmenterValue_Real

type SegmenterValue_Real struct {
	Real float64 `protobuf:"fixed64,4,opt,name=real,proto3,oneof"`
}

type SegmenterValue_String_

type SegmenterValue_String_ struct {
	String_ string `protobuf:"bytes,1,opt,name=string,proto3,oneof"`
}

Jump to

Keyboard shortcuts

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