return a1_mediator.NewA1ControllerGetPolicyInstanceServiceUnavailable
})
+ api.A1MediatorA1ControllerGetAllInstancesForTypeHandler = a1_mediator.A1ControllerGetAllInstancesForTypeHandlerFunc(func(params a1_mediator.A1ControllerGetAllInstancesForTypeParams) middleware.Responder {
+ a1.Logger.Debug("handler for get all policy instance")
+ return a1_mediator.NewA1ControllerGetPolicyInstanceOK().WithPayload(r.rh.GetAllPolicyInstance(models.PolicyTypeID(params.PolicyTypeID)))
+ })
+
return api
}
valStr := fmt.Sprint(instanceMap[instancekey])
return valStr, nil
}
+
+func (rh *Resthook) GetAllPolicyInstance(policyTypeId models.PolicyTypeID) []models.PolicyInstanceID {
+ a1.Logger.Debug("GetAllPolicyInstance")
+ var policyTypeInstances []models.PolicyInstanceID
+
+ keys, err := rh.db.GetAll("A1m_ns")
+
+ if err != nil {
+ a1.Logger.Error("error in retrieving policy. err: %v", err)
+ return policyTypeInstances
+ }
+ a1.Logger.Debug("keys : %+v", keys)
+ typekey := a1InstancePrefix + strconv.FormatInt((int64(policyTypeId)), 10) + "."
+ for _, key := range keys {
+ if strings.HasPrefix(strings.TrimLeft(key, " "), typekey) {
+ pti := strings.Split(strings.Trim(key, " "), typekey)[1]
+ a1.Logger.Debug("pti %+v", pti)
+ policyTypeInstances = append(policyTypeInstances, models.PolicyInstanceID(pti))
+ }
+ }
+
+ a1.Logger.Debug("return : %+v", policyTypeInstances)
+ return policyTypeInstances
+}
sdlInst = new(SdlMock)
sdlInst.On("GetAll", "A1m_ns").Return([]string{"a1.policy_instance.1006001.qos",
+ "a1.policy_instance.20005.123456",
+ "a1.policy_instance.20005.234567",
"a1.policy_type.1006001",
"a1.policy_type.20000",
"a1.policy_inst_metadata.1006001.qos",
sdlInst.AssertExpectations(t)
}
+func TestGetAllPolicyIntances(t *testing.T) {
+ var policyTypeId models.PolicyTypeID
+ policyTypeId = 20005
+ resp := rh.GetAllPolicyInstance(policyTypeId)
+ assert.Equal(t, 2, len(resp))
+}
+
type SdlMock struct {
mock.Mock
}