Enhancements of REST-based E2 subscription interface
Change-Id: I8a8d7f7367315163fedffe9d12440afa44eecb73
Signed-off-by: Mohamed Abukar <abukar.mohamed@nokia.com>
diff --git a/pkg/clientmodel/subsequent_action.go b/pkg/clientmodel/subsequent_action.go
new file mode 100644
index 0000000..b0c8a0f
--- /dev/null
+++ b/pkg/clientmodel/subsequent_action.go
@@ -0,0 +1,201 @@
+// Code generated by go-swagger; DO NOT EDIT.
+
+package clientmodel
+
+// 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
+}