killbill-memoizeit
entitlement: Code review integration for 9480895535c53a5b5874b4acecc6a6a91ae05a2b …
11/2/2015 11:51:46 PM
Changes
Details
diff --git a/entitlement/src/main/java/org/killbill/billing/entitlement/engine/core/DefaultEventsStream.java b/entitlement/src/main/java/org/killbill/billing/entitlement/engine/core/DefaultEventsStream.java
index a492b0a..e6d701e 100644
--- a/entitlement/src/main/java/org/killbill/billing/entitlement/engine/core/DefaultEventsStream.java
+++ b/entitlement/src/main/java/org/killbill/billing/entitlement/engine/core/DefaultEventsStream.java
@@ -359,18 +359,21 @@ public class DefaultEventsStream implements EventsStream {
private void computeBlockingAggregator() {
- final List<BlockingState> currentSubscriptionBlockingStatesForServices = filterCurrentBlockableStatePerService(BlockingStateType.SUBSCRIPTION);
- final List<BlockingState> currentBundleBlockingStatesForServices = filterCurrentBlockableStatePerService(BlockingStateType.SUBSCRIPTION_BUNDLE);
- final List<BlockingState> currentAccountBlockingStatesForServices = filterCurrentBlockableStatePerService(BlockingStateType.ACCOUNT);
+ final List<BlockingState> currentSubscriptionBlockingStatesForServices = filterCurrentBlockableStatePerService(BlockingStateType.SUBSCRIPTION, subscription.getId());
+ final List<BlockingState> currentBundleBlockingStatesForServices = filterCurrentBlockableStatePerService(BlockingStateType.SUBSCRIPTION_BUNDLE, subscription.getBundleId());
+ final List<BlockingState> currentAccountBlockingStatesForServices = filterCurrentBlockableStatePerService(BlockingStateType.ACCOUNT, account.getId());
blockingAggregator = blockingChecker.getBlockedStatus(currentAccountBlockingStatesForServices,
currentBundleBlockingStatesForServices,
currentSubscriptionBlockingStatesForServices,
internalTenantContext);
}
- private List<BlockingState> filterCurrentBlockableStatePerService(final BlockingStateType type) {
+ private List<BlockingState> filterCurrentBlockableStatePerService(final BlockingStateType type, final UUID blockableId) {
final Map<String, BlockingState> currentBlockingStatePerService = new HashMap<String, BlockingState>();
for (final BlockingState blockingState : blockingStates) {
+ if (!blockingState.getBlockedId().equals(blockableId)) {
+ continue;
+ }
if (blockingState.getType() != type) {
continue;
}