X-Git-Url: https://gerrit.onap.org/r/gitweb?p=dmaap%2Fdbcapi.git;a=blobdiff_plain;f=src%2Fmain%2Fjava%2Forg%2Fonap%2Fdmaap%2Fdbcapi%2Fmodel%2FDR_Sub.java;fp=src%2Fmain%2Fjava%2Forg%2Fonap%2Fdmaap%2Fdbcapi%2Fmodel%2FDR_Sub.java;h=dd0b85dc623f455f4ee234b5484433dad089fca4;hp=a5d9999783f2ee7ecd21e2f0fbd59c250a7097d6;hb=7ecdac335b89831e5d9043434f05beb21dff640a;hpb=5eb10d9cfaa802e35174e99686f10510e8c7d54f diff --git a/src/main/java/org/onap/dmaap/dbcapi/model/DR_Sub.java b/src/main/java/org/onap/dmaap/dbcapi/model/DR_Sub.java index a5d9999..dd0b85d 100644 --- a/src/main/java/org/onap/dmaap/dbcapi/model/DR_Sub.java +++ b/src/main/java/org/onap/dmaap/dbcapi/model/DR_Sub.java @@ -42,6 +42,9 @@ public class DR_Sub extends DmaapObject { private boolean use100; private boolean suspended; private String owner; + private boolean guaranteedDelivery; + private boolean guaranteedSequence; + private boolean privilegedSubscriber; public DR_Sub() { @@ -81,13 +84,32 @@ public class DR_Sub extends DmaapObject { this.setOwner( (String) jsonObj.get("subscriber")); this.setSuspended( (boolean) jsonObj.get("suspend")); - JSONObject links = (JSONObject) jsonObj.get("links"); - String url = (String) links.get("feed"); - this.setFeedId( url.substring( url.lastIndexOf('/')+1, url.length() )); - url = (String) links.get("self"); - this.setSubId( url.substring( url.lastIndexOf('/')+1, url.length() )); - logger.info( "feedid="+ this.getFeedId() ); - this.setLogURL( (String) links.get("log") ); + try { + JSONObject links = (JSONObject) jsonObj.get("links"); + String url = (String) links.get("feed"); + this.setFeedId( url.substring( url.lastIndexOf('/')+1, url.length() )); + url = (String) links.get("self"); + this.setSubId( url.substring( url.lastIndexOf('/')+1, url.length() )); + logger.info( "feedid="+ this.getFeedId() ); + this.setLogURL( (String) links.get("log") ); + } catch (NullPointerException npe ) { + + } + try { + this.setGuaranteedDelivery( (boolean) jsonObj.get("guaranteed_delivery")); + } catch( NullPointerException npe ) { + this.setGuaranteedDelivery(false); + } + try { + this.setGuaranteedSequence( (boolean) jsonObj.get("guaranteed_sequence")); + } catch( NullPointerException npe ) { + this.setGuaranteedSequence(false); + } + try { + this.setPrivilegedSubscriber((boolean) jsonObj.get("privilegedSubscriber")); + } catch( NullPointerException npe ) { + this.setPrivilegedSubscriber(false); + } JSONObject del = (JSONObject) jsonObj.get("delivery"); this.setDeliveryURL( (String) del.get("url") ); @@ -95,6 +117,8 @@ public class DR_Sub extends DmaapObject { this.setUserpwd( (String) del.get( "password")); this.setUse100((boolean) del.get( "use100")); + + this.setStatus( DmaapObject_Status.VALID ); logger.info( "new DR_Sub returning"); @@ -183,6 +207,29 @@ public class DR_Sub extends DmaapObject { } + public boolean isGuaranteedDelivery() { + return guaranteedDelivery; + } + + public void setGuaranteedDelivery(boolean guaranteedDelivery) { + this.guaranteedDelivery = guaranteedDelivery; + } + + public boolean isGuaranteedSequence() { + return guaranteedSequence; + } + + public void setGuaranteedSequence(boolean guaranteedSequence) { + this.guaranteedSequence = guaranteedSequence; + } + + public boolean isPrivilegedSubscriber() { + return privilegedSubscriber; + } + + public void setPrivilegedSubscriber(boolean privilegedSubscriber) { + this.privilegedSubscriber = privilegedSubscriber; + } public byte[] getBytes(String provApi) { if ( "AT&T".equals(provApi)) { @@ -193,18 +240,21 @@ public class DR_Sub extends DmaapObject { // returns the DR_Sub object in JSON that conforms to ONAP DR Prov Server expectations public String toProvJSON() { // this is the original DR API that was contributed to ONAP - String postJSON = String.format("{\"suspend\": \"%s\", \"delivery\": " - + "{\"url\": \"%s\", \"user\": \"%s\", \"password\": \"%s\", \"use100\": \"%s\"}" + String postJSON = String.format("{\"suspend\": %s, \"delivery\":" + + "{\"url\": \"%s\", \"user\": \"%s\", \"password\": \"%s\", \"use100\": %s }" + ", \"metadataOnly\": %s, \"groupid\": \"%s\", \"follow_redirect\": %s " - + "}", - this.suspended, - this.getDeliveryURL(), - this.getUsername(), - this.getUserpwd(), - this.isUse100(), - "false", - "0", - "true"); + + ", \"privilegedSubscriber\": %s " + + "}" + ,this.suspended + ,this.getDeliveryURL() + ,this.getUsername() + ,this.getUserpwd() + ,this.isUse100() + ,"false" + ,"0" + ,"true" + ,this.isPrivilegedSubscriber() + ); logger.info( postJSON ); return postJSON; @@ -225,21 +275,22 @@ public class DR_Sub extends DmaapObject { // TODO: // - introduce Bus Controller API support for these attributes // - store the default values in the DB - String postJSON = String.format("{\"suspend\": \"%s\", \"delivery\": " - + "{\"url\": \"%s\", \"user\": \"%s\", \"password\": \"%s\", \"use100\": \"%s\"}" + String postJSON = String.format("{\"suspend\": %s, \"delivery\":" + + "{\"url\": \"%s\", \"user\": \"%s\", \"password\": \"%s\", \"use100\": %s}" + ", \"metadataOnly\": %s, \"groupid\": \"%s\", \"follow_redirect\": %s " - + ", \"guaranteed_delivery\": %s, \"guaranteed_sequence\": %s " - + "}", - this.suspended, - this.getDeliveryURL(), - this.getUsername(), - this.getUserpwd(), - this.isUse100(), - "false", - "0", - "true", - "false", - "false"); + + ", \"guaranteed_delivery\": %s, \"guaranteed_sequence\": %s" + + "}" + ,this.suspended + ,this.getDeliveryURL() + ,this.getUsername() + ,this.getUserpwd() + ,this.isUse100() + ,"false" + ,"0" + ,"true" + ,this.isGuaranteedDelivery() + ,this.isGuaranteedSequence() + ); logger.info( postJSON ); return postJSON;