X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;ds=sidebyside;f=a1-go%2Fpkg%2Frestful%2Frestful.go;h=b0663dd8586edb7dec024dea2cf2fe710e383949;hb=refs%2Fchanges%2F69%2F9469%2F4;hp=17d1fadbf1b8bd63d5b0992cef95338bf84ec774;hpb=327e01cb25524a380f1f1a75e7cbcc9fd81f4972;p=ric-plt%2Fa1.git diff --git a/a1-go/pkg/restful/restful.go b/a1-go/pkg/restful/restful.go index 17d1fad..b0663dd 100644 --- a/a1-go/pkg/restful/restful.go +++ b/a1-go/pkg/restful/restful.go @@ -133,6 +133,19 @@ func (r *Restful) setupHandler() *operations.A1API { return a1_mediator.NewA1ControllerGetPolicyInstanceStatusServiceUnavailable() }) + api.A1MediatorA1ControllerDeletePolicyInstanceHandler = a1_mediator.A1ControllerDeletePolicyInstanceHandlerFunc(func(params a1_mediator.A1ControllerDeletePolicyInstanceParams) middleware.Responder { + a1.Logger.Debug("handler for delete policy instance") + if err := r.rh.DeletePolicyInstance(models.PolicyTypeID(params.PolicyTypeID), models.PolicyInstanceID(params.PolicyInstanceID)); err != nil { + if r.rh.CanPolicyInstanceBeDeleted(err) { + return a1_mediator.NewA1ControllerDeletePolicyInstanceNotFound() + } + return a1_mediator.NewA1ControllerDeletePolicyInstanceServiceUnavailable() + } + + return a1_mediator.NewA1ControllerDeletePolicyInstanceAccepted() + + }) + return api }