@Override public List<CustomField> getCustomFieldsForAccountType(final UUID accountId, final ObjectType objectType, final TenantContext context) { return withCustomFieldsTransform(customFieldDao.getCustomFieldsForAccountType(objectType, internalCallContextFactory.createInternalTenantContext(accountId, context))); }
@Test(groups = "fast") public void testPojo() throws Exception { final UUID customFieldId = UUID.randomUUID(); final UUID objectId = UUID.randomUUID(); final ObjectType objectType = ObjectType.ACCOUNT_EMAIL; final DefaultCustomFieldCreationEvent event = new DefaultCustomFieldCreationEvent(customFieldId, objectId, objectType, 1L, 2L, UUID.randomUUID()); Assert.assertEquals(event.getBusEventType(), BusInternalEventType.CUSTOM_FIELD_CREATION); Assert.assertEquals(event.getObjectId(), objectId); Assert.assertEquals(event.getObjectType(), objectType); Assert.assertEquals(event, event); Assert.assertEquals(event, new DefaultCustomFieldCreationEvent(customFieldId, objectId, objectType, 1L, 2L, UUID.randomUUID())); }
@Test(groups = "fast") public void testPojo() throws Exception { final UUID customFieldId = UUID.randomUUID(); final UUID objectId = UUID.randomUUID(); final ObjectType objectType = ObjectType.ACCOUNT_EMAIL; final UUID userToken = UUID.randomUUID(); final DefaultCustomFieldDeletionEvent event = new DefaultCustomFieldDeletionEvent(customFieldId, objectId, objectType, 1L, 2L, UUID.randomUUID()); Assert.assertEquals(event.getBusEventType(), BusInternalEventType.CUSTOM_FIELD_DELETION); Assert.assertEquals(event.getObjectId(), objectId); Assert.assertEquals(event.getObjectType(), objectType); Assert.assertEquals(event, event); Assert.assertEquals(event, new DefaultCustomFieldDeletionEvent(customFieldId, objectId, objectType, 1L, 2L, UUID.randomUUID())); }
@Override protected void postBusEventFromTransaction(final CustomFieldModelDao customField, final CustomFieldModelDao savedCustomField, final ChangeType changeType, final EntitySqlDaoWrapperFactory<EntitySqlDao> entitySqlDaoWrapperFactory, final InternalCallContext context) throws BillingExceptionBase { BusInternalEvent customFieldEvent = null; switch (changeType) { case INSERT: customFieldEvent = new DefaultCustomFieldCreationEvent(customField.getId(), customField.getObjectId(), customField.getObjectType(), context.getAccountRecordId(), context.getTenantRecordId(), context.getUserToken()); break; case DELETE: customFieldEvent = new DefaultCustomFieldDeletionEvent(customField.getId(), customField.getObjectId(), customField.getObjectType(), context.getAccountRecordId(), context.getTenantRecordId(), context.getUserToken()); break; default: return; } try { bus.postFromTransaction(customFieldEvent, entitySqlDaoWrapperFactory.getSqlDao()); } catch (PersistentBus.EventBusException e) { log.warn("Failed to post tag event for custom field " + customField.getId().toString(), e); } }
final CustomField customField = new StringCustomField(cfName, cfValue, ObjectType.ACCOUNT, accountId, callContext.getCreatedDate()); eventsListener.pushExpectedEvent(NextEvent.CUSTOM_FIELD); customFieldUserApi.addCustomFields(ImmutableList.<CustomField>of(customField), callContext); assertListenerStatus(); final List<CustomField> customFields = customFieldUserApi.getCustomFieldsForObject(accountId, ObjectType.ACCOUNT, callContext); Assert.assertEquals(customFields.size(), 1); Assert.assertEquals(customFields.get(0), customField); customFieldUserApi.removeCustomFields(customFields, callContext); List<CustomField> remainingCustomFields = customFieldUserApi.getCustomFieldsForObject(accountId, ObjectType.ACCOUNT, callContext); Assert.assertEquals(remainingCustomFields.size(), 0); customFieldUserApi.addCustomFields(ImmutableList.<CustomField>of(newCustomField), callContext); remainingCustomFields = customFieldUserApi.getCustomFieldsForObject(accountId, ObjectType.ACCOUNT, callContext); Assert.assertEquals(remainingCustomFields.size(), 1); customFieldUserApi.removeCustomFields(remainingCustomFields, callContext); remainingCustomFields = customFieldUserApi.getCustomFieldsForObject(accountId, ObjectType.ACCOUNT, callContext); Assert.assertEquals(remainingCustomFields.size(), 0);
@Test(groups = "fast") public void testSerialization() throws Exception { final ObjectMapper objectMapper = new ObjectMapper(); final UUID customFieldId = UUID.randomUUID(); final UUID objectId = UUID.randomUUID(); final ObjectType objectType = ObjectType.ACCOUNT_EMAIL; final DefaultCustomFieldCreationEvent event = new DefaultCustomFieldCreationEvent(customFieldId, objectId, objectType, 1L, 2L, UUID.randomUUID()); final String json = objectMapper.writeValueAsString(event); final DefaultCustomFieldCreationEvent fromJson = objectMapper.readValue(json, DefaultCustomFieldCreationEvent.class); Assert.assertEquals(fromJson, event); } }
@Test(groups = "fast") public void testSerialization() throws Exception { final ObjectMapper objectMapper = new ObjectMapper(); final UUID customFieldId = UUID.randomUUID(); final UUID objectId = UUID.randomUUID(); final ObjectType objectType = ObjectType.ACCOUNT_EMAIL; final UUID userToken = UUID.randomUUID(); final DefaultCustomFieldDeletionEvent event = new DefaultCustomFieldDeletionEvent(customFieldId, objectId, objectType, 1L, 2L, UUID.randomUUID()); final String json = objectMapper.writeValueAsString(event); final DefaultCustomFieldDeletionEvent fromJson = objectMapper.readValue(json, DefaultCustomFieldDeletionEvent.class); Assert.assertEquals(fromJson, event); } }
@Override public List<CustomField> getCustomFieldsForAccount(final UUID accountId, final TenantContext context) { return withCustomFieldsTransform(customFieldDao.getCustomFieldsForAccount(internalCallContextFactory.createInternalTenantContext(accountId, context))); }
@Override public List<CustomField> getCustomFieldsForObject(final UUID objectId, final ObjectType objectType, final TenantContext context) { return withCustomFieldsTransform(customFieldDao.getCustomFieldsForObject(objectId, objectType, internalCallContextFactory.createInternalTenantContext(context))); }