killbill-aplcache

Merge pull request #739 from beccagaspard/work-for-release-0.19.x Issue

4/12/2017 6:03:18 PM

Details

diff --git a/catalog/src/main/java/org/killbill/billing/catalog/DefaultProduct.java b/catalog/src/main/java/org/killbill/billing/catalog/DefaultProduct.java
index 1af8c29..6a95b24 100644
--- a/catalog/src/main/java/org/killbill/billing/catalog/DefaultProduct.java
+++ b/catalog/src/main/java/org/killbill/billing/catalog/DefaultProduct.java
@@ -135,8 +135,8 @@ public class DefaultProduct extends ValidatingConfig<StandaloneCatalog> implemen
     public DefaultLimit[] getLimits() {
         return limits;
     }
-    
-    
+
+
     protected Limit findLimit(String unit) {
         for (Limit limit: limits) {
             if(limit.getUnit().getName().equals(unit) ) {
@@ -145,7 +145,7 @@ public class DefaultProduct extends ValidatingConfig<StandaloneCatalog> implemen
         }
         return null;
     }
-    
+
     @Override
     public boolean compliesWithLimits(String unit, double value) {
         Limit l = findLimit(unit);
@@ -186,6 +186,11 @@ public class DefaultProduct extends ValidatingConfig<StandaloneCatalog> implemen
         return this;
     }
 
+    public DefaultProduct setPrettyName(final String prettyName){
+        this.prettyName = prettyName;
+        return this;
+    }
+
     public DefaultProduct setCatagory(final ProductCategory category) {
         this.category = category;
         return this;
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 6954e2c..7e5dc48 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
@@ -389,6 +389,7 @@ public class StandaloneCatalogMapper {
         result.setCatalogName(catalogName);
         result.setCatagory(input.getCategory());
         result.setName(input.getName());
+        result.setPrettyName(input.getPrettyName());
         return result;
     }
 
@@ -400,6 +401,7 @@ public class StandaloneCatalogMapper {
         }
         final DefaultPlan result = new DefaultPlan();
         result.setName(input.getName());
+        result.setPrettyName(input.getPrettyName());
         result.setEffectiveDateForExistingSubscriptions(input.getEffectiveDateForExistingSubscriptions());
         result.setFinalPhase(toDefaultPlanPhase(input.getFinalPhase()));
         result.setInitialPhases(toDefaultPlanPhases(ImmutableList.copyOf(input.getInitialPhases())));
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 381089a..1fb466f 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
@@ -94,6 +94,7 @@ public class CatalogJson {
             if (productJson == null) {
                 productJson = new ProductJson(product.getCategory().toString(),
                                               product.getName(),
+                                              product.getPrettyName(),
                                               toProductNames(product.getIncluded()),
                                               toProductNames(product.getAvailable()));
                 productMap.put(product.getName(), productJson);
@@ -122,7 +123,7 @@ public class CatalogJson {
                 phases.add(phaseJson);
             }
 
-            final PlanJson planJson = new PlanJson(plan.getName(), plan.getRecurringBillingPeriod(), phases);
+            final PlanJson planJson = new PlanJson(plan.getName(), plan.getPrettyName(), plan.getRecurringBillingPeriod(), phases);
             productJson.getPlans().add(planJson);
         }
 
@@ -278,6 +279,7 @@ public class CatalogJson {
 
         private final String type;
         private final String name;
+        private final String prettyName;
         private final List<PlanJson> plans;
         private final List<String> included;
         private final List<String> available;
@@ -285,18 +287,20 @@ public class CatalogJson {
         @JsonCreator
         public ProductJson(@JsonProperty("type") final String type,
                            @JsonProperty("name") final String name,
+                           @JsonProperty("prettyName") final String prettyName,
                            @JsonProperty("plans") final List<PlanJson> plans,
                            @JsonProperty("included") final List<String> included,
                            @JsonProperty("available") final List<String> available) {
             this.type = type;
             this.name = name;
+            this.prettyName = prettyName;
             this.plans = plans;
             this.included = included;
             this.available = available;
         }
 
-        public ProductJson(final String type, final String name, final List<String> included, final List<String> available) {
-            this(type, name, new LinkedList<PlanJson>(), included, available);
+        public ProductJson(final String type, final String name, final String prettyName, final List<String> included, final List<String> available) {
+            this(type, name, prettyName, new LinkedList<PlanJson>(), included, available);
         }
 
         public String getType() {
@@ -307,6 +311,10 @@ public class CatalogJson {
             return name;
         }
 
+        public String getPrettyName() {
+            return prettyName;
+        }
+
         public List<PlanJson> getPlans() {
             return plans;
         }
@@ -324,6 +332,7 @@ public class CatalogJson {
             final StringBuilder sb = new StringBuilder("ProductJson{");
             sb.append("type='").append(type).append('\'');
             sb.append(", name='").append(name).append('\'');
+            sb.append(", prettyName='").append(prettyName).append('\'');
             sb.append(", plans=").append(plans);
             sb.append(", included=").append(included);
             sb.append(", available=").append(available);
@@ -375,14 +384,17 @@ public class CatalogJson {
     public static class PlanJson {
 
         private final String name;
+        private final String prettyName;
         private final BillingPeriod billingPeriod;
         private final List<PhaseJson> phases;
 
         @JsonCreator
         public PlanJson(@JsonProperty("name") final String name,
+                        @JsonProperty("prettyName") final String prettyName,
                         @JsonProperty("billingPeriod") final BillingPeriod billingPeriod,
                         @JsonProperty("phases") final List<PhaseJson> phases) {
             this.name = name;
+            this.prettyName = prettyName;
             this.billingPeriod = billingPeriod;
             this.phases = phases;
         }
@@ -391,6 +403,10 @@ public class CatalogJson {
             return name;
         }
 
+        public String getPrettyName() {
+            return prettyName;
+        }
+
         public BillingPeriod getBillingPeriod() {
             return billingPeriod;
         }
@@ -403,6 +419,7 @@ public class CatalogJson {
         public String toString() {
             final StringBuilder sb = new StringBuilder("PlanJson{");
             sb.append("name='").append(name).append('\'');
+            sb.append("prettyName='").append(prettyName).append('\'');
             sb.append("billingPeriod='").append(billingPeriod).append('\'');
             sb.append(", phases=").append(phases);
             sb.append('}');