List<TieredBlockPriceOverride> getTieredBlockPriceOverrides(Tier curTier, CatalogOverrideTierDefinitionModelDao overriddenTier, final InternalTenantContext context) { final List<TieredBlockPriceOverride> blockPriceOverrides = new ArrayList<TieredBlockPriceOverride>(); final List<CatalogOverrideBlockDefinitionModelDao> blockDefs = overrideDao.getOverriddenTierBlocks(overriddenTier.getRecordId(), context); for (int i = 0; i < curTier.getTieredBlocks().length; i++) { final TieredBlock curTieredBlock = curTier.getTieredBlocks()[i]; final CatalogOverrideBlockDefinitionModelDao overriddenTierBlock = Iterables.tryFind(blockDefs, new Predicate<CatalogOverrideBlockDefinitionModelDao>() { @Override public boolean apply(final CatalogOverrideBlockDefinitionModelDao input) { return (input.getParentUnitName().equals(curTieredBlock.getUnit().getName()) && Double.compare(input.getSize(), curTieredBlock.getSize()) == 0 && Double.compare(input.getMax(), curTieredBlock.getMax()) == 0); } }).orNull(); if (overriddenTierBlock != null) { blockPriceOverrides.add(new DefaultTieredBlockPriceOverride(overriddenTierBlock.getParentUnitName(), overriddenTierBlock.getSize(), overriddenTierBlock.getPrice(), Currency.valueOf(overriddenTierBlock.getCurrency()), overriddenTierBlock.getMax())); } } return blockPriceOverrides; } }
@Override public boolean apply(final CatalogOverrideTierDefinitionModelDao input) { final List<CatalogOverrideBlockDefinitionModelDao> blockDefs = overrideDao.getOverriddenTierBlocks(input.getRecordId(), context); for (CatalogOverrideBlockDefinitionModelDao blockDef : blockDefs) { String unitName = blockDef.getParentUnitName(); Double max = blockDef.getMax(); Double size = blockDef.getSize(); for (TieredBlock curTieredBlock : curTieredBlocks) { if (unitName.equals(curTieredBlock.getUnit().getName()) && Double.compare(size, curTieredBlock.getSize()) == 0 && Double.compare(max, curTieredBlock.getMax()) == 0) { return true; } } } return false; }
final CatalogOverrideTierDefinitionModelDao curTier = tiers.get(0); final List<CatalogOverrideBlockDefinitionModelDao> tierBlocks = catalogOverrideDao.getOverriddenTierBlocks(curTier.getRecordId(), internalCallContext); assertEquals(tierBlocks.size(), 1); final CatalogOverrideBlockDefinitionModelDao curTieredBlock = tierBlocks.get(0);
final CatalogOverrideTierDefinitionModelDao curTier = tiers.get(0); final List<CatalogOverrideBlockDefinitionModelDao> tierBlocks = catalogOverrideDao.getOverriddenTierBlocks(curTier.getRecordId(), internalCallContext); assertEquals(tierBlocks.size(), 1); final CatalogOverrideBlockDefinitionModelDao curTieredBlock = tierBlocks.get(0);
List<TieredBlockPriceOverride> getTieredBlockPriceOverrides(Tier curTier, CatalogOverrideTierDefinitionModelDao overriddenTier, final InternalTenantContext context) { final List<TieredBlockPriceOverride> blockPriceOverrides = new ArrayList<TieredBlockPriceOverride>(); final List<CatalogOverrideBlockDefinitionModelDao> blockDefs = overrideDao.getOverriddenTierBlocks(overriddenTier.getRecordId(), context); for (int i = 0; i < curTier.getTieredBlocks().length; i++) { final TieredBlock curTieredBlock = curTier.getTieredBlocks()[i]; final CatalogOverrideBlockDefinitionModelDao overriddenTierBlock = Iterables.tryFind(blockDefs, new Predicate<CatalogOverrideBlockDefinitionModelDao>() { @Override public boolean apply(final CatalogOverrideBlockDefinitionModelDao input) { return (input.getParentUnitName().equals(curTieredBlock.getUnit().getName()) && Double.compare(input.getSize(), curTieredBlock.getSize()) == 0 && Double.compare(input.getMax(), curTieredBlock.getMax()) == 0); } }).orNull(); if (overriddenTierBlock != null) { blockPriceOverrides.add(new DefaultTieredBlockPriceOverride(overriddenTierBlock.getParentUnitName(), overriddenTierBlock.getSize(), overriddenTierBlock.getPrice(), Currency.valueOf(overriddenTierBlock.getCurrency()), overriddenTierBlock.getMax())); } } return blockPriceOverrides; } }
@Override public boolean apply(final CatalogOverrideTierDefinitionModelDao input) { final List<CatalogOverrideBlockDefinitionModelDao> blockDefs = overrideDao.getOverriddenTierBlocks(input.getRecordId(), context); for (CatalogOverrideBlockDefinitionModelDao blockDef : blockDefs) { String unitName = blockDef.getParentUnitName(); Double max = blockDef.getMax(); Double size = blockDef.getSize(); for (TieredBlock curTieredBlock : curTieredBlocks) { if (unitName.equals(curTieredBlock.getUnit().getName()) && Double.compare(size, curTieredBlock.getSize()) == 0 && Double.compare(max, curTieredBlock.getMax()) == 0) { return true; } } } return false; }
final CatalogOverrideTierDefinitionModelDao curTier = tiers.get(0); final List<CatalogOverrideBlockDefinitionModelDao> tierBlocks = catalogOverrideDao.getOverriddenTierBlocks(curTier.getRecordId(), internalCallContext); assertEquals(tierBlocks.size(), 1); final CatalogOverrideBlockDefinitionModelDao curTieredBlock = tierBlocks.get(0);
final CatalogOverrideTierDefinitionModelDao curTier = tiers.get(0); final List<CatalogOverrideBlockDefinitionModelDao> tierBlocks = catalogOverrideDao.getOverriddenTierBlocks(curTier.getRecordId(), internalCallContext); assertEquals(tierBlocks.size(), 1); final CatalogOverrideBlockDefinitionModelDao curTieredBlock = tierBlocks.get(0);