X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Forg%2Fonap%2Fdmaap%2Fdbcapi%2Fservice%2FDR_SubService.java;h=c14b1fd022827a60aad0ffb3b412af9820bea940;hb=ed283717c1d63873fd93cb5c5446cf44ca93d018;hp=c3f8c9cf16ed688f66efac55c948a7d0d8098fa7;hpb=503da874ce876dbe463bcc1a03f63ea0f48fe650;p=dmaap%2Fdbcapi.git diff --git a/src/main/java/org/onap/dmaap/dbcapi/service/DR_SubService.java b/src/main/java/org/onap/dmaap/dbcapi/service/DR_SubService.java index c3f8c9c..c14b1fd 100644 --- a/src/main/java/org/onap/dmaap/dbcapi/service/DR_SubService.java +++ b/src/main/java/org/onap/dmaap/dbcapi/service/DR_SubService.java @@ -3,6 +3,8 @@ * org.onap.dmaap * ================================================================================ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. + * + * Modifications Copyright (C) 2019 IBM. * ================================================================================ * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -26,8 +28,8 @@ import java.util.Map; import javax.ws.rs.core.Response.Status; -import org.onap.dmaap.dbcapi.aaf.client.DrProvConnection; -import org.onap.dmaap.dbcapi.aaf.database.DatabaseClass; +import org.onap.dmaap.dbcapi.client.DrProvConnection; +import org.onap.dmaap.dbcapi.database.DatabaseClass; import org.onap.dmaap.dbcapi.logging.BaseLoggingClass; import org.onap.dmaap.dbcapi.logging.DmaapbcLogMessageEnum; import org.onap.dmaap.dbcapi.model.ApiError; @@ -63,11 +65,11 @@ public class DR_SubService extends BaseLoggingClass { public List getAllDr_Subs() { logger.debug( "enter getAllDR_Subs()"); - return new ArrayList(dr_subs.values()); + return new ArrayList<>(dr_subs.values()); } public ArrayList getDr_SubsByFeedId( String pubId ) { - ArrayList someSubs = new ArrayList(); + ArrayList someSubs = new ArrayList<>(); for( DR_Sub sub : dr_subs.values() ) { if ( pubId.equals( sub.getFeedId() )) { someSubs.add( sub ); @@ -94,8 +96,9 @@ public class DR_SubService extends BaseLoggingClass { prov = new DrProvConnection(); prov.makeSubPostConnection( provURL ); String resp = prov.doPostDr_Sub( sub, apiError ); - if ( unit_test.equals( "Yes" ) ) { + if ( "Yes".equals(unit_test) ) { resp = simulateResp( sub, "POST" ); + apiError.setCode(201); } logger.debug( "addDr_Sub resp=" + resp ); @@ -107,7 +110,7 @@ public class DR_SubService extends BaseLoggingClass { snew.setLastMod(); addEgressRoute( snew, apiError ); dr_subs.put( snew.getSubId(), snew ); - apiError.setCode(200); + apiError.setCode(201); } else { apiError.setCode(400); } @@ -147,6 +150,10 @@ public class DR_SubService extends BaseLoggingClass { DrProvConnection prov = new DrProvConnection(); prov.makeSubPutConnection( obj.getSubId() ); String resp = prov.doPutDr_Sub( obj, apiError ); + if ( unit_test.equals( "Yes" ) ) { + resp = simulateResp( obj, "PUT" ); + apiError.setCode(200); + } logger.debug( "resp=" + resp ); DR_Sub snew = null; @@ -167,14 +174,21 @@ public class DR_SubService extends BaseLoggingClass { public void removeDr_Sub( String key, ApiError apiError ) { logger.debug( "enter removeDR_Subs()"); + DR_Sub sub = dr_subs.get( key ); if ( sub == null ) { apiError.setCode(Status.NOT_FOUND.getStatusCode()); apiError.setFields( "subId"); apiError.setMessage("subId " + key + " not found"); } else { - dr_subs.remove(key); - apiError.setCode(200); + DrProvConnection prov = new DrProvConnection(); + prov.makeSubPutConnection( key ); + String resp = prov.doDeleteDr_Sub( sub, apiError ); + logger.debug( "resp=" + resp ); + + if ( apiError.is2xx() || unit_test.equals( "Yes" ) ) { + dr_subs.remove(key); + } } return; @@ -191,8 +205,14 @@ public class DR_SubService extends BaseLoggingClass { } else { subid = "99"; } - String ret = String.format("{\"delivery\": {\"url\": \"https://%s/delivery/%s\", \"user\": \"joe\", \"password\": \"secret\", \"use100\": true}, \"metadataOnly\": false, \"groupid\": \"0\" , \"follow_redirect\": true }", - server, subid ); + String ret = String.format("{\"suspend\": false, \"delivery\": {\"url\": \"https://%s/delivery/%s\", \"user\": \"%s\", \"password\": \"%s\", \"use100\": true}, \"metadataOnly\": false, \"groupid\": \"0\" , \"follow_redirect\": true, ", + server, subid, sub.getUsername(), sub.getUserpwd()); + String links = String.format( "\"links\": {\"feed\": \"https://dr-prov/feedlog/%s\", \"self\": \"https://dr-prov/sub/%s\", \"log\": \"https://dr-prov/sublog/%s\" }", + sub.getFeedId(), + subid, + subid ); + ret += links + "}"; + logger.info( "DR_SubService:simulateResp=" + ret); return ret; }