...

Source file src/github.com/emissary-ingress/emissary/v3/pkg/snapshot/v1/ingress.go

Documentation: github.com/emissary-ingress/emissary/v3/pkg/snapshot/v1

     1  package snapshot
     2  
     3  import (
     4  	"encoding/json"
     5  
     6  	"github.com/emissary-ingress/emissary/v3/pkg/kates"
     7  	"github.com/emissary-ingress/emissary/v3/pkg/kates/k8s_resource_types"
     8  )
     9  
    10  type Ingress struct {
    11  	k8s_resource_types.Ingress
    12  }
    13  
    14  func (ingress *Ingress) UnmarshalJSON(bs []byte) error {
    15  	var untyped kates.Unstructured
    16  	if err := json.Unmarshal(bs, &untyped); err != nil {
    17  		return err
    18  	}
    19  	typed, err := k8s_resource_types.NewIngress(&untyped)
    20  	if err != nil {
    21  		return err
    22  	}
    23  	ingress.Ingress = *typed
    24  	return nil
    25  }
    26  
    27  type IngressClass struct {
    28  	k8s_resource_types.IngressClass
    29  }
    30  
    31  func (ingressclass *IngressClass) UnmarshalJSON(bs []byte) error {
    32  	var untyped kates.Unstructured
    33  	if err := json.Unmarshal(bs, &untyped); err != nil {
    34  		return err
    35  	}
    36  	typed, err := k8s_resource_types.NewIngressClass(&untyped)
    37  	if err != nil {
    38  		return err
    39  	}
    40  	ingressclass.IngressClass = *typed
    41  	return nil
    42  }
    43  

View as plain text