Details
diff --git a/catalog/src/main/java/org/killbill/billing/catalog/api/user/DefaultCatalogUserApi.java b/catalog/src/main/java/org/killbill/billing/catalog/api/user/DefaultCatalogUserApi.java
index b074630..48e22ad 100644
--- a/catalog/src/main/java/org/killbill/billing/catalog/api/user/DefaultCatalogUserApi.java
+++ b/catalog/src/main/java/org/killbill/billing/catalog/api/user/DefaultCatalogUserApi.java
@@ -146,7 +146,7 @@ public class DefaultCatalogUserApi implements CatalogUserApi {
final StandaloneCatalog currentCatalog = getCurrentStandaloneCatalogForTenant(internalTenantContext);
final CatalogUpdater catalogUpdater = (currentCatalog != null) ?
new CatalogUpdater(currentCatalog) :
- new CatalogUpdater("dummy", BillingMode.IN_ADVANCE, effectiveDate, null);
+ new CatalogUpdater(BillingMode.IN_ADVANCE, effectiveDate, null);
catalogCache.clearCatalog(internalTenantContext);
tenantApi.updateTenantKeyValue(TenantKey.CATALOG.toString(), catalogUpdater.getCatalogXML(), callContext);
@@ -163,7 +163,7 @@ public class DefaultCatalogUserApi implements CatalogUserApi {
final StandaloneCatalog currentCatalog = getCurrentStandaloneCatalogForTenant(internalTenantContext);
final CatalogUpdater catalogUpdater = (currentCatalog != null) ?
new CatalogUpdater(currentCatalog) :
- new CatalogUpdater("dummy", BillingMode.IN_ADVANCE, effectiveDate, descriptor.getCurrency());
+ new CatalogUpdater(BillingMode.IN_ADVANCE, effectiveDate, descriptor.getCurrency());
catalogUpdater.addSimplePlanDescriptor(descriptor);
diff --git a/catalog/src/main/java/org/killbill/billing/catalog/CatalogUpdater.java b/catalog/src/main/java/org/killbill/billing/catalog/CatalogUpdater.java
index 9701a73..4ee0f3a 100644
--- a/catalog/src/main/java/org/killbill/billing/catalog/CatalogUpdater.java
+++ b/catalog/src/main/java/org/killbill/billing/catalog/CatalogUpdater.java
@@ -51,11 +51,13 @@ import com.google.common.collect.ImmutableList;
public class CatalogUpdater {
- private static URI DUMMY_URI;
+ public static String DEFAULT_CATALOG_NAME = "DEFAULT";
+
+ private static URI DEFAULT_URI;
static {
try {
- DUMMY_URI = new URI("dummy");
+ DEFAULT_URI = new URI(DEFAULT_CATALOG_NAME);
} catch (URISyntaxException e) {
}
}
@@ -68,11 +70,11 @@ public class CatalogUpdater {
this.catalog = new DefaultMutableStaticCatalog(standaloneCatalog);
}
- public CatalogUpdater(final String catalogName, final BillingMode billingMode, final DateTime effectiveDate, final Currency... currencies) {
+ public CatalogUpdater(final BillingMode billingMode, final DateTime effectiveDate, final Currency... currencies) {
final DefaultPriceList defaultPriceList = new DefaultPriceList().setName(PriceListSet.DEFAULT_PRICELIST_NAME);
final StandaloneCatalog tmp = new StandaloneCatalog()
- .setCatalogName(catalogName)
+ .setCatalogName(DEFAULT_CATALOG_NAME)
.setEffectiveDate(effectiveDate.toDate())
.setRecurringBillingMode(billingMode)
.setProducts(ImmutableList.<Product>of())
@@ -84,7 +86,7 @@ public class CatalogUpdater {
} else {
tmp.setSupportedCurrencies(new Currency[0]);
}
- tmp.initialize(tmp, DUMMY_URI);
+ tmp.initialize(tmp, DEFAULT_URI);
this.catalog = new DefaultMutableStaticCatalog(tmp);
}
@@ -118,7 +120,7 @@ public class CatalogUpdater {
product = new DefaultProduct();
product.setName(desc.getProductName());
product.setCatagory(desc.getProductCategory());
- product.initialize(catalog, DUMMY_URI);
+ product.initialize(catalog, DEFAULT_URI);
catalog.addProduct(product);
}
@@ -192,7 +194,7 @@ public class CatalogUpdater {
}
// Reinit catalog
- catalog.initialize(catalog, DUMMY_URI);
+ catalog.initialize(catalog, DEFAULT_URI);
}
private boolean isPriceForCurrencyExists(final InternationalPrice price, final Currency currency) {
diff --git a/catalog/src/main/java/org/killbill/billing/catalog/VersionedCatalog.java b/catalog/src/main/java/org/killbill/billing/catalog/VersionedCatalog.java
index b8f8fd0..8d31aff 100644
--- a/catalog/src/main/java/org/killbill/billing/catalog/VersionedCatalog.java
+++ b/catalog/src/main/java/org/killbill/billing/catalog/VersionedCatalog.java
@@ -224,7 +224,7 @@ public class VersionedCatalog extends ValidatingConfig<VersionedCatalog> impleme
}
public void add(final StandaloneCatalog e) throws CatalogApiException {
- if (catalogName == null) {
+ if (catalogName == null && e.getCatalogName() != null) {
catalogName = e.getCatalogName();
}
if (recurringBillingMode == null) {
diff --git a/catalog/src/test/java/org/killbill/billing/catalog/TestCatalogUpdater.java b/catalog/src/test/java/org/killbill/billing/catalog/TestCatalogUpdater.java
index 279b914..af11ffe 100644
--- a/catalog/src/test/java/org/killbill/billing/catalog/TestCatalogUpdater.java
+++ b/catalog/src/test/java/org/killbill/billing/catalog/TestCatalogUpdater.java
@@ -55,7 +55,7 @@ public class TestCatalogUpdater extends CatalogTestSuiteNoDB {
final DateTime now = clock.getUTCNow();
- final CatalogUpdater catalogUpdater = new CatalogUpdater("dummy", BillingMode.IN_ADVANCE, now, null);
+ final CatalogUpdater catalogUpdater = new CatalogUpdater(BillingMode.IN_ADVANCE, now, null);
final String catalogXML = catalogUpdater.getCatalogXML();
final StandaloneCatalog catalog = XMLLoader.getObjectFromStream(new URI("dummy"), new ByteArrayInputStream(catalogXML.getBytes(Charset.forName("UTF-8"))), StandaloneCatalog.class);
assertEquals(catalog.getCurrentPlans().size(), 0);
@@ -67,7 +67,7 @@ public class TestCatalogUpdater extends CatalogTestSuiteNoDB {
final DateTime now = clock.getUTCNow();
final SimplePlanDescriptor desc = new DefaultSimplePlanDescriptor("foo-monthly", "Foo", ProductCategory.BASE, Currency.EUR, BigDecimal.TEN, BillingPeriod.MONTHLY, 0, TimeUnit.UNLIMITED, ImmutableList.<String>of());
- final CatalogUpdater catalogUpdater = new CatalogUpdater("dummy", BillingMode.IN_ADVANCE, now, desc.getCurrency());
+ final CatalogUpdater catalogUpdater = new CatalogUpdater(BillingMode.IN_ADVANCE, now, desc.getCurrency());
catalogUpdater.addSimplePlanDescriptor(desc);
@@ -108,7 +108,7 @@ public class TestCatalogUpdater extends CatalogTestSuiteNoDB {
final DateTime now = clock.getUTCNow();
final SimplePlanDescriptor desc = new DefaultSimplePlanDescriptor("foo-monthly", "Foo", ProductCategory.BASE, Currency.EUR, BigDecimal.TEN, BillingPeriod.MONTHLY, 14, TimeUnit.DAYS, ImmutableList.<String>of());
- final CatalogUpdater catalogUpdater = new CatalogUpdater("dummy", BillingMode.IN_ADVANCE, now, desc.getCurrency());
+ final CatalogUpdater catalogUpdater = new CatalogUpdater(BillingMode.IN_ADVANCE, now, desc.getCurrency());
catalogUpdater.addSimplePlanDescriptor(desc);