X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=a1-go%2Fpkg%2Frestful%2Frestful.go;h=deb24700cb104fc57076fb70d124d5d06e209a3b;hb=6579f78d0b544ffdf9cbf4049eb47a64758f5a71;hp=843a64c609281cd1d18c7c393a4bafc505718610;hpb=ab3e9ee563b7467bcda8ebbc4187b971690599d2;p=ric-plt%2Fa1.git diff --git a/a1-go/pkg/restful/restful.go b/a1-go/pkg/restful/restful.go index 843a64c..deb2470 100644 --- a/a1-go/pkg/restful/restful.go +++ b/a1-go/pkg/restful/restful.go @@ -55,7 +55,7 @@ func (r *Restful) setupHandler() *operations.A1API { }) api.A1MediatorA1ControllerCreatePolicyTypeHandler = a1_mediator.A1ControllerCreatePolicyTypeHandlerFunc(func(params a1_mediator.A1ControllerCreatePolicyTypeParams) middleware.Responder { - a1.Logger.Debug("handler for get policy type from policytypeID") + a1.Logger.Debug("handler for Create policy type ") if err = r.rh.CreatePolicyType(models.PolicyTypeID(params.PolicyTypeID), *params.Body); err == nil { //Increase prometheus counter return a1_mediator.NewA1ControllerCreatePolicyTypeCreated() @@ -67,6 +67,34 @@ func (r *Restful) setupHandler() *operations.A1API { }) + api.A1MediatorA1ControllerGetPolicyTypeHandler = a1_mediator.A1ControllerGetPolicyTypeHandlerFunc(func(params a1_mediator.A1ControllerGetPolicyTypeParams) middleware.Responder { + a1.Logger.Debug("handler for get policy type from policytypeID") + return a1_mediator.NewA1ControllerGetPolicyTypeOK().WithPayload(r.rh.GetPolicyType(models.PolicyTypeID(params.PolicyTypeID))) + }) + + api.A1MediatorA1ControllerCreateOrReplacePolicyInstanceHandler = a1_mediator.A1ControllerCreateOrReplacePolicyInstanceHandlerFunc(func(params a1_mediator.A1ControllerCreateOrReplacePolicyInstanceParams) middleware.Responder { + a1.Logger.Debug("handler for create policy type instance ") + if err = r.rh.CreatePolicyInstance(models.PolicyTypeID(params.PolicyTypeID), models.PolicyInstanceID(params.PolicyInstanceID), params.Body); err == nil { + return a1_mediator.NewA1ControllerCreateOrReplacePolicyInstanceAccepted() + } + if r.rh.IsValidJson(err) { + return a1_mediator.NewA1ControllerCreateOrReplacePolicyInstanceBadRequest() + } + return a1_mediator.NewA1ControllerCreateOrReplacePolicyInstanceServiceUnavailable() + + }) + + api.A1MediatorA1ControllerGetPolicyInstanceHandler = a1_mediator.A1ControllerGetPolicyInstanceHandlerFunc(func(params a1_mediator.A1ControllerGetPolicyInstanceParams) middleware.Responder { + a1.Logger.Debug("handler for get policy instance from policytypeID") + if resp, err := r.rh.GetPolicyInstance(models.PolicyTypeID(params.PolicyTypeID), models.PolicyInstanceID(params.PolicyInstanceID)); err == nil { + return a1_mediator.NewA1ControllerGetPolicyInstanceOK().WithPayload(resp) + } + if r.rh.IsPolicyInstanceNotFound(err) { + return a1_mediator.NewA1ControllerGetPolicyInstanceNotFound + } + return a1_mediator.NewA1ControllerGetPolicyInstanceServiceUnavailable + }) + return api }