package org.eclipse.emf.texo.test.model.samples.extlibrary; import java.util.ArrayList; import java.util.HashSet; import java.util.List; import java.util.Set; import javax.persistence.Basic; import javax.persistence.CascadeType; import javax.persistence.DiscriminatorColumn; import javax.persistence.Entity; import javax.persistence.JoinColumn; import javax.persistence.JoinColumns; import javax.persistence.JoinTable; import javax.persistence.ManyToMany; import javax.persistence.ManyToOne; import javax.persistence.OneToMany; import javax.persistence.OrderColumn; import org.eclipse.emf.texo.test.TexoTestObjectConverter; import org.eclipse.emf.texo.test.TexoTestQNameConverter; import org.eclipse.emf.texo.test.model.base.identifiable.Identifiable; import org.eclipse.persistence.annotations.Converter; import org.eclipse.persistence.annotations.Converters; /** * A representation of the model object '<em><b>Library</b></em>'. <!-- begin-user-doc --> <!-- end-user-doc --> * * @generated */ @Entity(name = "extlib_Library") @DiscriminatorColumn(length = 255) @Converters({ @Converter(converterClass = TexoTestObjectConverter.class, name = "TexoTestObjectConverter"), @Converter(converterClass = TexoTestQNameConverter.class, name = "TexoTestQNameConverter") }) public class Library extends Identifiable implements Addressable { /** * <!-- begin-user-doc --> <!-- end-user-doc --> * * @generated */ @Basic() private String name = null; /** * <!-- begin-user-doc --> <!-- end-user-doc --> * * @generated */ @OneToMany(cascade = { CascadeType.ALL }) private Set<Item> stock = new HashSet<Item>(); /** * <!-- begin-user-doc --> <!-- end-user-doc --> * * @generated */ @ManyToMany(cascade = { CascadeType.MERGE, CascadeType.PERSIST, CascadeType.REFRESH }) private Set<Book> books = new HashSet<Book>(); /** * <!-- begin-user-doc --> <!-- end-user-doc --> * * @generated */ @OneToMany(cascade = { CascadeType.ALL }) @OrderColumn() private List<Library> branches = new ArrayList<Library>(); /** * <!-- begin-user-doc --> <!-- end-user-doc --> * * @generated */ @ManyToOne(cascade = { CascadeType.MERGE, CascadeType.PERSIST, CascadeType.REFRESH }) @JoinColumns({ @JoinColumn() }) private Library parentBranch = null; /** * <!-- begin-user-doc --> <!-- end-user-doc --> * * @generated */ @OneToMany(cascade = { CascadeType.ALL }, orphanRemoval = true, targetEntity = LibraryPeopleFeatureGroup.class) @JoinTable() private List<LibraryPeopleFeatureGroup> people = new ArrayList<LibraryPeopleFeatureGroup>(); /** * <!-- begin-user-doc --> <!-- end-user-doc --> * * @generated */ @Basic() private String address = null; /** * Returns the value of '<em><b>name</b></em>' feature. * * <!-- begin-user-doc --> <!-- end-user-doc --> * * @return the value of '<em><b>name</b></em>' feature * @generated */ public String getName() { return name; } /** * Sets the '{@link Library#getName() <em>name</em>}' feature. * * <!-- begin-user-doc --> <!-- end-user-doc --> * * @param newName * the new value of the '{@link Library#getName() name}' feature. * @generated */ public void setName(String newName) { name = newName; } /** * Returns the value of '<em><b>writers</b></em>' feature. * * <!-- begin-user-doc --> <!-- end-user-doc --> * * @return the value of '<em><b>writers</b></em>' feature * @generated */ public List<Writer> getWriters() { return LibraryPeopleFeatureGroup .createUnmodifiableValueList(getPeople(), LibraryPeopleFeatureGroup.Feature.WRITERS); } /** * Sets the '{@link Library#getWriters() <em>writers</em>}' feature. * * <!-- begin-user-doc --> <!-- end-user-doc --> * * @param newWriters * the new value of the '{@link Library#getWriters() writers}' feature. * @generated */ public void setWriters(List<Writer> newWriters) { setPeople(LibraryPeopleFeatureGroup.createFeatureGroupList(LibraryPeopleFeatureGroup.Feature.WRITERS, newWriters)); } /** * Returns the value of '<em><b>employees</b></em>' feature. * * <!-- begin-user-doc --> <!-- end-user-doc --> * * @return the value of '<em><b>employees</b></em>' feature * @generated */ public List<Employee> getEmployees() { return LibraryPeopleFeatureGroup.createUnmodifiableValueList(getPeople(), LibraryPeopleFeatureGroup.Feature.EMPLOYEES); } /** * Sets the '{@link Library#getEmployees() <em>employees</em>}' feature. * * <!-- begin-user-doc --> <!-- end-user-doc --> * * @param newEmployees * the new value of the '{@link Library#getEmployees() employees}' feature. * @generated */ public void setEmployees(List<Employee> newEmployees) { setPeople(LibraryPeopleFeatureGroup.createFeatureGroupList(LibraryPeopleFeatureGroup.Feature.EMPLOYEES, newEmployees)); } /** * Returns the value of '<em><b>borrowers</b></em>' feature. * * <!-- begin-user-doc --> <!-- end-user-doc --> * * @return the value of '<em><b>borrowers</b></em>' feature * @generated */ public List<Borrower> getBorrowers() { return LibraryPeopleFeatureGroup.createUnmodifiableValueList(getPeople(), LibraryPeopleFeatureGroup.Feature.BORROWERS); } /** * Sets the '{@link Library#getBorrowers() <em>borrowers</em>}' feature. * * <!-- begin-user-doc --> <!-- end-user-doc --> * * @param newBorrowers * the new value of the '{@link Library#getBorrowers() borrowers}' feature. * @generated */ public void setBorrowers(List<Borrower> newBorrowers) { setPeople(LibraryPeopleFeatureGroup.createFeatureGroupList(LibraryPeopleFeatureGroup.Feature.BORROWERS, newBorrowers)); } /** * Returns the value of '<em><b>stock</b></em>' feature. * * <!-- begin-user-doc --> <!-- end-user-doc --> * * @return the value of '<em><b>stock</b></em>' feature * @generated */ public Set<Item> getStock() { return stock; } /** * Sets the '{@link Library#getStock() <em>stock</em>}' feature. * * <!-- begin-user-doc --> <!-- end-user-doc --> * * @param newStock * the new value of the '{@link Library#getStock() stock}' feature. * @generated */ public void setStock(Set<Item> newStock) { stock = newStock; } /** * Returns the value of '<em><b>books</b></em>' feature. * * <!-- begin-user-doc --> <!-- end-user-doc --> * * @return the value of '<em><b>books</b></em>' feature * @generated */ public Set<Book> getBooks() { return books; } /** * Sets the '{@link Library#getBooks() <em>books</em>}' feature. * * <!-- begin-user-doc --> <!-- end-user-doc --> * * @param newBooks * the new value of the '{@link Library#getBooks() books}' feature. * @generated */ public void setBooks(Set<Book> newBooks) { books = newBooks; } /** * Returns the value of '<em><b>branches</b></em>' feature. * * <!-- begin-user-doc --> <!-- end-user-doc --> * * @return the value of '<em><b>branches</b></em>' feature * @generated */ public List<Library> getBranches() { return branches; } /** * Sets the '{@link Library#getBranches() <em>branches</em>}' feature. * * <!-- begin-user-doc --> <!-- end-user-doc --> * * @param newBranches * the new value of the '{@link Library#getBranches() branches}' feature. * @generated */ public void setBranches(List<Library> newBranches) { branches = newBranches; } /** * Returns the value of '<em><b>parentBranch</b></em>' feature. * * <!-- begin-user-doc --> <!-- end-user-doc --> * * @return the value of '<em><b>parentBranch</b></em>' feature * @generated */ public Library getParentBranch() { return parentBranch; } /** * Sets the '{@link Library#getParentBranch() <em>parentBranch</em>}' feature. * * <!-- begin-user-doc --> <!-- end-user-doc --> * * @param newParentBranch * the new value of the '{@link Library#getParentBranch() parentBranch}' feature. * @generated */ public void setParentBranch(Library newParentBranch) { parentBranch = newParentBranch; } /** * Returns the value of '<em><b>people</b></em>' feature. * * <!-- begin-user-doc --> <!-- end-user-doc --> * * @return the value of '<em><b>people</b></em>' feature * @generated */ public List<LibraryPeopleFeatureGroup> getPeople() { return people; } /** * Sets the '{@link Library#getPeople() <em>people</em>}' feature. * * <!-- begin-user-doc --> <!-- end-user-doc --> * * @param newPeople * the new value of the '{@link Library#getPeople() people}' feature. * @generated */ public void setPeople(List<LibraryPeopleFeatureGroup> newPeople) { people = newPeople; } /** * Returns the value of '<em><b>address</b></em>' feature. * * <!-- begin-user-doc --> <!-- end-user-doc --> * * @return the value of '<em><b>address</b></em>' feature * @generated */ public String getAddress() { return address; } /** * Sets the '{@link Library#getAddress() <em>address</em>}' feature. * * <!-- begin-user-doc --> <!-- end-user-doc --> * * @param newAddress * the new value of the '{@link Library#getAddress() address}' feature. * @generated */ public void setAddress(String newAddress) { address = newAddress; } /** * A toString method which prints the values of all EAttributes of this instance. <!-- begin-user-doc --> <!-- * end-user-doc --> * * @generated */ @Override public String toString() { return "Library " + " [name: " + getName() + "]" + " [address: " + getAddress() + "]" + "{extends: " + super.toString() + "} "; } }