X-Git-Url: https://gerrit.onap.org/r/gitweb?p=dmaap%2Fdbcapi.git;a=blobdiff_plain;f=src%2Fmain%2Fjava%2Forg%2Fonap%2Fdmaap%2Fdbcapi%2Fservice%2FFeedService.java;h=18ca2c7a7c1e865f622e5e30fe43f8e3ab481bcf;hp=8332a35b68272b5abc77890912cc459afb71ac02;hb=8f54f37825746cf82b33a21ff356950eb682d290;hpb=955500a4aa5c86a1ccc8c4bdf81c65daff41070a diff --git a/src/main/java/org/onap/dmaap/dbcapi/service/FeedService.java b/src/main/java/org/onap/dmaap/dbcapi/service/FeedService.java index 8332a35..18ca2c7 100644 --- a/src/main/java/org/onap/dmaap/dbcapi/service/FeedService.java +++ b/src/main/java/org/onap/dmaap/dbcapi/service/FeedService.java @@ -193,7 +193,7 @@ public class FeedService extends BaseLoggingClass { // need to save the Sub objects independently private boolean saveSubs( Feed fnew, Feed req ) { ArrayList subs = req.getSubs(); - if ( subs.size() == 0 ) { + if ( subs == null || subs.size() == 0 ) { logger.info( "No subs specified"); } else { DR_SubService subSvc = new DR_SubService( fnew.getSubscribeURL() ); @@ -393,12 +393,21 @@ public class FeedService extends BaseLoggingClass { } return feeds.remove(req.getFeedId()); } else { - req.setStatus(DmaapObject_Status.DELETED); - req.setPubs(null); + + logger.info( "Disable pubs for deleted feed - creating tmp pub"); + ArrayList tmppub = new ArrayList(); + tmppub.add( new DR_Pub( dcaeLocations.getCentralLocation()) + .setRandomUserName() + .setRandomPassword()); + req.setPubs(tmppub); req.setSubs(null); - req.setLastMod(); - feeds.put( req.getFeedId(), req ); - return null; + Feed fnew = updateFeed( req, err ); + if ( ! err.is2xx()) { + return req; + } + fnew.setStatus(DmaapObject_Status.DELETED); + feeds.put( fnew.getFeedId(), fnew ); + return null; }