// Editing this file might prove futile when you re-run the swagger generate command
import (
- strfmt "github.com/go-openapi/strfmt"
-
"github.com/go-openapi/errors"
+ "github.com/go-openapi/strfmt"
"github.com/go-openapi/swag"
"github.com/go-openapi/validate"
)
// SubscriptionParams subscription params
+//
// swagger:model SubscriptionParams
type SubscriptionParams struct {
// Required: true
ClientEndpoint *SubscriptionParamsClientEndpoint `json:"ClientEndpoint"`
- // instance Id
- // Required: true
- // Maximum: 65535
- // Minimum: 0
- InstanceID *int64 `json:"InstanceId"`
+ // e2 subscription directives
+ E2SubscriptionDirectives *SubscriptionParamsE2SubscriptionDirectives `json:"E2SubscriptionDirectives,omitempty"`
// meid
// Required: true
// Minimum: 0
RANFunctionID *int64 `json:"RANFunctionID"`
- // requestor Id
- // Required: true
- // Maximum: 65535
- // Minimum: 0
- RequestorID *int64 `json:"RequestorId"`
-
// subscription details
// Required: true
SubscriptionDetails SubscriptionDetailsList `json:"SubscriptionDetails"`
+
+ // Optional subscription ID (Submgr allocates if not given)
+ SubscriptionID string `json:"SubscriptionId,omitempty"`
}
// Validate validates this subscription params
res = append(res, err)
}
- if err := m.validateInstanceID(formats); err != nil {
+ if err := m.validateE2SubscriptionDirectives(formats); err != nil {
res = append(res, err)
}
res = append(res, err)
}
- if err := m.validateRequestorID(formats); err != nil {
- res = append(res, err)
- }
-
if err := m.validateSubscriptionDetails(formats); err != nil {
res = append(res, err)
}
return nil
}
-func (m *SubscriptionParams) validateInstanceID(formats strfmt.Registry) error {
-
- if err := validate.Required("InstanceId", "body", m.InstanceID); err != nil {
- return err
- }
+func (m *SubscriptionParams) validateE2SubscriptionDirectives(formats strfmt.Registry) error {
- if err := validate.MinimumInt("InstanceId", "body", int64(*m.InstanceID), 0, false); err != nil {
- return err
+ if swag.IsZero(m.E2SubscriptionDirectives) { // not required
+ return nil
}
- if err := validate.MaximumInt("InstanceId", "body", int64(*m.InstanceID), 65535, false); err != nil {
- return err
+ if m.E2SubscriptionDirectives != nil {
+ if err := m.E2SubscriptionDirectives.Validate(formats); err != nil {
+ if ve, ok := err.(*errors.Validation); ok {
+ return ve.ValidateName("E2SubscriptionDirectives")
+ }
+ return err
+ }
}
return nil
return nil
}
-func (m *SubscriptionParams) validateRequestorID(formats strfmt.Registry) error {
-
- if err := validate.Required("RequestorId", "body", m.RequestorID); err != nil {
- return err
- }
-
- if err := validate.MinimumInt("RequestorId", "body", int64(*m.RequestorID), 0, false); err != nil {
- return err
- }
-
- if err := validate.MaximumInt("RequestorId", "body", int64(*m.RequestorID), 65535, false); err != nil {
- return err
- }
-
- return nil
-}
-
func (m *SubscriptionParams) validateSubscriptionDetails(formats strfmt.Registry) error {
if err := validate.Required("SubscriptionDetails", "body", m.SubscriptionDetails); err != nil {
}
// SubscriptionParamsClientEndpoint xApp service address and port
+//
// swagger:model SubscriptionParamsClientEndpoint
type SubscriptionParamsClientEndpoint struct {
- // xApp service address port
+ // xApp HTTP service address port
// Maximum: 65535
// Minimum: 0
- Port *int64 `json:"Port,omitempty"`
+ HTTPPort *int64 `json:"HTTPPort,omitempty"`
// xApp service address name like 'service-ricxapp-xappname-http.ricxapp'
- ServiceName string `json:"ServiceName,omitempty"`
+ Host string `json:"Host,omitempty"`
+
+ // xApp RMR service address port
+ // Maximum: 65535
+ // Minimum: 0
+ RMRPort *int64 `json:"RMRPort,omitempty"`
}
// Validate validates this subscription params client endpoint
func (m *SubscriptionParamsClientEndpoint) Validate(formats strfmt.Registry) error {
var res []error
- if err := m.validatePort(formats); err != nil {
+ if err := m.validateHTTPPort(formats); err != nil {
+ res = append(res, err)
+ }
+
+ if err := m.validateRMRPort(formats); err != nil {
res = append(res, err)
}
return nil
}
-func (m *SubscriptionParamsClientEndpoint) validatePort(formats strfmt.Registry) error {
+func (m *SubscriptionParamsClientEndpoint) validateHTTPPort(formats strfmt.Registry) error {
- if swag.IsZero(m.Port) { // not required
+ if swag.IsZero(m.HTTPPort) { // not required
return nil
}
- if err := validate.MinimumInt("ClientEndpoint"+"."+"Port", "body", int64(*m.Port), 0, false); err != nil {
+ if err := validate.MinimumInt("ClientEndpoint"+"."+"HTTPPort", "body", int64(*m.HTTPPort), 0, false); err != nil {
return err
}
- if err := validate.MaximumInt("ClientEndpoint"+"."+"Port", "body", int64(*m.Port), 65535, false); err != nil {
+ if err := validate.MaximumInt("ClientEndpoint"+"."+"HTTPPort", "body", int64(*m.HTTPPort), 65535, false); err != nil {
+ return err
+ }
+
+ return nil
+}
+
+func (m *SubscriptionParamsClientEndpoint) validateRMRPort(formats strfmt.Registry) error {
+
+ if swag.IsZero(m.RMRPort) { // not required
+ return nil
+ }
+
+ if err := validate.MinimumInt("ClientEndpoint"+"."+"RMRPort", "body", int64(*m.RMRPort), 0, false); err != nil {
+ return err
+ }
+
+ if err := validate.MaximumInt("ClientEndpoint"+"."+"RMRPort", "body", int64(*m.RMRPort), 65535, false); err != nil {
return err
}
*m = res
return nil
}
+
+// SubscriptionParamsE2SubscriptionDirectives Optional. If not set Submgr uses its default values
+//
+// swagger:model SubscriptionParamsE2SubscriptionDirectives
+type SubscriptionParamsE2SubscriptionDirectives struct {
+
+ // How many times E2 subscription request is retried
+ // Maximum: 10
+ // Minimum: 0
+ E2RetryCount *int64 `json:"E2RetryCount,omitempty"`
+
+ // How long time response is waited from E2 node
+ // Maximum: 10
+ // Minimum: 1
+ E2TimeoutTimerValue int64 `json:"E2TimeoutTimerValue,omitempty"`
+
+ // Subscription needs RMR route from E2Term to xApp
+ RMRRoutingNeeded bool `json:"RMRRoutingNeeded,omitempty"`
+}
+
+// Validate validates this subscription params e2 subscription directives
+func (m *SubscriptionParamsE2SubscriptionDirectives) Validate(formats strfmt.Registry) error {
+ var res []error
+
+ if err := m.validateE2RetryCount(formats); err != nil {
+ res = append(res, err)
+ }
+
+ if err := m.validateE2TimeoutTimerValue(formats); err != nil {
+ res = append(res, err)
+ }
+
+ if len(res) > 0 {
+ return errors.CompositeValidationError(res...)
+ }
+ return nil
+}
+
+func (m *SubscriptionParamsE2SubscriptionDirectives) validateE2RetryCount(formats strfmt.Registry) error {
+
+ if swag.IsZero(m.E2RetryCount) { // not required
+ return nil
+ }
+
+ if err := validate.MinimumInt("E2SubscriptionDirectives"+"."+"E2RetryCount", "body", int64(*m.E2RetryCount), 0, false); err != nil {
+ return err
+ }
+
+ if err := validate.MaximumInt("E2SubscriptionDirectives"+"."+"E2RetryCount", "body", int64(*m.E2RetryCount), 10, false); err != nil {
+ return err
+ }
+
+ return nil
+}
+
+func (m *SubscriptionParamsE2SubscriptionDirectives) validateE2TimeoutTimerValue(formats strfmt.Registry) error {
+
+ if swag.IsZero(m.E2TimeoutTimerValue) { // not required
+ return nil
+ }
+
+ if err := validate.MinimumInt("E2SubscriptionDirectives"+"."+"E2TimeoutTimerValue", "body", int64(m.E2TimeoutTimerValue), 1, false); err != nil {
+ return err
+ }
+
+ if err := validate.MaximumInt("E2SubscriptionDirectives"+"."+"E2TimeoutTimerValue", "body", int64(m.E2TimeoutTimerValue), 10, false); err != nil {
+ return err
+ }
+
+ return nil
+}
+
+// MarshalBinary interface implementation
+func (m *SubscriptionParamsE2SubscriptionDirectives) MarshalBinary() ([]byte, error) {
+ if m == nil {
+ return nil, nil
+ }
+ return swag.WriteJSON(m)
+}
+
+// UnmarshalBinary interface implementation
+func (m *SubscriptionParamsE2SubscriptionDirectives) UnmarshalBinary(b []byte) error {
+ var res SubscriptionParamsE2SubscriptionDirectives
+ if err := swag.ReadJSON(b, &res); err != nil {
+ return err
+ }
+ *m = res
+ return nil
+}