Enhancements of REST-based E2 subscription interface
[ric-plt/xapp-frame.git] / pkg / models / subsequent_action.go
diff --git a/pkg/models/subsequent_action.go b/pkg/models/subsequent_action.go
new file mode 100644 (file)
index 0000000..c8468c5
--- /dev/null
@@ -0,0 +1,201 @@
+// Code generated by go-swagger; DO NOT EDIT.
+
+package models
+
+// This file was generated by the swagger tool.
+// Editing this file might prove futile when you re-run the swagger generate command
+
+import (
+       "encoding/json"
+
+       strfmt "github.com/go-openapi/strfmt"
+
+       "github.com/go-openapi/errors"
+       "github.com/go-openapi/swag"
+       "github.com/go-openapi/validate"
+)
+
+// SubsequentAction SubsequentAction is an OPTIONAL IE
+// swagger:model SubsequentAction
+type SubsequentAction struct {
+
+       // subsequent action type
+       // Required: true
+       // Enum: [continue wait]
+       SubsequentActionType *string `json:"SubsequentActionType"`
+
+       // time to wait
+       // Required: true
+       // Enum: [zero w1ms w2ms w5ms w10ms w20ms w30ms w40ms w50ms w100ms w200ms w500ms w1s w2s w5s w10s w20s w60s]
+       TimeToWait *string `json:"TimeToWait"`
+}
+
+// Validate validates this subsequent action
+func (m *SubsequentAction) Validate(formats strfmt.Registry) error {
+       var res []error
+
+       if err := m.validateSubsequentActionType(formats); err != nil {
+               res = append(res, err)
+       }
+
+       if err := m.validateTimeToWait(formats); err != nil {
+               res = append(res, err)
+       }
+
+       if len(res) > 0 {
+               return errors.CompositeValidationError(res...)
+       }
+       return nil
+}
+
+var subsequentActionTypeSubsequentActionTypePropEnum []interface{}
+
+func init() {
+       var res []string
+       if err := json.Unmarshal([]byte(`["continue","wait"]`), &res); err != nil {
+               panic(err)
+       }
+       for _, v := range res {
+               subsequentActionTypeSubsequentActionTypePropEnum = append(subsequentActionTypeSubsequentActionTypePropEnum, v)
+       }
+}
+
+const (
+
+       // SubsequentActionSubsequentActionTypeContinue captures enum value "continue"
+       SubsequentActionSubsequentActionTypeContinue string = "continue"
+
+       // SubsequentActionSubsequentActionTypeWait captures enum value "wait"
+       SubsequentActionSubsequentActionTypeWait string = "wait"
+)
+
+// prop value enum
+func (m *SubsequentAction) validateSubsequentActionTypeEnum(path, location string, value string) error {
+       if err := validate.Enum(path, location, value, subsequentActionTypeSubsequentActionTypePropEnum); err != nil {
+               return err
+       }
+       return nil
+}
+
+func (m *SubsequentAction) validateSubsequentActionType(formats strfmt.Registry) error {
+
+       if err := validate.Required("SubsequentActionType", "body", m.SubsequentActionType); err != nil {
+               return err
+       }
+
+       // value enum
+       if err := m.validateSubsequentActionTypeEnum("SubsequentActionType", "body", *m.SubsequentActionType); err != nil {
+               return err
+       }
+
+       return nil
+}
+
+var subsequentActionTypeTimeToWaitPropEnum []interface{}
+
+func init() {
+       var res []string
+       if err := json.Unmarshal([]byte(`["zero","w1ms","w2ms","w5ms","w10ms","w20ms","w30ms","w40ms","w50ms","w100ms","w200ms","w500ms","w1s","w2s","w5s","w10s","w20s","w60s"]`), &res); err != nil {
+               panic(err)
+       }
+       for _, v := range res {
+               subsequentActionTypeTimeToWaitPropEnum = append(subsequentActionTypeTimeToWaitPropEnum, v)
+       }
+}
+
+const (
+
+       // SubsequentActionTimeToWaitZero captures enum value "zero"
+       SubsequentActionTimeToWaitZero string = "zero"
+
+       // SubsequentActionTimeToWaitW1ms captures enum value "w1ms"
+       SubsequentActionTimeToWaitW1ms string = "w1ms"
+
+       // SubsequentActionTimeToWaitW2ms captures enum value "w2ms"
+       SubsequentActionTimeToWaitW2ms string = "w2ms"
+
+       // SubsequentActionTimeToWaitW5ms captures enum value "w5ms"
+       SubsequentActionTimeToWaitW5ms string = "w5ms"
+
+       // SubsequentActionTimeToWaitW10ms captures enum value "w10ms"
+       SubsequentActionTimeToWaitW10ms string = "w10ms"
+
+       // SubsequentActionTimeToWaitW20ms captures enum value "w20ms"
+       SubsequentActionTimeToWaitW20ms string = "w20ms"
+
+       // SubsequentActionTimeToWaitW30ms captures enum value "w30ms"
+       SubsequentActionTimeToWaitW30ms string = "w30ms"
+
+       // SubsequentActionTimeToWaitW40ms captures enum value "w40ms"
+       SubsequentActionTimeToWaitW40ms string = "w40ms"
+
+       // SubsequentActionTimeToWaitW50ms captures enum value "w50ms"
+       SubsequentActionTimeToWaitW50ms string = "w50ms"
+
+       // SubsequentActionTimeToWaitW100ms captures enum value "w100ms"
+       SubsequentActionTimeToWaitW100ms string = "w100ms"
+
+       // SubsequentActionTimeToWaitW200ms captures enum value "w200ms"
+       SubsequentActionTimeToWaitW200ms string = "w200ms"
+
+       // SubsequentActionTimeToWaitW500ms captures enum value "w500ms"
+       SubsequentActionTimeToWaitW500ms string = "w500ms"
+
+       // SubsequentActionTimeToWaitW1s captures enum value "w1s"
+       SubsequentActionTimeToWaitW1s string = "w1s"
+
+       // SubsequentActionTimeToWaitW2s captures enum value "w2s"
+       SubsequentActionTimeToWaitW2s string = "w2s"
+
+       // SubsequentActionTimeToWaitW5s captures enum value "w5s"
+       SubsequentActionTimeToWaitW5s string = "w5s"
+
+       // SubsequentActionTimeToWaitW10s captures enum value "w10s"
+       SubsequentActionTimeToWaitW10s string = "w10s"
+
+       // SubsequentActionTimeToWaitW20s captures enum value "w20s"
+       SubsequentActionTimeToWaitW20s string = "w20s"
+
+       // SubsequentActionTimeToWaitW60s captures enum value "w60s"
+       SubsequentActionTimeToWaitW60s string = "w60s"
+)
+
+// prop value enum
+func (m *SubsequentAction) validateTimeToWaitEnum(path, location string, value string) error {
+       if err := validate.Enum(path, location, value, subsequentActionTypeTimeToWaitPropEnum); err != nil {
+               return err
+       }
+       return nil
+}
+
+func (m *SubsequentAction) validateTimeToWait(formats strfmt.Registry) error {
+
+       if err := validate.Required("TimeToWait", "body", m.TimeToWait); err != nil {
+               return err
+       }
+
+       // value enum
+       if err := m.validateTimeToWaitEnum("TimeToWait", "body", *m.TimeToWait); err != nil {
+               return err
+       }
+
+       return nil
+}
+
+// MarshalBinary interface implementation
+func (m *SubsequentAction) MarshalBinary() ([]byte, error) {
+       if m == nil {
+               return nil, nil
+       }
+       return swag.WriteJSON(m)
+}
+
+// UnmarshalBinary interface implementation
+func (m *SubsequentAction) UnmarshalBinary(b []byte) error {
+       var res SubsequentAction
+       if err := swag.ReadJSON(b, &res); err != nil {
+               return err
+       }
+       *m = res
+       return nil
+}