Skip to content
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Fix Go references to ODFV proto
Signed-off-by: Felix Wang <wangfelix98@gmail.com>
  • Loading branch information
felixwang9817 committed Mar 28, 2022
commit d9667871f0f0927c386231a0f952b1f1ded9bc6c
32 changes: 16 additions & 16 deletions go/internal/feast/ondemandfeatureview.go
Original file line number Diff line number Diff line change
Expand Up @@ -7,27 +7,27 @@ import (

type OnDemandFeatureView struct {
base *BaseFeatureView
inputFeatureViewProjections map[string]*FeatureViewProjection
inputRequestDataSources map[string]*core.DataSource_RequestDataOptions
sourceFeatureViewProjections map[string]*FeatureViewProjection
sourceRequestDataSources map[string]*core.DataSource_RequestDataOptions
}

func NewOnDemandFeatureViewFromProto(proto *core.OnDemandFeatureView) *OnDemandFeatureView {
onDemandFeatureView := &OnDemandFeatureView{base: NewBaseFeatureView(proto.Spec.Name, proto.Spec.Features),
inputFeatureViewProjections: make(map[string]*FeatureViewProjection),
inputRequestDataSources: make(map[string]*core.DataSource_RequestDataOptions),
sourceFeatureViewProjections: make(map[string]*FeatureViewProjection),
sourceRequestDataSources: make(map[string]*core.DataSource_RequestDataOptions),
}
for inputName, onDemandInput := range proto.Spec.Inputs {
if onDemandInputFeatureView, ok := onDemandInput.Input.(*core.OnDemandInput_FeatureView); ok {
featureViewProto := onDemandInputFeatureView.FeatureView
for sourceName, onDemandSource := range proto.Spec.Sources {
if onDemandSourceFeatureView, ok := onDemandSource.Source.(*core.OnDemandSource_FeatureView); ok {
featureViewProto := onDemandSourceFeatureView.FeatureView
featureView := NewFeatureViewFromProto(featureViewProto)
onDemandFeatureView.inputFeatureViewProjections[inputName] = featureView.base.projection
} else if onDemandInputFeatureViewProjection, ok := onDemandInput.Input.(*core.OnDemandInput_FeatureViewProjection); ok {
featureProjectionProto := onDemandInputFeatureViewProjection.FeatureViewProjection
onDemandFeatureView.inputFeatureViewProjections[inputName] = NewFeatureViewProjectionFromProto(featureProjectionProto)
} else if onDemandInputRequestFeatureView, ok := onDemandInput.Input.(*core.OnDemandInput_RequestDataSource); ok {

if dataSourceRequestOptions, ok := onDemandInputRequestFeatureView.RequestDataSource.Options.(*core.DataSource_RequestDataOptions_); ok {
onDemandFeatureView.inputRequestDataSources[inputName] = dataSourceRequestOptions.RequestDataOptions
onDemandFeatureView.sourceFeatureViewProjections[sourceName] = featureView.base.projection
} else if onDemandSourceFeatureViewProjection, ok := onDemandSource.Source.(*core.OnDemandSource_FeatureViewProjection); ok {
featureProjectionProto := onDemandSourceFeatureViewProjection.FeatureViewProjection
onDemandFeatureView.sourceFeatureViewProjections[sourceName] = NewFeatureViewProjectionFromProto(featureProjectionProto)
} else if onDemandSourceRequestFeatureView, ok := onDemandSource.Source.(*core.OnDemandSource_RequestDataSource); ok {

if dataSourceRequestOptions, ok := onDemandSourceRequestFeatureView.RequestDataSource.Options.(*core.DataSource_RequestDataOptions_); ok {
onDemandFeatureView.sourceRequestDataSources[sourceName] = dataSourceRequestOptions.RequestDataOptions
}
}
}
Expand All @@ -43,7 +43,7 @@ func (fs *OnDemandFeatureView) NewOnDemandFeatureViewFromBase(base *BaseFeatureV

func (fs *OnDemandFeatureView) getRequestDataSchema() map[string]types.ValueType_Enum {
schema := make(map[string]types.ValueType_Enum)
for _, requestDataSource := range fs.inputRequestDataSources {
for _, requestDataSource := range fs.sourceRequestDataSources {
for fieldName, fieldValueType := range requestDataSource.Schema {
schema[fieldName] = fieldValueType
}
Expand Down