package plugin
import (
"bytes"
"errors"
"fmt"
"net"
"net/mail"
"net/url"
"regexp"
"strings"
"time"
"unicode/utf8"
"github.com/golang/protobuf/ptypes"
)
var (
_ = bytes.MinRead
_ = errors.New("")
_ = fmt.Print
_ = utf8.UTFMax
_ = (*regexp.Regexp)(nil)
_ = (*strings.Reader)(nil)
_ = net.IPv4len
_ = time.Duration(0)
_ = (*url.URL)(nil)
_ = (*mail.Address)(nil)
_ = ptypes.DynamicAny{}
)
var _validate_uuidPattern = regexp.MustCompile("^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$")
func (m *Interface) Validate() error {
if m == nil {
return nil
}
if _, ok := _Interface_Status_NotInLookup[m.GetStatus()]; ok {
return InterfaceValidationError{
field: "Status",
reason: "value must not be in list [0]",
}
}
if _, ok := InterfaceStatus_name[int32(m.GetStatus())]; !ok {
return InterfaceValidationError{
field: "Status",
reason: "value must be one of the defined enum values",
}
}
for idx, item := range m.GetAddresses() {
_, _ = idx, item
if v, ok := interface{}(item).(interface{ Validate() error }); ok {
if err := v.Validate(); err != nil {
return InterfaceValidationError{
field: fmt.Sprintf("Addresses[%v]", idx),
reason: "embedded message failed validation",
cause: err,
}
}
}
}
return nil
}
type InterfaceValidationError struct {
field string
reason string
cause error
key bool
}
func (e InterfaceValidationError) Field() string { return e.field }
func (e InterfaceValidationError) Reason() string { return e.reason }
func (e InterfaceValidationError) Cause() error { return e.cause }
func (e InterfaceValidationError) Key() bool { return e.key }
func (e InterfaceValidationError) ErrorName() string { return "InterfaceValidationError" }
func (e InterfaceValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sInterface.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = InterfaceValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = InterfaceValidationError{}
var _Interface_Status_NotInLookup = map[InterfaceStatus]struct{}{
0: {},
}
func (m *IPAddress) Validate() error {
if m == nil {
return nil
}
switch m.Address.(type) {
case *IPAddress_IPV4:
if ip := net.ParseIP(m.GetIPV4()); ip == nil || ip.To4() == nil {
return IPAddressValidationError{
field: "Ipv4",
reason: "value must be a valid IPv4 address",
}
}
case *IPAddress_IPV6:
if ip := net.ParseIP(m.GetIPV6()); ip == nil || ip.To4() != nil {
return IPAddressValidationError{
field: "Ipv6",
reason: "value must be a valid IPv6 address",
}
}
}
return nil
}
type IPAddressValidationError struct {
field string
reason string
cause error
key bool
}
func (e IPAddressValidationError) Field() string { return e.field }
func (e IPAddressValidationError) Reason() string { return e.reason }
func (e IPAddressValidationError) Cause() error { return e.cause }
func (e IPAddressValidationError) Key() bool { return e.key }
func (e IPAddressValidationError) ErrorName() string { return "IPAddressValidationError" }
func (e IPAddressValidationError) Error() string {
cause := ""
if e.cause != nil {
cause = fmt.Sprintf(" | caused by: %v", e.cause)
}
key := ""
if e.key {
key = "key for "
}
return fmt.Sprintf(
"invalid %sIPAddress.%s: %s%s",
key,
e.field,
e.reason,
cause)
}
var _ error = IPAddressValidationError{}
var _ interface {
Field() string
Reason() string
Key() bool
Cause() error
ErrorName() string
} = IPAddressValidationError{}