List<UsagePriceOverride> getUsagePriceOverrides(PlanPhase curPhase, CatalogOverridePhaseDefinitionModelDao overriddenPhase, final InternalTenantContext context) { final List<UsagePriceOverride> usagePriceOverrides = new ArrayList<UsagePriceOverride>(); final List<CatalogOverrideUsageDefinitionModelDao> usageDefs = overrideDao.getOverriddenPhaseUsages(overriddenPhase.getRecordId(), context); for (int i = 0; i < curPhase.getUsages().length; i++) { final Usage curUsage = curPhase.getUsages()[i]; final CatalogOverrideUsageDefinitionModelDao overriddenUsage = Iterables.tryFind(usageDefs, new Predicate<CatalogOverrideUsageDefinitionModelDao>() { @Override public boolean apply(final CatalogOverrideUsageDefinitionModelDao input) { return input.getParentUsageName().equals(curUsage.getName()); } }).orNull(); if (overriddenUsage != null) { List<TierPriceOverride> tierPriceOverrides = getTierPriceOverrides(curUsage, overriddenUsage, context); usagePriceOverrides.add(new DefaultUsagePriceOverride(overriddenUsage.getParentUsageName(), curUsage.getUsageType(), tierPriceOverrides)); } } return usagePriceOverrides; }
private Usage[] getUsages(final StandaloneCatalog catalog, final String planName) throws CatalogApiException { final Plan plan = catalog.findCurrentPlan(planName); assertNotNull(plan); final PlanPhase phase = plan.getFinalPhase(); assertNotNull(phase); final Usage[] usages = phase.getUsages(); return usages; } }
private DefaultPlanPhase toDefaultPlanPhase(final PlanPhase input) { final DefaultPlanPhase result = new DefaultPlanPhase(); result.setDuration(toDefaultDuration(input.getDuration())); result.setFixed(toDefaultFixed(input.getFixed())); result.setPhaseType(input.getPhaseType()); result.setRecurring(toDefaultRecurring(input.getRecurring())); if (input.getUsages() != null && input.getUsages().length > 0) { result.setUsages(toDefaultUsages(Arrays.asList(input.getUsages()))); } return result; }
List<UsagePriceOverride> resolvedUsageOverrides = getResolvedUsageOverrides(curPhase.getUsages(), curOverride.getUsagePriceOverrides()); resolvedOverride[index++] = new DefaultPlanPhasePriceOverride(curPhase.getName(), curOverride.getCurrency(), curOverride.getFixedPrice(), curOverride.getRecurringPrice(), resolvedUsageOverrides);
final UsagePriceOverride curOverride = resolvedUsageOverrides.get(i); if (curOverride != null) { Usage parentUsage = parentPlanPhase.getUsages()[i]; final CatalogOverrideUsageDefinitionModelDao createdOverrideUsageDefinitionModelDao = getOrCreateOverrideUsageDefinitionFromTransaction(parentUsage, currency, catalogEffectiveDate, curOverride, inTransactionHandle, context); overrideUsageDefinitionModelDaos[i] = createdOverrideUsageDefinitionModelDao;
final DefaultUsage initialUsage = (DefaultUsage) plan.getFinalPhase().getUsages()[i]; final DefaultUsage newUsage = (DefaultUsage) overriddenPlan.getFinalPhase().getUsages()[i];
final DefaultUsage initialUsage = (DefaultUsage) plan.getFinalPhase().getUsages()[i]; final DefaultUsage newUsage = (DefaultUsage) overriddenPlan.getFinalPhase().getUsages()[i];
private List<Usage> initializeUsage(final boolean isActive) { List<Usage> result = ImmutableList.<Usage>of(); if (!isActive) { return result; } if (planPhase != null && planPhase.getUsages().length > 0) { result = Lists.newArrayList(); for (Usage usage : planPhase.getUsages()) { result.add(usage); } } return result; }
List<UsagePriceOverride> getUsagePriceOverrides(PlanPhase curPhase, CatalogOverridePhaseDefinitionModelDao overriddenPhase, final InternalTenantContext context) { final List<UsagePriceOverride> usagePriceOverrides = new ArrayList<UsagePriceOverride>(); final List<CatalogOverrideUsageDefinitionModelDao> usageDefs = overrideDao.getOverriddenPhaseUsages(overriddenPhase.getRecordId(), context); for (int i = 0; i < curPhase.getUsages().length; i++) { final Usage curUsage = curPhase.getUsages()[i]; final CatalogOverrideUsageDefinitionModelDao overriddenUsage = Iterables.tryFind(usageDefs, new Predicate<CatalogOverrideUsageDefinitionModelDao>() { @Override public boolean apply(final CatalogOverrideUsageDefinitionModelDao input) { return input.getParentUsageName().equals(curUsage.getName()); } }).orNull(); if (overriddenUsage != null) { List<TierPriceOverride> tierPriceOverrides = getTierPriceOverrides(curUsage, overriddenUsage, context); usagePriceOverrides.add(new DefaultUsagePriceOverride(overriddenUsage.getParentUsageName(), curUsage.getUsageType(), tierPriceOverrides)); } } return usagePriceOverrides; }
private Usage[] getUsages(final StandaloneCatalog catalog, final String planName) throws CatalogApiException { final Plan plan = catalog.findCurrentPlan(planName); assertNotNull(plan); final PlanPhase phase = plan.getFinalPhase(); assertNotNull(phase); final Usage[] usages = phase.getUsages(); return usages; } }
private DefaultPlanPhase toDefaultPlanPhase(final PlanPhase input) { final DefaultPlanPhase result = new DefaultPlanPhase(); result.setDuration(toDefaultDuration(input.getDuration())); result.setFixed(toDefaultFixed(input.getFixed())); result.setPhaseType(input.getPhaseType()); result.setRecurring(toDefaultRecurring(input.getRecurring())); if (input.getUsages() != null && input.getUsages().length > 0) { result.setUsages(toDefaultUsages(Arrays.asList(input.getUsages()))); } return result; }
for (Usage cur : planPhase.getUsages()) { if (cur.getName().equals(usageName)) { usage = cur;
List<UsagePriceOverride> resolvedUsageOverrides = getResolvedUsageOverrides(curPhase.getUsages(), curOverride.getUsagePriceOverrides()); resolvedOverride[index++] = new DefaultPlanPhasePriceOverride(curPhase.getName(), curOverride.getCurrency(), curOverride.getFixedPrice(), curOverride.getRecurringPrice(), resolvedUsageOverrides);
public PhaseJson(final PlanPhase phase) throws CurrencyValueNull { final List<PriceJson> prices = new LinkedList<PriceJson>(); if (phase.getRecurring() != null && phase.getRecurring().getRecurringPrice() != null) { for (final Price price : phase.getRecurring().getRecurringPrice().getPrices()) { prices.add(new PriceJson(price)); } } final List<PriceJson> fixedPrices = new LinkedList<PriceJson>(); if (phase.getFixed() != null && phase.getFixed().getPrice() != null) { for (final Price price : phase.getFixed().getPrice().getPrices()) { fixedPrices.add(new PriceJson(price)); } } final DurationJson durationJson = new DurationJson(phase.getDuration().getUnit(), phase.getDuration().getNumber()); final List<UsageJson> usagesJson = buildUsagesJson(phase.getUsages()); this.type = phase.getPhaseType().toString(); this.prices = prices; this.fixedPrices = fixedPrices; this.duration = durationJson; this.usages = usagesJson; }
final UsagePriceOverride curOverride = resolvedUsageOverrides.get(i); if (curOverride != null) { Usage parentUsage = parentPlanPhase.getUsages()[i]; final CatalogOverrideUsageDefinitionModelDao createdOverrideUsageDefinitionModelDao = getOrCreateOverrideUsageDefinitionFromTransaction(parentUsage, currency, catalogEffectiveDate, curOverride, inTransactionHandle, context); overrideUsageDefinitionModelDaos[i] = createdOverrideUsageDefinitionModelDao;
final DefaultUsage initialUsage = (DefaultUsage) plan.getFinalPhase().getUsages()[i]; final DefaultUsage newUsage = (DefaultUsage) overriddenPlan.getFinalPhase().getUsages()[i];
final DefaultUsage initialUsage = (DefaultUsage) plan.getFinalPhase().getUsages()[i]; final DefaultUsage newUsage = (DefaultUsage) overriddenPlan.getFinalPhase().getUsages()[i];
final PhasePriceJson phase = new PhasePriceJson(currentPlanName, curPlanPhase.getName(), curPlanPhase.getPhaseType().toString(), fixedPrice, recurringPrice, curPlanPhase.getUsages(), currency); prices.add(phase);