killbill-aplcache

Merge pull request #752 from sruthipendyala/work-for-release-0.19.x Add

5/10/2017 6:33:24 PM

Details

diff --git a/catalog/src/main/java/org/killbill/billing/catalog/DefaultUnit.java b/catalog/src/main/java/org/killbill/billing/catalog/DefaultUnit.java
index 9d3f148..5df4f88 100644
--- a/catalog/src/main/java/org/killbill/billing/catalog/DefaultUnit.java
+++ b/catalog/src/main/java/org/killbill/billing/catalog/DefaultUnit.java
@@ -29,11 +29,14 @@ import org.killbill.xmlloader.ValidationErrors;
 
 @XmlAccessorType(XmlAccessType.NONE)
 public class DefaultUnit extends ValidatingConfig<StandaloneCatalog> implements Unit {
-    
+
     @XmlAttribute(required = true)
     @XmlID
     private String name;
 
+    @XmlAttribute(required = false)
+    private String prettyName;
+
     /* (non-Javadoc)
      * @see org.killbill.billing.catalog.Unit#getName()
      */
@@ -44,7 +47,7 @@ public class DefaultUnit extends ValidatingConfig<StandaloneCatalog> implements 
 
     @Override
     public String getPrettyName() {
-        return name;
+        return prettyName;
     }
 
     @Override
@@ -57,14 +60,22 @@ public class DefaultUnit extends ValidatingConfig<StandaloneCatalog> implements 
     public void initialize(final StandaloneCatalog catalog, final URI sourceURI) {
         super.initialize(catalog, sourceURI);
         CatalogSafetyInitializer.initializeNonRequiredNullFieldsWithDefaultValue(this);
+        if (prettyName == null) {
+            this.prettyName = name;
+        }
     }
 
-
     public DefaultUnit setName(final String name) {
         this.name = name;
         return this;
     }
 
+    public DefaultUnit setPrettyName(final String prettyName) {
+        this.prettyName = prettyName;
+        return this;
+
+    }
+
     @Override
     public boolean equals(final Object o) {
         if (this == o) {
diff --git a/catalog/src/main/java/org/killbill/billing/catalog/plugin/StandaloneCatalogMapper.java b/catalog/src/main/java/org/killbill/billing/catalog/plugin/StandaloneCatalogMapper.java
index 7e5dc48..4d715cf 100644
--- a/catalog/src/main/java/org/killbill/billing/catalog/plugin/StandaloneCatalogMapper.java
+++ b/catalog/src/main/java/org/killbill/billing/catalog/plugin/StandaloneCatalogMapper.java
@@ -358,6 +358,7 @@ public class StandaloneCatalogMapper {
     private DefaultUnit toDefaultUnit(final Unit input) {
         final DefaultUnit result = new DefaultUnit();
         result.setName(input.getName());
+        result.setPrettyName(input.getPrettyName());
         return result;
     }
 
diff --git a/jaxrs/src/main/java/org/killbill/billing/jaxrs/json/CatalogJson.java b/jaxrs/src/main/java/org/killbill/billing/jaxrs/json/CatalogJson.java
index 1fb466f..af04da4 100644
--- a/jaxrs/src/main/java/org/killbill/billing/jaxrs/json/CatalogJson.java
+++ b/jaxrs/src/main/java/org/killbill/billing/jaxrs/json/CatalogJson.java
@@ -174,6 +174,7 @@ public class CatalogJson {
         if (tieredBlocks != null && tieredBlocks.length > 0) {
             for (int i=0; i < tieredBlocks.length; i++) {
                 tieredBlocksJson.add(new TieredBlockJson(tieredBlocks[i].getUnit().getName(),
+                                                         tieredBlocks[i].getUnit().getPrettyName(),
                                                          tieredBlocks[i].getSize().toString(),
                                                          tieredBlocks[i].getMax().toString(),
                                                          buildPrices(tieredBlocks[i].getPrice())));
@@ -460,24 +461,30 @@ public class CatalogJson {
     }
 
     public static class TieredBlockJson {
-        private final String unit;
+        private final String name;
+        private final String prettyName;
         private final String size;
         private final String max;
         private final List<PriceJson> prices;
 
         @JsonCreator
-        public TieredBlockJson(@JsonProperty("unit") final String unit,
+        public TieredBlockJson(@JsonProperty("name") final String name,
+                               @JsonProperty("prettyName") final String prettyName,
                                @JsonProperty("size") final String size,
                                @JsonProperty("max") final String max,
                                @JsonProperty("prices") final List<PriceJson> prices) {
-            this.unit = unit;
+            this.name = name;
+            this.prettyName = prettyName;
             this.size = size;
             this.max = max;
             this.prices = prices;
         }
 
-        public String getUnit() {
-            return unit;
+        public String getName() {
+            return name;
+        }
+        public String getPrettyName() {
+            return prettyName;
         }
         public String getSize() {
             return size;
@@ -492,7 +499,8 @@ public class CatalogJson {
         @Override
         public String toString() {
             final StringBuilder sb = new StringBuilder("TieredBlockJson{");
-            sb.append("unit='").append(unit).append('\'');
+            sb.append("name='").append(name).append('\'');
+            sb.append("prettyName='").append(prettyName).append('\'');
             sb.append(", size=").append(size);
             sb.append(", max=").append(max);
             sb.append(", prices=").append(prices);
@@ -511,7 +519,10 @@ public class CatalogJson {
 
             final TieredBlockJson blockJson = (TieredBlockJson) o;
 
-            if (unit != null ? !unit.equals(blockJson.unit) : blockJson.unit != null) {
+            if (name != null ? !name.equals(blockJson.name) : blockJson.name != null) {
+                return false;
+            }
+            if (prettyName != null ? !prettyName.equals(blockJson.prettyName) : blockJson.prettyName != null) {
                 return false;
             }
             if (size != null ? !size.equals(blockJson.size) : blockJson.size != null) {
@@ -529,7 +540,8 @@ public class CatalogJson {
 
         @Override
         public int hashCode() {
-            int result = unit != null ? unit.hashCode() : 0;
+            int result = name != null ? name.hashCode() : 0;
+            result = 31 * result + (prettyName != null ? prettyName.hashCode() : 0);
             result = 31 * result + (size != null ? size.hashCode() : 0);
             result = 31 * result + (max != null ? max.hashCode() : 0);
             result = 31 * result + (prices != null ? prices.hashCode() : 0);