Search in sources :

Example 1 with AccountCreationInternalEvent

use of org.killbill.billing.events.AccountCreationInternalEvent in project killbill by killbill.

the class TestBeatrixListener method testAccountCreate.

@Test(groups = "fast")
public void testAccountCreate() throws Exception {
    AccountCreationInternalEvent event = mock(AccountCreationInternalEvent.class);
    provideCommonBusEventInfo(event);
    when(event.getBusEventType()).thenReturn(BusInternalEventType.ACCOUNT_CREATE);
    when(event.getId()).thenReturn(ACCOUNT_ID);
    ArgumentCaptor<BusEvent> eventCaptor = ArgumentCaptor.forClass(BusEvent.class);
    beatrixListener.handleAllInternalKillbillEvents(event);
    verify(externalBus, times(1)).post(eventCaptor.capture());
    DefaultBusExternalEvent postedEvent = (DefaultBusExternalEvent) eventCaptor.getValue();
    assertEquals(postedEvent.getObjectId(), ACCOUNT_ID);
    assertEquals(postedEvent.getObjectType(), ObjectType.ACCOUNT);
    assertEquals(postedEvent.getEventType(), ExtBusEventType.ACCOUNT_CREATION);
    assertNull(postedEvent.getMetaData());
    assertCommonFieldsWithAccountId(postedEvent);
}
Also used : BusEvent(org.killbill.bus.api.BusEvent) AccountCreationInternalEvent(org.killbill.billing.events.AccountCreationInternalEvent) Test(org.testng.annotations.Test)

Example 2 with AccountCreationInternalEvent

use of org.killbill.billing.events.AccountCreationInternalEvent in project killbill by killbill.

the class DefaultAccountDao method postBusEventFromTransaction.

@Override
protected void postBusEventFromTransaction(final AccountModelDao account, final AccountModelDao savedAccount, final ChangeType changeType, final EntitySqlDaoWrapperFactory entitySqlDaoWrapperFactory, final InternalCallContext context) throws BillingExceptionBase {
    // This is only called for the create call (see update below)
    switch(changeType) {
        case INSERT:
            break;
        default:
            return;
    }
    final Long recordId = savedAccount.getRecordId();
    // We need to re-hydrate the callcontext with the account record id
    final InternalCallContext rehydratedContext = internalCallContextFactory.createInternalCallContext(savedAccount, recordId, context);
    final AccountCreationInternalEvent creationEvent = new DefaultAccountCreationEvent(new DefaultAccountData(savedAccount), savedAccount.getId(), rehydratedContext.getAccountRecordId(), rehydratedContext.getTenantRecordId(), rehydratedContext.getUserToken());
    try {
        eventBus.postFromTransaction(creationEvent, entitySqlDaoWrapperFactory.getHandle().getConnection());
    } catch (final EventBusException e) {
        log.warn("Failed to post account creation event for accountId='{}'", savedAccount.getId(), e);
    }
}
Also used : DefaultAccountCreationEvent(org.killbill.billing.account.api.user.DefaultAccountCreationEvent) EventBusException(org.killbill.bus.api.PersistentBus.EventBusException) InternalCallContext(org.killbill.billing.callcontext.InternalCallContext) DefaultAccountData(org.killbill.billing.account.api.user.DefaultAccountCreationEvent.DefaultAccountData) AccountCreationInternalEvent(org.killbill.billing.events.AccountCreationInternalEvent)

Example 3 with AccountCreationInternalEvent

use of org.killbill.billing.events.AccountCreationInternalEvent in project killbill by killbill.

the class TestDefaultAccountUserApi method testBusEvents.

@Test(groups = "slow", description = "Test Account creation generates an event")
public void testBusEvents() throws Exception {
    final AccountEventHandler eventHandler = new AccountEventHandler();
    bus.register(eventHandler);
    final AccountModelDao accountModelDao = createTestAccount();
    final AccountData defaultAccount = new DefaultAccount(accountModelDao);
    final Account account = createAccount(defaultAccount);
    await().atMost(10, SECONDS).until(new Callable<Boolean>() {

        @Override
        public Boolean call() throws Exception {
            return eventHandler.getAccountCreationInternalEvents().size() == 1;
        }
    });
    final AccountCreationInternalEvent accountCreationInternalEvent = eventHandler.getAccountCreationInternalEvents().get(0);
    Assert.assertEquals(accountCreationInternalEvent.getId(), account.getId());
    // account_record_id is most likely 1, although, depending on the DB, we cannot be sure
    Assert.assertNotNull(accountCreationInternalEvent.getSearchKey1());
    Assert.assertEquals(accountCreationInternalEvent.getSearchKey2(), internalCallContext.getTenantRecordId());
}
Also used : AccountModelDao(org.killbill.billing.account.dao.AccountModelDao) DefaultAccount(org.killbill.billing.account.api.DefaultAccount) AccountTestUtils.createTestAccount(org.killbill.billing.account.AccountTestUtils.createTestAccount) Account(org.killbill.billing.account.api.Account) DefaultAccount(org.killbill.billing.account.api.DefaultAccount) DefaultMutableAccountData(org.killbill.billing.account.api.DefaultMutableAccountData) AccountTestUtils.createAccountData(org.killbill.billing.account.AccountTestUtils.createAccountData) MutableAccountData(org.killbill.billing.account.api.MutableAccountData) AccountData(org.killbill.billing.account.api.AccountData) AccountApiException(org.killbill.billing.account.api.AccountApiException) AccountCreationInternalEvent(org.killbill.billing.events.AccountCreationInternalEvent) Test(org.testng.annotations.Test)

Example 4 with AccountCreationInternalEvent

use of org.killbill.billing.events.AccountCreationInternalEvent in project killbill by killbill.

the class TestBeatrixListener method testEventBusException.

@Test(groups = "fast", expectedExceptions = RuntimeException.class)
public void testEventBusException() throws Exception {
    AccountCreationInternalEvent event = mock(AccountCreationInternalEvent.class);
    provideCommonBusEventInfo(event);
    when(event.getBusEventType()).thenReturn(BusInternalEventType.ACCOUNT_CREATE);
    when(event.getId()).thenReturn(ACCOUNT_ID);
    doThrow(EventBusException.class).when(externalBus).post(isA(BusEvent.class));
    beatrixListener.handleAllInternalKillbillEvents(event);
}
Also used : BusEvent(org.killbill.bus.api.BusEvent) AccountCreationInternalEvent(org.killbill.billing.events.AccountCreationInternalEvent) Test(org.testng.annotations.Test)

Example 5 with AccountCreationInternalEvent

use of org.killbill.billing.events.AccountCreationInternalEvent in project killbill by killbill.

the class BeatrixListener method computeExtBusEventEntryFromBusInternalEvent.

private BusEvent computeExtBusEventEntryFromBusInternalEvent(final BusInternalEvent event, final InternalCallContext context) throws JsonProcessingException {
    ObjectType objectType = null;
    UUID objectId = null;
    ExtBusEventType eventBusType = null;
    String metaData = null;
    UUID accountId = null;
    switch(event.getBusEventType()) {
        case ACCOUNT_CREATE:
            final AccountCreationInternalEvent realEventACR = (AccountCreationInternalEvent) event;
            objectType = ObjectType.ACCOUNT;
            objectId = realEventACR.getId();
            eventBusType = ExtBusEventType.ACCOUNT_CREATION;
            break;
        case ACCOUNT_CHANGE:
            final AccountChangeInternalEvent realEventACH = (AccountChangeInternalEvent) event;
            objectType = ObjectType.ACCOUNT;
            objectId = realEventACH.getAccountId();
            eventBusType = ExtBusEventType.ACCOUNT_CHANGE;
            break;
        case SUBSCRIPTION_TRANSITION:
            final SubscriptionInternalEvent realEventST = (SubscriptionInternalEvent) event;
            objectType = ObjectType.SUBSCRIPTION;
            objectId = realEventST.getSubscriptionId();
            if (realEventST.getTransitionType() == SubscriptionBaseTransitionType.CREATE || realEventST.getTransitionType() == SubscriptionBaseTransitionType.TRANSFER) {
                eventBusType = ExtBusEventType.SUBSCRIPTION_CREATION;
            } else if (realEventST.getTransitionType() == SubscriptionBaseTransitionType.CANCEL) {
                eventBusType = ExtBusEventType.SUBSCRIPTION_CANCEL;
            } else if (realEventST.getTransitionType() == SubscriptionBaseTransitionType.PHASE) {
                eventBusType = ExtBusEventType.SUBSCRIPTION_PHASE;
            } else if (realEventST.getTransitionType() == SubscriptionBaseTransitionType.CHANGE) {
                eventBusType = ExtBusEventType.SUBSCRIPTION_CHANGE;
            } else if (realEventST.getTransitionType() == SubscriptionBaseTransitionType.UNDO_CHANGE) {
                // We map UNDO_CHANGE as a SUBSCRIPTION_CHANGE as we don't have such ext event
                eventBusType = ExtBusEventType.SUBSCRIPTION_CHANGE;
            } else if (realEventST.getTransitionType() == SubscriptionBaseTransitionType.UNCANCEL) {
                eventBusType = ExtBusEventType.SUBSCRIPTION_UNCANCEL;
            } else if (realEventST.getTransitionType() == SubscriptionBaseTransitionType.BCD_CHANGE) {
                eventBusType = ExtBusEventType.SUBSCRIPTION_BCD_CHANGE;
            }
            SubscriptionMetadata.ActionType actionType = (event instanceof EffectiveSubscriptionInternalEvent) ? ActionType.EFFECTIVE : ActionType.REQUESTED;
            final SubscriptionMetadata subscriptionMetadataObj = new SubscriptionMetadata(actionType, realEventST.getBundleExternalKey());
            metaData = objectMapper.writeValueAsString(subscriptionMetadataObj);
            break;
        case BLOCKING_STATE:
            final BlockingTransitionInternalEvent realEventBS = (BlockingTransitionInternalEvent) event;
            if (realEventBS.getBlockingType() == BlockingStateType.ACCOUNT) {
                objectType = ObjectType.ACCOUNT;
            } else if (realEventBS.getBlockingType() == BlockingStateType.SUBSCRIPTION_BUNDLE) {
                objectType = ObjectType.BUNDLE;
            } else if (realEventBS.getBlockingType() == BlockingStateType.SUBSCRIPTION) {
                objectType = ObjectType.SUBSCRIPTION;
            }
            objectId = realEventBS.getBlockableId();
            if (KILLBILL_SERVICES.ENTITLEMENT_SERVICE.getServiceName().equals(realEventBS.getService())) {
                if (DefaultEntitlementApi.ENT_STATE_START.equals(realEventBS.getStateName())) {
                    eventBusType = ExtBusEventType.ENTITLEMENT_CREATION;
                } else if (DefaultEntitlementApi.ENT_STATE_BLOCKED.equals(realEventBS.getStateName())) {
                    eventBusType = ExtBusEventType.BUNDLE_PAUSE;
                } else if (DefaultEntitlementApi.ENT_STATE_CLEAR.equals(realEventBS.getStateName())) {
                    eventBusType = ExtBusEventType.BUNDLE_RESUME;
                } else if (DefaultEntitlementApi.ENT_STATE_CANCELLED.equals(realEventBS.getStateName())) {
                    eventBusType = ExtBusEventType.ENTITLEMENT_CANCEL;
                }
            } else {
                eventBusType = ExtBusEventType.BLOCKING_STATE;
                final BlockingStateMetadata blockingStateMetadata = new BlockingStateMetadata(realEventBS.getBlockableId(), realEventBS.getService(), realEventBS.getStateName(), realEventBS.getBlockingType(), realEventBS.getEffectiveDate(), realEventBS.isTransitionedToBlockedBilling(), realEventBS.isTransitionedToUnblockedBilling(), realEventBS.isTransitionedToBlockedEntitlement(), realEventBS.isTransitionedToUnblockedEntitlement());
                metaData = objectMapper.writeValueAsString(blockingStateMetadata);
            }
            break;
        case INVOICE_CREATION:
            final InvoiceCreationInternalEvent realEventInv = (InvoiceCreationInternalEvent) event;
            objectType = ObjectType.INVOICE;
            objectId = realEventInv.getInvoiceId();
            eventBusType = ExtBusEventType.INVOICE_CREATION;
            break;
        case INVOICE_NOTIFICATION:
            final InvoiceNotificationInternalEvent realEventInvNotification = (InvoiceNotificationInternalEvent) event;
            objectType = ObjectType.INVOICE;
            objectId = null;
            // has to be set here because objectId is null with a dryRun Invoice
            accountId = realEventInvNotification.getAccountId();
            eventBusType = ExtBusEventType.INVOICE_NOTIFICATION;
            final InvoiceNotificationMetadata invoiceNotificationMetadata = new InvoiceNotificationMetadata(realEventInvNotification.getTargetDate(), realEventInvNotification.getAmountOwed(), realEventInvNotification.getCurrency());
            metaData = objectMapper.writeValueAsString(invoiceNotificationMetadata);
            break;
        case INVOICE_ADJUSTMENT:
            final InvoiceAdjustmentInternalEvent realEventInvAdj = (InvoiceAdjustmentInternalEvent) event;
            objectType = ObjectType.INVOICE;
            objectId = realEventInvAdj.getInvoiceId();
            eventBusType = ExtBusEventType.INVOICE_ADJUSTMENT;
            break;
        case INVOICE_PAYMENT_INFO:
            final InvoicePaymentInfoInternalEvent realEventInvPay = (InvoicePaymentInfoInternalEvent) event;
            objectType = ObjectType.INVOICE;
            objectId = realEventInvPay.getInvoiceId();
            eventBusType = ExtBusEventType.INVOICE_PAYMENT_SUCCESS;
            final InvoicePaymentMetadata invoicePaymentInfoMetaDataObj = new InvoicePaymentMetadata(realEventInvPay.getPaymentId(), realEventInvPay.getPaymentAttemptId(), realEventInvPay.getType(), realEventInvPay.getPaymentDate(), realEventInvPay.getAmount(), realEventInvPay.getCurrency(), realEventInvPay.getLinkedInvoicePaymentId(), realEventInvPay.getPaymentCookieId(), realEventInvPay.getProcessedCurrency());
            metaData = objectMapper.writeValueAsString(invoicePaymentInfoMetaDataObj);
            break;
        case INVOICE_PAYMENT_ERROR:
            final InvoicePaymentErrorInternalEvent realEventInvPayErr = (InvoicePaymentErrorInternalEvent) event;
            objectType = ObjectType.INVOICE;
            objectId = realEventInvPayErr.getInvoiceId();
            eventBusType = ExtBusEventType.INVOICE_PAYMENT_FAILED;
            final InvoicePaymentMetadata invoicePaymentErrorMetaDataObj = new InvoicePaymentMetadata(realEventInvPayErr.getPaymentId(), realEventInvPayErr.getPaymentAttemptId(), realEventInvPayErr.getType(), realEventInvPayErr.getPaymentDate(), realEventInvPayErr.getAmount(), realEventInvPayErr.getCurrency(), realEventInvPayErr.getLinkedInvoicePaymentId(), realEventInvPayErr.getPaymentCookieId(), realEventInvPayErr.getProcessedCurrency());
            metaData = objectMapper.writeValueAsString(invoicePaymentErrorMetaDataObj);
            break;
        case PAYMENT_INFO:
            final PaymentInfoInternalEvent realEventPay = (PaymentInfoInternalEvent) event;
            objectType = ObjectType.PAYMENT;
            objectId = realEventPay.getPaymentId();
            eventBusType = ExtBusEventType.PAYMENT_SUCCESS;
            final PaymentMetadata paymentInfoMetaDataObj = new PaymentMetadata(realEventPay.getPaymentTransactionId(), realEventPay.getAmount(), realEventPay.getCurrency(), realEventPay.getStatus(), realEventPay.getTransactionType(), realEventPay.getEffectiveDate());
            metaData = objectMapper.writeValueAsString(paymentInfoMetaDataObj);
            break;
        case PAYMENT_ERROR:
            final PaymentErrorInternalEvent realEventPayErr = (PaymentErrorInternalEvent) event;
            objectType = ObjectType.PAYMENT;
            objectId = realEventPayErr.getPaymentId();
            eventBusType = ExtBusEventType.PAYMENT_FAILED;
            accountId = realEventPayErr.getAccountId();
            final PaymentMetadata paymentErrorMetaDataObj = new PaymentMetadata(realEventPayErr.getPaymentTransactionId(), realEventPayErr.getAmount(), realEventPayErr.getCurrency(), realEventPayErr.getStatus(), realEventPayErr.getTransactionType(), realEventPayErr.getEffectiveDate());
            metaData = objectMapper.writeValueAsString(paymentErrorMetaDataObj);
            break;
        case PAYMENT_PLUGIN_ERROR:
            final PaymentPluginErrorInternalEvent realEventPayPluginErr = (PaymentPluginErrorInternalEvent) event;
            objectType = ObjectType.PAYMENT;
            objectId = realEventPayPluginErr.getPaymentId();
            eventBusType = ExtBusEventType.PAYMENT_FAILED;
            final PaymentMetadata pluginErrorMetaDataObj = new PaymentMetadata(realEventPayPluginErr.getPaymentTransactionId(), realEventPayPluginErr.getAmount(), realEventPayPluginErr.getCurrency(), realEventPayPluginErr.getStatus(), realEventPayPluginErr.getTransactionType(), realEventPayPluginErr.getEffectiveDate());
            metaData = objectMapper.writeValueAsString(pluginErrorMetaDataObj);
            break;
        case OVERDUE_CHANGE:
            final OverdueChangeInternalEvent realEventOC = (OverdueChangeInternalEvent) event;
            objectType = ObjectType.ACCOUNT;
            objectId = realEventOC.getOverdueObjectId();
            eventBusType = ExtBusEventType.OVERDUE_CHANGE;
            break;
        case USER_TAG_CREATION:
            final UserTagCreationInternalEvent realUserTagEventCr = (UserTagCreationInternalEvent) event;
            objectType = ObjectType.TAG;
            objectId = realUserTagEventCr.getTagId();
            eventBusType = ExtBusEventType.TAG_CREATION;
            metaData = realUserTagEventCr.getTagDefinition().getName();
            break;
        case CONTROL_TAG_CREATION:
            final ControlTagCreationInternalEvent realTagEventCr = (ControlTagCreationInternalEvent) event;
            objectType = ObjectType.TAG;
            objectId = realTagEventCr.getTagId();
            eventBusType = ExtBusEventType.TAG_CREATION;
            metaData = realTagEventCr.getTagDefinition().getName();
            break;
        case USER_TAG_DELETION:
            final UserTagDeletionInternalEvent realUserTagEventDel = (UserTagDeletionInternalEvent) event;
            objectType = ObjectType.TAG;
            objectId = realUserTagEventDel.getTagId();
            eventBusType = ExtBusEventType.TAG_DELETION;
            metaData = realUserTagEventDel.getTagDefinition().getName();
            break;
        case CONTROL_TAG_DELETION:
            final ControlTagDeletionInternalEvent realTagEventDel = (ControlTagDeletionInternalEvent) event;
            objectType = ObjectType.TAG;
            objectId = realTagEventDel.getTagId();
            eventBusType = ExtBusEventType.TAG_DELETION;
            metaData = realTagEventDel.getTagDefinition().getName();
            break;
        case CUSTOM_FIELD_CREATION:
            final CustomFieldCreationEvent realCustomFieldEventCr = (CustomFieldCreationEvent) event;
            objectType = ObjectType.CUSTOM_FIELD;
            objectId = realCustomFieldEventCr.getCustomFieldId();
            eventBusType = ExtBusEventType.CUSTOM_FIELD_CREATION;
            break;
        case CUSTOM_FIELD_DELETION:
            final CustomFieldDeletionEvent realCustomFieldEventDel = (CustomFieldDeletionEvent) event;
            objectType = ObjectType.CUSTOM_FIELD;
            objectId = realCustomFieldEventDel.getCustomFieldId();
            eventBusType = ExtBusEventType.CUSTOM_FIELD_DELETION;
            break;
        case TENANT_CONFIG_CHANGE:
            final TenantConfigChangeInternalEvent realTenantConfigEventChg = (TenantConfigChangeInternalEvent) event;
            objectType = ObjectType.TENANT_KVS;
            objectId = realTenantConfigEventChg.getId();
            eventBusType = ExtBusEventType.TENANT_CONFIG_CHANGE;
            metaData = realTenantConfigEventChg.getKey();
            break;
        case TENANT_CONFIG_DELETION:
            final TenantConfigDeletionInternalEvent realTenantConfigEventDel = (TenantConfigDeletionInternalEvent) event;
            objectType = ObjectType.TENANT_KVS;
            objectId = null;
            eventBusType = ExtBusEventType.TENANT_CONFIG_DELETION;
            metaData = realTenantConfigEventDel.getKey();
            break;
        case BROADCAST_SERVICE:
            final BroadcastInternalEvent realBroadcastEvent = (BroadcastInternalEvent) event;
            objectType = ObjectType.SERVICE_BROADCAST;
            objectId = null;
            eventBusType = ExtBusEventType.BROADCAST_SERVICE;
            final BroadcastMetadata broadcastMetadata = new BroadcastMetadata(realBroadcastEvent.getServiceName(), realBroadcastEvent.getType(), realBroadcastEvent.getJsonEvent());
            metaData = objectMapper.writeValueAsString(broadcastMetadata);
            break;
        default:
    }
    final TenantContext tenantContext = internalCallContextFactory.createTenantContext(context);
    // See #275
    accountId = (accountId == null) ? getAccountId(event.getBusEventType(), objectId, objectType, tenantContext) : accountId;
    return eventBusType != null ? new DefaultBusExternalEvent(objectId, objectType, eventBusType, accountId, tenantContext.getTenantId(), metaData, context.getAccountRecordId(), context.getTenantRecordId(), context.getUserToken()) : null;
}
Also used : BlockingStateMetadata(org.killbill.billing.notification.plugin.api.BlockingStateMetadata) CustomFieldDeletionEvent(org.killbill.billing.events.CustomFieldDeletionEvent) InvoicePaymentInfoInternalEvent(org.killbill.billing.events.InvoicePaymentInfoInternalEvent) PaymentInfoInternalEvent(org.killbill.billing.events.PaymentInfoInternalEvent) CustomFieldCreationEvent(org.killbill.billing.events.CustomFieldCreationEvent) TenantContext(org.killbill.billing.util.callcontext.TenantContext) PaymentMetadata(org.killbill.billing.notification.plugin.api.PaymentMetadata) InvoicePaymentMetadata(org.killbill.billing.notification.plugin.api.InvoicePaymentMetadata) EffectiveSubscriptionInternalEvent(org.killbill.billing.events.EffectiveSubscriptionInternalEvent) SubscriptionInternalEvent(org.killbill.billing.events.SubscriptionInternalEvent) BroadcastMetadata(org.killbill.billing.notification.plugin.api.BroadcastMetadata) BlockingTransitionInternalEvent(org.killbill.billing.events.BlockingTransitionInternalEvent) InvoiceNotificationMetadata(org.killbill.billing.notification.plugin.api.InvoiceNotificationMetadata) ObjectType(org.killbill.billing.ObjectType) UserTagCreationInternalEvent(org.killbill.billing.events.UserTagCreationInternalEvent) BroadcastInternalEvent(org.killbill.billing.events.BroadcastInternalEvent) UUID(java.util.UUID) InvoiceAdjustmentInternalEvent(org.killbill.billing.events.InvoiceAdjustmentInternalEvent) TenantConfigChangeInternalEvent(org.killbill.billing.events.TenantConfigChangeInternalEvent) AccountCreationInternalEvent(org.killbill.billing.events.AccountCreationInternalEvent) TenantConfigDeletionInternalEvent(org.killbill.billing.events.TenantConfigDeletionInternalEvent) ActionType(org.killbill.billing.notification.plugin.api.SubscriptionMetadata.ActionType) AccountChangeInternalEvent(org.killbill.billing.events.AccountChangeInternalEvent) InvoicePaymentInfoInternalEvent(org.killbill.billing.events.InvoicePaymentInfoInternalEvent) UserTagDeletionInternalEvent(org.killbill.billing.events.UserTagDeletionInternalEvent) EffectiveSubscriptionInternalEvent(org.killbill.billing.events.EffectiveSubscriptionInternalEvent) InvoicePaymentErrorInternalEvent(org.killbill.billing.events.InvoicePaymentErrorInternalEvent) OverdueChangeInternalEvent(org.killbill.billing.events.OverdueChangeInternalEvent) ControlTagCreationInternalEvent(org.killbill.billing.events.ControlTagCreationInternalEvent) ExtBusEventType(org.killbill.billing.notification.plugin.api.ExtBusEventType) InvoicePaymentMetadata(org.killbill.billing.notification.plugin.api.InvoicePaymentMetadata) ControlTagDeletionInternalEvent(org.killbill.billing.events.ControlTagDeletionInternalEvent) PaymentPluginErrorInternalEvent(org.killbill.billing.events.PaymentPluginErrorInternalEvent) SubscriptionMetadata(org.killbill.billing.notification.plugin.api.SubscriptionMetadata) PaymentErrorInternalEvent(org.killbill.billing.events.PaymentErrorInternalEvent) InvoicePaymentErrorInternalEvent(org.killbill.billing.events.InvoicePaymentErrorInternalEvent) InvoiceCreationInternalEvent(org.killbill.billing.events.InvoiceCreationInternalEvent) InvoiceNotificationInternalEvent(org.killbill.billing.events.InvoiceNotificationInternalEvent)

Aggregations

AccountCreationInternalEvent (org.killbill.billing.events.AccountCreationInternalEvent)5 Test (org.testng.annotations.Test)3 UUID (java.util.UUID)1 ObjectType (org.killbill.billing.ObjectType)1 AccountTestUtils.createAccountData (org.killbill.billing.account.AccountTestUtils.createAccountData)1 AccountTestUtils.createTestAccount (org.killbill.billing.account.AccountTestUtils.createTestAccount)1 Account (org.killbill.billing.account.api.Account)1 AccountApiException (org.killbill.billing.account.api.AccountApiException)1 AccountData (org.killbill.billing.account.api.AccountData)1 DefaultAccount (org.killbill.billing.account.api.DefaultAccount)1 DefaultMutableAccountData (org.killbill.billing.account.api.DefaultMutableAccountData)1 MutableAccountData (org.killbill.billing.account.api.MutableAccountData)1 DefaultAccountCreationEvent (org.killbill.billing.account.api.user.DefaultAccountCreationEvent)1 DefaultAccountData (org.killbill.billing.account.api.user.DefaultAccountCreationEvent.DefaultAccountData)1 AccountModelDao (org.killbill.billing.account.dao.AccountModelDao)1 InternalCallContext (org.killbill.billing.callcontext.InternalCallContext)1 AccountChangeInternalEvent (org.killbill.billing.events.AccountChangeInternalEvent)1 BlockingTransitionInternalEvent (org.killbill.billing.events.BlockingTransitionInternalEvent)1 BroadcastInternalEvent (org.killbill.billing.events.BroadcastInternalEvent)1 ControlTagCreationInternalEvent (org.killbill.billing.events.ControlTagCreationInternalEvent)1