private enum WhichPhase { CURRENT, NEXT }
@Override public PlanChangeResult getPlanChangeResult(final DefaultSubscriptionBase subscription, final PlanSpecifier toPlanPhase, final DateTime effectiveDate, final TenantContext context) throws SubscriptionBaseApiException { final PlanChangeResult planChangeResult; try { final InternalTenantContext internalCallContext = createTenantContextFromBundleId(subscription.getBundleId(), context); final Plan currentPlan = subscription.getCurrentOrPendingPlan(); final PlanPhaseSpecifier fromPlanPhase = new PlanPhaseSpecifier(currentPlan.getName(), subscription.getCurrentOrPendingPhase().getPhaseType()); planChangeResult = catalogInternalApi.getFullCatalog(true, true, internalCallContext).planChange(fromPlanPhase, toPlanPhase, effectiveDate, subscription.getStartDate()); } catch (final CatalogApiException e) { throw new SubscriptionBaseApiException(e); } return planChangeResult; }
private enum WhichPhase { CURRENT, NEXT }
@Override public PlanChangeResult getPlanChangeResult(final DefaultSubscriptionBase subscription, final PlanSpecifier toPlanPhase, final DateTime effectiveDate, final TenantContext context) throws SubscriptionBaseApiException { final PlanChangeResult planChangeResult; try { final InternalTenantContext internalCallContext = createTenantContextFromBundleId(subscription.getBundleId(), context); final Plan currentPlan = subscription.getCurrentOrPendingPlan(); final PlanPhaseSpecifier fromPlanPhase = new PlanPhaseSpecifier(currentPlan.getName(), subscription.getCurrentOrPendingPhase().getPhaseType()); planChangeResult = catalogInternalApi.getFullCatalog(true, true, internalCallContext).planChange(fromPlanPhase, toPlanPhase, effectiveDate, subscription.getStartDate()); } catch (final CatalogApiException e) { throw new SubscriptionBaseApiException(e); } return planChangeResult; }