package cbe.inserting;
import org.apache.cayenne.access.DataContext;
import cbe.inserting.constants.ElectronicBookFormat;
import cbe.inserting.constants.PaperBookFormat;
import cbe.inserting.model.ElectronicBook;
import cbe.inserting.model.PaperBook;
/**
* Cayenne By Example - https://github.com/mrg/cbe
*
* This example shows how to use vertical inheritance.
*
* @author mrg
*/
public class VerticalInheritance
{
public static void main(String[] arguments)
{
// Create a new DataContext. This will also initialize the Cayenne
// Framework.
DataContext dataContext = DataContext.createDataContext();
ElectronicBook e1 = dataContext.newObject(ElectronicBook.class);
e1.setFormat(ElectronicBookFormat.EPUB);
e1.setIsbn("123");
e1.setSize(1100);
e1.setAuthor("Tad Williams");
e1.setTitle("City of Golden Shadow");
e1.setSeries("Otherland");
e1.setSequence(1);
ElectronicBook e2 = dataContext.newObject(ElectronicBook.class);
e2.setFormat(ElectronicBookFormat.EPUB);
e2.setIsbn("123");
e2.setSize(1000);
e2.setAuthor("Tad Williams");
e2.setTitle("River of Blue Fire");
e2.setSeries("Otherland");
e2.setSequence(2);
ElectronicBook e3 = dataContext.newObject(ElectronicBook.class);
e3.setFormat(ElectronicBookFormat.EPUB);
e3.setIsbn("123");
e3.setSize(950);
e3.setAuthor("Tad Williams");
e3.setTitle("Mountain of Black Glass");
e3.setSeries("Otherland");
e3.setSequence(3);
ElectronicBook e4 = dataContext.newObject(ElectronicBook.class);
e4.setFormat(ElectronicBookFormat.EPUB);
e4.setIsbn("123");
e4.setSize(1050);
e4.setAuthor("Tad Williams");
e4.setTitle("Sea of Silver Light");
e4.setSeries("Otherland");
e4.setSequence(4);
PaperBook p1 = dataContext.newObject(PaperBook.class);
p1.setFormat(PaperBookFormat.PAPER_COVER);
p1.setIsbn("123");
p1.setAuthor("Tad Williams");
p1.setTitle("Tailchaser's Song");
PaperBook p2 = dataContext.newObject(PaperBook.class);
p2.setFormat(PaperBookFormat.PAPER_COVER);
p2.setIsbn("123");
p2.setAuthor("Tad Williams");
p2.setTitle("The Dragonbone Chair");
p2.setSeries("Memory, Sorrow, and Thorn");
p2.setSequence(1);
PaperBook p3 = dataContext.newObject(PaperBook.class);
p3.setFormat(PaperBookFormat.PAPER_COVER);
p3.setIsbn("123");
p3.setAuthor("Tad Williams");
p3.setTitle("Stone of Farewell");
p3.setSeries("Memory, Sorrow, and Thorn");
p3.setSequence(2);
PaperBook p4 = dataContext.newObject(PaperBook.class);
p4.setFormat(PaperBookFormat.PAPER_COVER);
p4.setIsbn("123");
p4.setAuthor("Tad Williams");
p4.setTitle("To Green Angel Tower");
p4.setSeries("Memory, Sorrow, and Thorn");
p4.setSequence(3);
// Commit the changes to the database.
dataContext.commitChanges();
}
}