@Override public <G extends CustomerPhone> CreateResponse<G> createOrRetrieveCopyInstance(MultiTenantCopyContext context) throws CloneNotSupportedException { CreateResponse<G> createResponse = context.createOrRetrieveCopyInstance(this); if (createResponse.isAlreadyPopulated()) { return createResponse; } CustomerPhone cloned = createResponse.getClone(); // dont clone cloned.setCustomer(customer); cloned.setPhoneName(phoneName); cloned.setPhone(phone); return createResponse; } }
@Test(groups = "createCustomerPhone", dataProvider = "setupCustomerPhone", dataProviderClass = CustomerPhoneDataProvider.class, dependsOnGroups = "readCustomer") @Transactional @Rollback(false) public void createCustomerPhone(CustomerPhone customerPhone) { userName = "customer1"; Customer customer = customerService.readCustomerByUsername(userName); assert customerPhone.getId() == null; customerPhone.setCustomer(customer); Phone phone = new PhoneImpl(); phone.setPhoneNumber("214-214-2134"); customerPhone.setPhone(phone); customerPhone = customerPhoneService.saveCustomerPhone(customerPhone); assert customer.equals(customerPhone.getCustomer()); userId = customerPhone.getCustomer().getId(); }
@DataProvider(name = "setupCustomerPhone") public static Object[][] createCustomerPhone() { CustomerPhone cp1 = new CustomerPhoneImpl(); Phone phone1 = new PhoneImpl(); phone1.setPhoneNumber("111-111-1111"); cp1.setPhone(phone1); cp1.setPhoneName("phone1"); CustomerPhone cp2 = new CustomerPhoneImpl(); Phone phone2 = new PhoneImpl(); phone1.setPhoneNumber("222-222-2222"); cp2.setPhone(phone2); cp2.setPhoneName("phone2"); return new Object[][] { new Object[] { cp1 }, new Object[] { cp2 } }; } }
customerPhone.setCustomer(customerState.getCustomer(request)); customerPhone.setPhoneName(phoneNameForm.getPhoneName()); customerPhone.setPhone(phoneNameForm.getPhone());
customerPhone.setCustomer(customerState.getCustomer(request)); customerPhone.setPhoneName(phoneNameForm.getPhoneName()); customerPhone.setPhone(phoneNameForm.getPhone());