-func launchRest(nbiif *string, datach chan<- *models.XappCallbackData, subchan chan<- *models.XappSubscriptionData) {
+func subscriptionExists(data *models.XappSubscriptionData) bool {
+ present := false
+ sub := rtmgr.Subscription{SubID:*data.SubscriptionID, Fqdn:*data.Address, Port:*data.Port,}
+ for _, elem := range rtmgr.Subs {
+ if elem == sub {
+ present = true
+ break
+ }
+ }
+ return present
+}
+
+func deleteXappSubscriptionHandleImpl(subdelchan chan<- *models.XappSubscriptionData,
+ data *models.XappSubscriptionData) error {
+ rtmgr.Logger.Debug("Invoked deleteXappSubscriptionHandleImpl")
+ err := validateXappSubscriptionData(data)
+ if err != nil {
+ rtmgr.Logger.Error(err.Error())
+ return err
+ }
+
+ if !subscriptionExists(data) {
+ rtmgr.Logger.Warn("Subscription not found: %d", *data.SubscriptionID)
+ err := fmt.Errorf("Subscription not found: %d", *data.SubscriptionID)
+ return err
+ }
+
+ subdelchan <- data
+ return nil
+}
+
+func launchRest(nbiif *string, datach chan<- *models.XappCallbackData, subchan chan<- *models.XappSubscriptionData,
+ subdelchan chan<- *models.XappSubscriptionData) {