package org.greenrobot.greendao.test.entityannotation; import org.greenrobot.greendao.DaoException; import org.greenrobot.greendao.annotation.Entity; import org.greenrobot.greendao.annotation.Generated; import org.greenrobot.greendao.annotation.Id; import org.greenrobot.greendao.annotation.JoinProperty; import org.greenrobot.greendao.annotation.NotNull; import org.greenrobot.greendao.annotation.OrderBy; import org.greenrobot.greendao.annotation.ToMany; import org.greenrobot.greendao.annotation.Unique; import java.util.List; /** * Entity mapped to table "CUSTOMER". */ @Entity(active = true) public class Customer { @Id(autoincrement = true) private Long id; @NotNull @Unique private String name; /** Used to resolve relations */ @Generated(hash = 2040040024) private transient DaoSession daoSession; /** Used for active entity operations. */ @Generated(hash = 1697251196) private transient CustomerDao myDao; @ToMany(joinProperties = { @JoinProperty(name = "id", referencedName = "customerId") }) @OrderBy("date ASC") private List<Order> orders; @Generated(hash = 60841032) public Customer() { } public Customer(Long id) { this.id = id; } @Generated(hash = 969486800) public Customer(Long id, @NotNull String name) { this.id = id; this.name = name; } public Long getId() { return id; } public void setId(Long id) { this.id = id; } @NotNull public String getName() { return name; } /** Not-null value; ensure this value is available before it is saved to the database. */ public void setName(@NotNull String name) { this.name = name; } /** * To-many relationship, resolved on first access (and after reset). * Changes to to-many relations are not persisted, make changes to the target entity. */ @Generated(hash = 1084217201) public List<Order> getOrders() { if (orders == null) { final DaoSession daoSession = this.daoSession; if (daoSession == null) { throw new DaoException("Entity is detached from DAO context"); } OrderDao targetDao = daoSession.getOrderDao(); List<Order> ordersNew = targetDao._queryCustomer_Orders(id); synchronized (this) { if (orders == null) { orders = ordersNew; } } } return orders; } /** Resets a to-many relationship, making the next get call to query for a fresh result. */ @Generated(hash = 1446109810) public synchronized void resetOrders() { orders = null; } /** * Convenient call for {@link org.greenrobot.greendao.AbstractDao#delete(Object)}. * Entity must attached to an entity context. */ @Generated(hash = 128553479) public void delete() { if (myDao == null) { throw new DaoException("Entity is detached from DAO context"); } myDao.delete(this); } /** * Convenient call for {@link org.greenrobot.greendao.AbstractDao#update(Object)}. * Entity must attached to an entity context. */ @Generated(hash = 713229351) public void update() { if (myDao == null) { throw new DaoException("Entity is detached from DAO context"); } myDao.update(this); } /** * Convenient call for {@link org.greenrobot.greendao.AbstractDao#refresh(Object)}. * Entity must attached to an entity context. */ @Generated(hash = 1942392019) public void refresh() { if (myDao == null) { throw new DaoException("Entity is detached from DAO context"); } myDao.refresh(this); } /** called by internal mechanisms, do not call yourself. */ @Generated(hash = 462117449) public void __setDaoSession(DaoSession daoSession) { this.daoSession = daoSession; myDao = daoSession != null ? daoSession.getCustomerDao() : null; } }