blob: 34cdbc53eb11425dc4d58435d19e971537f47424 [file] [log] [blame]
/*
* Copyright (c) 1998, 2020 Oracle and/or its affiliates. All rights reserved.
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License v. 2.0 which is available at
* http://www.eclipse.org/legal/epl-2.0,
* or the Eclipse Distribution License v. 1.0 which is available at
* http://www.eclipse.org/org/documents/edl-v10.php.
*
* SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
*/
// Contributors:
// Oracle - initial API and implementation from Oracle TopLink
package org.eclipse.persistence.testing.models.jpa.relationships;
import java.util.ArrayList;
import java.util.List;
import org.eclipse.persistence.sessions.Session;
import org.eclipse.persistence.sessions.UnitOfWork;
public class RelationshipsExamples {
public void buildExamples(Session session) {
List allObjects = new ArrayList();
Order orderExample1 = orderExample1();
Customer customerExample1 = customerExample1();
Customer customerExample2 = customerExample2();
SalesPerson salesPerson1 = salesPersonExample1();
ServiceCall call = new ServiceCall();
call.setDescription("Trade from Habs.");
CustomerServiceRepresentative rep = new CustomerServiceRepresentative();
rep.setName("Brian");
customerExample1.addCSInteraction(call, rep);
ServiceCall call2 = new ServiceCall();
call.setDescription("Trade from Leafs.");
CustomerServiceRepresentative rep2 = new CustomerServiceRepresentative();
rep.setName("Darrel");
customerExample1.addCSInteraction(call2, rep2);
customerExample1.addCCustomer(customerExample2);
customerExample1.addCCustomer2(customerExample2);
/*
* Set relationships: Order1 has customer1 as the billed customer Order1
* has customer2 as the customer OrdersList contains Order1 and is set
* as customer2's orders SalesPerson1 is set as salesPerson to Order1
*/
orderExample1.setBilledCustomer(customerExample1);
orderExample1.setCustomer(customerExample2);
List ordersList = new ArrayList();
ordersList.add(orderExample1);
customerExample2.setOrders(ordersList);
orderExample1.setSalesPerson(salesPerson1);
Order orderExample2 = orderExample2();
Customer customerExample3 = customerExample3();
Customer customerExample4 = customerExample4();
SalesPerson salesPerson2 = salesPersonExample2();
/*
* Set relationships: Order2 has customer3 as the billed customer Order2
* has customer4 as the customer Order2 is added to the OrdersList and
* is set as customer2's orders SalesPerson2 is set as salesPerson to
* Order2
*/
orderExample2.setBilledCustomer(customerExample3);
orderExample2.setCustomer(customerExample4);
ordersList.add(orderExample2);
customerExample4.setOrders(ordersList);
orderExample2.setSalesPerson(salesPerson2);
allObjects.add(customerExample1);
allObjects.add(customerExample2);
allObjects.add(orderExample1);
allObjects.add(customerExample3);
allObjects.add(customerExample4);
allObjects.add(orderExample2);
allObjects.add(itemExample1());
allObjects.add(itemExample2());
allObjects.add(itemExample3());
allObjects.add(itemExample4());
allObjects.add(orderExample3());
allObjects.add(orderExample4());
allObjects.add(salesPerson1);
allObjects.add(salesPerson2);
allObjects.add(call);
allObjects.add(call2);
allObjects.add(rep);
allObjects.add(rep2);
UnitOfWork unitOfWork = session.acquireUnitOfWork();
unitOfWork.registerAllObjects(allObjects);
unitOfWork.commit();
}
public static Customer customerExample1() {
Customer customer1 = new Customer();
customer1.setName("John Smith");
customer1.setCity("Ottawa");
return customer1;
}
public static Customer customerExample2() {
Customer customer2 = new Customer();
customer2.setName("Jane Smith");
customer2.setCity("Orleans");
return customer2;
}
public static Customer customerExample3() {
Customer customer3 = new Customer();
customer3.setName("Karen McDonald");
customer3.setCity("Nepean");
return customer3;
}
public static Customer customerExample4() {
Customer customer4 = new Customer();
customer4.setName("Robert Sampson");
customer4.setCity("Manotick");
return customer4;
}
public static Item itemExample1() {
Item item = new Item();
item.setName("item1");
item.setDescription("Item1 description");
return item;
}
public static Item itemExample2() {
Item item = new Item();
item.setName("item2");
item.setDescription("Item2 description");
return item;
}
public static Item itemExample3() {
Item item = new Item();
item.setName("item3");
item.setDescription("Item3 description");
return item;
}
public static Item itemExample4() {
Item item = new Item();
item.setName("item4");
item.setDescription("Item4 description");
return item;
}
public static Order orderExample1() {
Order order = new Order();
order.setQuantity(70);
order.setShippingAddress("100 Argyle Street");
return order;
}
public static Order orderExample2() {
Order order = new Order();
order.setQuantity(680);
order.setShippingAddress("500 Oracle Parkway");
return order;
}
public static Order orderExample3() {
Order order = new Order();
order.setQuantity(22);
order.setShippingAddress("240 Queen Street");
return order;
}
public static Order orderExample4() {
Order order = new Order();
order.setQuantity(1);
order.setShippingAddress("50 O'Connor");
return order;
}
public static SalesPerson salesPersonExample1() {
SalesPerson salesPerson = new SalesPerson();
salesPerson.setName("Sales Person 1");
return salesPerson;
}
public static SalesPerson salesPersonExample2() {
SalesPerson salesPerson = new SalesPerson();
salesPerson.setName("Sales Person 2");
return salesPerson;
}
}