Commit 38151724 by Juho Juopperi

optimistic locking

1 parent 4f48dd5f
Showing with 172 additions and 98 deletions
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package fi.insomnia.bortal.model; package fi.insomnia.bortal.model;
import java.math.BigDecimal; import java.math.BigDecimal;
...@@ -22,6 +17,9 @@ import javax.persistence.Table; ...@@ -22,6 +17,9 @@ import javax.persistence.Table;
import javax.persistence.Temporal; import javax.persistence.Temporal;
import javax.persistence.TemporalType; import javax.persistence.TemporalType;
import org.eclipse.persistence.annotations.OptimisticLocking;
import org.eclipse.persistence.annotations.OptimisticLockingType;
/** /**
* Account event contains the money / credit traffic for the user. Each row * Account event contains the money / credit traffic for the user. Each row
* references a Product entity. * references a Product entity.
...@@ -29,6 +27,7 @@ import javax.persistence.TemporalType; ...@@ -29,6 +27,7 @@ import javax.persistence.TemporalType;
@Entity @Entity
@Table(name = "account_events") @Table(name = "account_events")
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
// @NamedQueries({ // @NamedQueries({
// @NamedQuery(name = "AccountEvent.findAll", query = // @NamedQuery(name = "AccountEvent.findAll", query =
// "SELECT a FROM AccountEvent a"), // "SELECT a FROM AccountEvent a"),
......
...@@ -11,28 +11,31 @@ import javax.persistence.Table; ...@@ -11,28 +11,31 @@ import javax.persistence.Table;
import javax.persistence.Temporal; import javax.persistence.Temporal;
import javax.persistence.TemporalType; import javax.persistence.TemporalType;
import org.eclipse.persistence.annotations.OptimisticLocking;
import org.eclipse.persistence.annotations.OptimisticLockingType;
import fi.insomnia.bortal.enums.ActionLogMessageState; import fi.insomnia.bortal.enums.ActionLogMessageState;
@Entity @Entity
@Table(name="actionlog_messages") @Table(name = "actionlog_messages")
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
public class ActionLogMessage extends GenericEntity { public class ActionLogMessage extends GenericEntity {
private static final long serialVersionUID = -2902547412412000488L; private static final long serialVersionUID = -2902547412412000488L;
@Column(name="time", nullable=false) @Column(name = "time", nullable = false)
@Temporal(TemporalType.TIMESTAMP) @Temporal(TemporalType.TIMESTAMP)
private Date time = new Date(); private Date time = new Date();
@JoinColumn(name = "user_id")
@JoinColumn(name="user_id")
private User user; private User user;
@JoinColumn(name="crew", nullable=false) @JoinColumn(name = "crew", nullable = false)
private Role crew; private Role crew;
@Column(name="message", nullable=false) @Column(name = "message", nullable = false)
private String message; private String message;
@Column(name="state", nullable=true) @Column(name = "state", nullable = true)
@Enumerated(EnumType.STRING) @Enumerated(EnumType.STRING)
private ActionLogMessageState state; private ActionLogMessageState state;
...@@ -76,5 +79,4 @@ public class ActionLogMessage extends GenericEntity { ...@@ -76,5 +79,4 @@ public class ActionLogMessage extends GenericEntity {
this.state = state; this.state = state;
} }
} }
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package fi.insomnia.bortal.model; package fi.insomnia.bortal.model;
import javax.persistence.Column; import javax.persistence.Column;
...@@ -12,15 +8,15 @@ import javax.persistence.Table; ...@@ -12,15 +8,15 @@ import javax.persistence.Table;
import javax.persistence.Transient; import javax.persistence.Transient;
import javax.persistence.UniqueConstraint; import javax.persistence.UniqueConstraint;
import org.eclipse.persistence.annotations.OptimisticLocking;
import org.eclipse.persistence.annotations.OptimisticLockingType;
import fi.insomnia.bortal.enums.BortalApplication; import fi.insomnia.bortal.enums.BortalApplication;
import fi.insomnia.bortal.enums.apps.IAppPermission; import fi.insomnia.bortal.enums.apps.IAppPermission;
/**
*
* @author jkj
*/
@Entity @Entity
@Table(name = "application_permissions", uniqueConstraints = { @UniqueConstraint(columnNames = { ApplicationPermission.ROLE_ID_COLUMN, ApplicationPermission.APPLICATION_COLUMN, ApplicationPermission.PERMISSION_COLUMN }) }) @Table(name = "application_permissions", uniqueConstraints = { @UniqueConstraint(columnNames = { ApplicationPermission.ROLE_ID_COLUMN, ApplicationPermission.APPLICATION_COLUMN, ApplicationPermission.PERMISSION_COLUMN }) })
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
public class ApplicationPermission extends GenericEntity { public class ApplicationPermission extends GenericEntity {
protected static final String APPLICATION_PERMISSION_CONVERTER = "application_permission_perm_typeconverter"; protected static final String APPLICATION_PERMISSION_CONVERTER = "application_permission_perm_typeconverter";
......
...@@ -28,6 +28,8 @@ import javax.persistence.Temporal; ...@@ -28,6 +28,8 @@ import javax.persistence.Temporal;
import javax.persistence.TemporalType; import javax.persistence.TemporalType;
import javax.persistence.UniqueConstraint; import javax.persistence.UniqueConstraint;
import org.eclipse.persistence.annotations.OptimisticLocking;
import org.eclipse.persistence.annotations.OptimisticLockingType;
import org.eclipse.persistence.annotations.PrivateOwned; import org.eclipse.persistence.annotations.PrivateOwned;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
...@@ -47,6 +49,7 @@ import org.slf4j.LoggerFactory; ...@@ -47,6 +49,7 @@ import org.slf4j.LoggerFactory;
@NamedQuery(name = "Bill.findByPaidDate", query = "SELECT b FROM Bill b WHERE b.paidDate = :paidDate"), @NamedQuery(name = "Bill.findByPaidDate", query = "SELECT b FROM Bill b WHERE b.paidDate = :paidDate"),
@NamedQuery(name = "Bill.findByNotes", query = "SELECT b FROM Bill b WHERE b.notes = :notes"), @NamedQuery(name = "Bill.findByNotes", query = "SELECT b FROM Bill b WHERE b.notes = :notes"),
@NamedQuery(name = "Bill.findbiggestBillNumber", query = "SELECT max(b.billNumber) from Bill b where b.event = :event") }) @NamedQuery(name = "Bill.findbiggestBillNumber", query = "SELECT max(b.billNumber) from Bill b where b.event = :event") })
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
public class Bill extends GenericEventChild { public class Bill extends GenericEventChild {
/** /**
......
...@@ -19,6 +19,9 @@ import javax.persistence.OneToOne; ...@@ -19,6 +19,9 @@ import javax.persistence.OneToOne;
import javax.persistence.OrderBy; import javax.persistence.OrderBy;
import javax.persistence.Table; import javax.persistence.Table;
import org.eclipse.persistence.annotations.OptimisticLocking;
import org.eclipse.persistence.annotations.OptimisticLockingType;
/** /**
* *
*/ */
...@@ -31,6 +34,7 @@ import javax.persistence.Table; ...@@ -31,6 +34,7 @@ import javax.persistence.Table;
@NamedQuery(name = "BillLine.findByQuantity", query = "SELECT b FROM BillLine b WHERE b.quantity = :quantity"), @NamedQuery(name = "BillLine.findByQuantity", query = "SELECT b FROM BillLine b WHERE b.quantity = :quantity"),
@NamedQuery(name = "BillLine.findByUnitPrice", query = "SELECT b FROM BillLine b WHERE b.unitPrice = :unitPrice"), @NamedQuery(name = "BillLine.findByUnitPrice", query = "SELECT b FROM BillLine b WHERE b.unitPrice = :unitPrice"),
@NamedQuery(name = "BillLine.findByVat", query = "SELECT b FROM BillLine b WHERE b.vat = :vat") }) @NamedQuery(name = "BillLine.findByVat", query = "SELECT b FROM BillLine b WHERE b.vat = :vat") })
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
public class BillLine extends GenericEventChild { public class BillLine extends GenericEventChild {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
private static final BigDecimal DEFAULT_VAT = BigDecimal.ZERO; private static final BigDecimal DEFAULT_VAT = BigDecimal.ZERO;
......
...@@ -17,6 +17,9 @@ import javax.persistence.NamedQuery; ...@@ -17,6 +17,9 @@ import javax.persistence.NamedQuery;
import javax.persistence.OneToMany; import javax.persistence.OneToMany;
import javax.persistence.Table; import javax.persistence.Table;
import org.eclipse.persistence.annotations.OptimisticLocking;
import org.eclipse.persistence.annotations.OptimisticLockingType;
/** /**
* ID-card templates for the event. * ID-card templates for the event.
*/ */
...@@ -25,6 +28,7 @@ import javax.persistence.Table; ...@@ -25,6 +28,7 @@ import javax.persistence.Table;
@NamedQueries({ @NamedQueries({
@NamedQuery(name = "CardTemplate.findAll", query = "SELECT c FROM CardTemplate c"), @NamedQuery(name = "CardTemplate.findAll", query = "SELECT c FROM CardTemplate c"),
@NamedQuery(name = "CardTemplate.findByName", query = "SELECT c FROM CardTemplate c WHERE c.name = :name") }) @NamedQuery(name = "CardTemplate.findByName", query = "SELECT c FROM CardTemplate c WHERE c.name = :name") })
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
public class CardTemplate extends GenericEntity { public class CardTemplate extends GenericEntity {
private static final long serialVersionUID = -5754760238181167610L; private static final long serialVersionUID = -5754760238181167610L;
......
...@@ -19,6 +19,9 @@ import javax.persistence.Table; ...@@ -19,6 +19,9 @@ import javax.persistence.Table;
import javax.persistence.Temporal; import javax.persistence.Temporal;
import javax.persistence.TemporalType; import javax.persistence.TemporalType;
import org.eclipse.persistence.annotations.OptimisticLocking;
import org.eclipse.persistence.annotations.OptimisticLockingType;
/** /**
* Competition to be held at the event. * Competition to be held at the event.
*/ */
...@@ -34,6 +37,7 @@ import javax.persistence.TemporalType; ...@@ -34,6 +37,7 @@ import javax.persistence.TemporalType;
@NamedQuery(name = "Compo.findBySubmitEnd", query = "SELECT c FROM Compo c WHERE c.submitEnd = :submitEnd"), @NamedQuery(name = "Compo.findBySubmitEnd", query = "SELECT c FROM Compo c WHERE c.submitEnd = :submitEnd"),
@NamedQuery(name = "Compo.findByHoldVoting", query = "SELECT c FROM Compo c WHERE c.holdVoting = :holdVoting"), @NamedQuery(name = "Compo.findByHoldVoting", query = "SELECT c FROM Compo c WHERE c.holdVoting = :holdVoting"),
@NamedQuery(name = "Compo.findByDescription", query = "SELECT c FROM Compo c WHERE c.description = :description") }) @NamedQuery(name = "Compo.findByDescription", query = "SELECT c FROM Compo c WHERE c.description = :description") })
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
public class Compo extends GenericEventChild { public class Compo extends GenericEventChild {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
......
...@@ -23,6 +23,8 @@ import javax.persistence.Table; ...@@ -23,6 +23,8 @@ import javax.persistence.Table;
import javax.persistence.Temporal; import javax.persistence.Temporal;
import javax.persistence.TemporalType; import javax.persistence.TemporalType;
import org.eclipse.persistence.annotations.OptimisticLocking;
import org.eclipse.persistence.annotations.OptimisticLockingType;
import org.eclipse.persistence.annotations.PrivateOwned; import org.eclipse.persistence.annotations.PrivateOwned;
/** /**
...@@ -37,6 +39,7 @@ import org.eclipse.persistence.annotations.PrivateOwned; ...@@ -37,6 +39,7 @@ import org.eclipse.persistence.annotations.PrivateOwned;
@NamedQuery(name = "CompoEntry.findByNotes", query = "SELECT c FROM CompoEntry c WHERE c.notes = :notes"), @NamedQuery(name = "CompoEntry.findByNotes", query = "SELECT c FROM CompoEntry c WHERE c.notes = :notes"),
@NamedQuery(name = "CompoEntry.findByScreenMessage", query = "SELECT c FROM CompoEntry c WHERE c.screenMessage = :screenMessage"), @NamedQuery(name = "CompoEntry.findByScreenMessage", query = "SELECT c FROM CompoEntry c WHERE c.screenMessage = :screenMessage"),
@NamedQuery(name = "CompoEntry.findBySort", query = "SELECT c FROM CompoEntry c WHERE c.sort = :sort") }) @NamedQuery(name = "CompoEntry.findBySort", query = "SELECT c FROM CompoEntry c WHERE c.sort = :sort") })
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
public class CompoEntry extends GenericEventChild { public class CompoEntry extends GenericEventChild {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
......
...@@ -19,6 +19,9 @@ import javax.persistence.Table; ...@@ -19,6 +19,9 @@ import javax.persistence.Table;
import javax.persistence.Temporal; import javax.persistence.Temporal;
import javax.persistence.TemporalType; import javax.persistence.TemporalType;
import org.eclipse.persistence.annotations.OptimisticLocking;
import org.eclipse.persistence.annotations.OptimisticLockingType;
/** /**
* *
*/ */
...@@ -31,6 +34,7 @@ import javax.persistence.TemporalType; ...@@ -31,6 +34,7 @@ import javax.persistence.TemporalType;
@NamedQuery(name = "CompoEntryFile.findByDescription", query = "SELECT c FROM CompoEntryFile c WHERE c.description = :description"), @NamedQuery(name = "CompoEntryFile.findByDescription", query = "SELECT c FROM CompoEntryFile c WHERE c.description = :description"),
@NamedQuery(name = "CompoEntryFile.findByHash", query = "SELECT c FROM CompoEntryFile c WHERE c.hash = :hash"), @NamedQuery(name = "CompoEntryFile.findByHash", query = "SELECT c FROM CompoEntryFile c WHERE c.hash = :hash"),
@NamedQuery(name = "CompoEntryFile.findByUploaded", query = "SELECT c FROM CompoEntryFile c WHERE c.uploaded = :uploaded") }) @NamedQuery(name = "CompoEntryFile.findByUploaded", query = "SELECT c FROM CompoEntryFile c WHERE c.uploaded = :uploaded") })
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
public class CompoEntryFile extends GenericEventChild { public class CompoEntryFile extends GenericEventChild {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
@Column(name = "mime_type") @Column(name = "mime_type")
......
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package fi.insomnia.bortal.model; package fi.insomnia.bortal.model;
import java.util.Calendar; import java.util.Calendar;
...@@ -18,6 +13,9 @@ import javax.persistence.Table; ...@@ -18,6 +13,9 @@ import javax.persistence.Table;
import javax.persistence.Temporal; import javax.persistence.Temporal;
import javax.persistence.TemporalType; import javax.persistence.TemporalType;
import org.eclipse.persistence.annotations.OptimisticLocking;
import org.eclipse.persistence.annotations.OptimisticLockingType;
/** /**
* *
*/ */
...@@ -27,6 +25,7 @@ import javax.persistence.TemporalType; ...@@ -27,6 +25,7 @@ import javax.persistence.TemporalType;
@NamedQuery(name = "CompoEntryParticipant.findAll", query = "SELECT c FROM CompoEntryParticipant c"), @NamedQuery(name = "CompoEntryParticipant.findAll", query = "SELECT c FROM CompoEntryParticipant c"),
@NamedQuery(name = "CompoEntryParticipant.findByRole", query = "SELECT c FROM CompoEntryParticipant c WHERE c.role = :role") }) @NamedQuery(name = "CompoEntryParticipant.findByRole", query = "SELECT c FROM CompoEntryParticipant c WHERE c.role = :role") })
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
public class CompoEntryParticipant extends GenericEventChild { public class CompoEntryParticipant extends GenericEventChild {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
......
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package fi.insomnia.bortal.model; package fi.insomnia.bortal.model;
import java.math.BigDecimal; import java.math.BigDecimal;
......
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package fi.insomnia.bortal.model; package fi.insomnia.bortal.model;
import javax.persistence.Entity; import javax.persistence.Entity;
...@@ -12,12 +8,16 @@ import javax.persistence.NamedQueries; ...@@ -12,12 +8,16 @@ import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery; import javax.persistence.NamedQuery;
import javax.persistence.Table; import javax.persistence.Table;
import org.eclipse.persistence.annotations.OptimisticLocking;
import org.eclipse.persistence.annotations.OptimisticLockingType;
/** /**
* *
*/ */
@Entity @Entity
@Table(name = "discount_instances") @Table(name = "discount_instances")
@NamedQueries({ @NamedQuery(name = "DiscountInstance.findAll", query = "SELECT d FROM DiscountInstance d") }) @NamedQueries({ @NamedQuery(name = "DiscountInstance.findAll", query = "SELECT d FROM DiscountInstance d") })
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
public class DiscountInstance extends GenericEventChild { public class DiscountInstance extends GenericEventChild {
/** /**
......
...@@ -6,7 +6,11 @@ import java.util.Random; ...@@ -6,7 +6,11 @@ import java.util.Random;
import javax.persistence.MappedSuperclass; import javax.persistence.MappedSuperclass;
import javax.persistence.Transient; import javax.persistence.Transient;
import org.eclipse.persistence.annotations.OptimisticLocking;
import org.eclipse.persistence.annotations.OptimisticLockingType;
@MappedSuperclass @MappedSuperclass
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
public abstract class EntityEquals { public abstract class EntityEquals {
@Override @Override
......
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package fi.insomnia.bortal.model; package fi.insomnia.bortal.model;
import java.util.ArrayList; import java.util.ArrayList;
...@@ -16,6 +12,9 @@ import javax.persistence.OneToMany; ...@@ -16,6 +12,9 @@ import javax.persistence.OneToMany;
import javax.persistence.OrderBy; import javax.persistence.OrderBy;
import javax.persistence.Table; import javax.persistence.Table;
import org.eclipse.persistence.annotations.OptimisticLocking;
import org.eclipse.persistence.annotations.OptimisticLockingType;
/** /**
* *
*/ */
...@@ -25,6 +24,7 @@ import javax.persistence.Table; ...@@ -25,6 +24,7 @@ import javax.persistence.Table;
// @NamedQuery(name = "EventMap.findAll", query = "SELECT e FROM EventMap e"), // @NamedQuery(name = "EventMap.findAll", query = "SELECT e FROM EventMap e"),
// @NamedQuery(name = "EventMap.findByName", query = // @NamedQuery(name = "EventMap.findByName", query =
// "SELECT e FROM EventMap e WHERE e.name = :name") }) // "SELECT e FROM EventMap e WHERE e.name = :name") })
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
public class EventMap extends GenericEntity { public class EventMap extends GenericEntity {
/** /**
......
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package fi.insomnia.bortal.model; package fi.insomnia.bortal.model;
import java.util.List; import java.util.List;
...@@ -15,11 +11,15 @@ import javax.persistence.OneToMany; ...@@ -15,11 +11,15 @@ import javax.persistence.OneToMany;
import javax.persistence.OrderBy; import javax.persistence.OrderBy;
import javax.persistence.Table; import javax.persistence.Table;
import org.eclipse.persistence.annotations.OptimisticLocking;
import org.eclipse.persistence.annotations.OptimisticLockingType;
/** /**
* *
*/ */
@Entity @Entity
@Table(name = "event_organiser") @Table(name = "event_organiser")
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
public class EventOrganiser extends GenericEntity { public class EventOrganiser extends GenericEntity {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
......
...@@ -14,6 +14,9 @@ import javax.persistence.Enumerated; ...@@ -14,6 +14,9 @@ import javax.persistence.Enumerated;
import javax.persistence.OneToMany; import javax.persistence.OneToMany;
import javax.persistence.Table; import javax.persistence.Table;
import org.eclipse.persistence.annotations.OptimisticLocking;
import org.eclipse.persistence.annotations.OptimisticLockingType;
import fi.insomnia.bortal.enums.EventStatusEnum; import fi.insomnia.bortal.enums.EventStatusEnum;
/** /**
...@@ -27,6 +30,7 @@ import fi.insomnia.bortal.enums.EventStatusEnum; ...@@ -27,6 +30,7 @@ import fi.insomnia.bortal.enums.EventStatusEnum;
// "SELECT e FROM EventStatus e"), // "SELECT e FROM EventStatus e"),
// @NamedQuery(name = "EventStatus.findByStatusName", query = // @NamedQuery(name = "EventStatus.findByStatusName", query =
// "SELECT e FROM EventStatus e WHERE e.name = :name") }) // "SELECT e FROM EventStatus e WHERE e.name = :name") })
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
public class EventStatus extends GenericEntity { public class EventStatus extends GenericEntity {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
......
...@@ -20,6 +20,9 @@ import javax.persistence.Table; ...@@ -20,6 +20,9 @@ import javax.persistence.Table;
import javax.persistence.Temporal; import javax.persistence.Temporal;
import javax.persistence.TemporalType; import javax.persistence.TemporalType;
import org.eclipse.persistence.annotations.OptimisticLocking;
import org.eclipse.persistence.annotations.OptimisticLockingType;
/** /**
* *
*/ */
...@@ -32,6 +35,7 @@ import javax.persistence.TemporalType; ...@@ -32,6 +35,7 @@ import javax.persistence.TemporalType;
@NamedQuery(name = "FoodWave.findByDescription", query = "SELECT f FROM FoodWave f WHERE f.description = :description"), @NamedQuery(name = "FoodWave.findByDescription", query = "SELECT f FROM FoodWave f WHERE f.description = :description"),
@NamedQuery(name = "FoodWave.findByTime", query = "SELECT f FROM FoodWave f WHERE f.time = :time"), @NamedQuery(name = "FoodWave.findByTime", query = "SELECT f FROM FoodWave f WHERE f.time = :time"),
@NamedQuery(name = "FoodWave.findByClosed", query = "SELECT f FROM FoodWave f WHERE f.closed = :closed") }) @NamedQuery(name = "FoodWave.findByClosed", query = "SELECT f FROM FoodWave f WHERE f.closed = :closed") })
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
public class FoodWave extends GenericEventChild { public class FoodWave extends GenericEventChild {
/** /**
......
...@@ -15,6 +15,9 @@ import javax.persistence.NamedQuery; ...@@ -15,6 +15,9 @@ import javax.persistence.NamedQuery;
import javax.persistence.OneToMany; import javax.persistence.OneToMany;
import javax.persistence.Table; import javax.persistence.Table;
import org.eclipse.persistence.annotations.OptimisticLocking;
import org.eclipse.persistence.annotations.OptimisticLockingType;
/** /**
* *
*/ */
...@@ -25,6 +28,7 @@ import javax.persistence.Table; ...@@ -25,6 +28,7 @@ import javax.persistence.Table;
@NamedQuery(name = "FoodWaveTemplate.findByName", query = "SELECT f FROM FoodWaveTemplate f WHERE f.name = :name"), @NamedQuery(name = "FoodWaveTemplate.findByName", query = "SELECT f FROM FoodWaveTemplate f WHERE f.name = :name"),
@NamedQuery(name = "FoodWaveTemplate.findByDescription", query = "SELECT f FROM FoodWaveTemplate f WHERE f.description = :description") }) @NamedQuery(name = "FoodWaveTemplate.findByDescription", query = "SELECT f FROM FoodWaveTemplate f WHERE f.description = :description") })
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
public class FoodWaveTemplate extends GenericEventChild { public class FoodWaveTemplate extends GenericEventChild {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
......
...@@ -20,20 +20,6 @@ public class GenericEntity extends EntityEquals implements ModelInterface<Intege ...@@ -20,20 +20,6 @@ public class GenericEntity extends EntityEquals implements ModelInterface<Intege
@GeneratedValue(strategy = GenerationType.IDENTITY) @GeneratedValue(strategy = GenerationType.IDENTITY)
private Integer id; private Integer id;
@Version
@Column(nullable = false)
private int jpaVersionField = 0;
@Override
public final int getJpaVersionField() {
return jpaVersionField;
}
@Override
public final void setJpaVersionField(int jpaVersionField) {
this.jpaVersionField = jpaVersionField;
}
@Override @Override
public final Integer getId() { public final Integer getId() {
return id; return id;
......
package fi.insomnia.bortal.model; package fi.insomnia.bortal.model;
import javax.persistence.Column;
import javax.persistence.EmbeddedId; import javax.persistence.EmbeddedId;
import javax.persistence.JoinColumn; import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne; import javax.persistence.ManyToOne;
import javax.persistence.MappedSuperclass; import javax.persistence.MappedSuperclass;
import javax.persistence.Version;
import fi.insomnia.bortal.utilities.jpa.ModelInterface; import fi.insomnia.bortal.utilities.jpa.ModelInterface;
...@@ -17,9 +15,6 @@ public abstract class GenericEventChild extends EntityEquals implements ModelInt ...@@ -17,9 +15,6 @@ public abstract class GenericEventChild extends EntityEquals implements ModelInt
public static final String ID_COLUMN = "id"; public static final String ID_COLUMN = "id";
@EmbeddedId @EmbeddedId
private EventPk id; private EventPk id;
@Version
@Column(nullable = false)
private int jpaVersionField = 0;
public static final String EVENT_ID_COLUMN = "event_id"; public static final String EVENT_ID_COLUMN = "event_id";
@ManyToOne() @ManyToOne()
...@@ -49,16 +44,6 @@ public abstract class GenericEventChild extends EntityEquals implements ModelInt ...@@ -49,16 +44,6 @@ public abstract class GenericEventChild extends EntityEquals implements ModelInt
this.id = id; this.id = id;
} }
@Override
public final int getJpaVersionField() {
return jpaVersionField;
}
@Override
public final void setJpaVersionField(int jpaVersionField) {
this.jpaVersionField = jpaVersionField;
}
public final void setEvent(LanEvent event) { public final void setEvent(LanEvent event) {
this.event = event; this.event = event;
} }
......
...@@ -18,6 +18,9 @@ import javax.persistence.Temporal; ...@@ -18,6 +18,9 @@ import javax.persistence.Temporal;
import javax.persistence.TemporalType; import javax.persistence.TemporalType;
import javax.persistence.UniqueConstraint; import javax.persistence.UniqueConstraint;
import org.eclipse.persistence.annotations.OptimisticLocking;
import org.eclipse.persistence.annotations.OptimisticLockingType;
/** /**
* *
*/ */
...@@ -34,6 +37,7 @@ import javax.persistence.UniqueConstraint; ...@@ -34,6 +37,7 @@ import javax.persistence.UniqueConstraint;
// "SELECT g FROM GroupMembership g WHERE g.inviteEmail = :inviteEmail"), // "SELECT g FROM GroupMembership g WHERE g.inviteEmail = :inviteEmail"),
// @NamedQuery(name = "GroupMembership.findByInviteName", query = // @NamedQuery(name = "GroupMembership.findByInviteName", query =
// "SELECT g FROM GroupMembership g WHERE g.inviteName = :inviteName") }) // "SELECT g FROM GroupMembership g WHERE g.inviteName = :inviteName") })
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
public class GroupMembership extends GenericEntity { public class GroupMembership extends GenericEntity {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
......
...@@ -18,6 +18,9 @@ import javax.persistence.Table; ...@@ -18,6 +18,9 @@ import javax.persistence.Table;
import javax.persistence.Temporal; import javax.persistence.Temporal;
import javax.persistence.TemporalType; import javax.persistence.TemporalType;
import org.eclipse.persistence.annotations.OptimisticLocking;
import org.eclipse.persistence.annotations.OptimisticLockingType;
/** /**
* *
*/ */
...@@ -31,6 +34,7 @@ import javax.persistence.TemporalType; ...@@ -31,6 +34,7 @@ import javax.persistence.TemporalType;
// "SELECT e FROM LanEvent e WHERE e.endTime = :endTime"), // "SELECT e FROM LanEvent e WHERE e.endTime = :endTime"),
// @NamedQuery(name = "LanEvent.findByName", query = // @NamedQuery(name = "LanEvent.findByName", query =
// "SELECT e FROM LanEvent e WHERE e.name = :name") }) // "SELECT e FROM LanEvent e WHERE e.name = :name") })
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
public class LanEvent extends GenericEntity { public class LanEvent extends GenericEntity {
/** /**
......
...@@ -13,6 +13,9 @@ import javax.persistence.ManyToOne; ...@@ -13,6 +13,9 @@ import javax.persistence.ManyToOne;
import javax.persistence.OneToMany; import javax.persistence.OneToMany;
import javax.persistence.Table; import javax.persistence.Table;
import org.eclipse.persistence.annotations.OptimisticLocking;
import org.eclipse.persistence.annotations.OptimisticLockingType;
/** /**
* *
*/ */
...@@ -23,6 +26,7 @@ import javax.persistence.Table; ...@@ -23,6 +26,7 @@ import javax.persistence.Table;
// //
// @NamedQuery(name = "Location.findByLocationName", query = // @NamedQuery(name = "Location.findByLocationName", query =
// "SELECT l FROM Location l WHERE l.name = :name") }) // "SELECT l FROM Location l WHERE l.name = :name") })
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
public class Location extends GenericEntity { public class Location extends GenericEntity {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
......
...@@ -18,6 +18,9 @@ import javax.persistence.NamedQuery; ...@@ -18,6 +18,9 @@ import javax.persistence.NamedQuery;
import javax.persistence.Table; import javax.persistence.Table;
import javax.persistence.Temporal; import javax.persistence.Temporal;
import org.eclipse.persistence.annotations.OptimisticLocking;
import org.eclipse.persistence.annotations.OptimisticLockingType;
/** /**
* *
*/ */
...@@ -27,6 +30,7 @@ import javax.persistence.Temporal; ...@@ -27,6 +30,7 @@ import javax.persistence.Temporal;
@NamedQuery(name = "LogEntry.findAll", query = "SELECT l FROM LogEntry l"), @NamedQuery(name = "LogEntry.findAll", query = "SELECT l FROM LogEntry l"),
@NamedQuery(name = "LogEntry.findByTime", query = "SELECT l FROM LogEntry l WHERE l.time = :time"), @NamedQuery(name = "LogEntry.findByTime", query = "SELECT l FROM LogEntry l WHERE l.time = :time"),
@NamedQuery(name = "LogEntry.findByDescription", query = "SELECT l FROM LogEntry l WHERE l.description = :description") }) @NamedQuery(name = "LogEntry.findByDescription", query = "SELECT l FROM LogEntry l WHERE l.description = :description") })
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
public class LogEntry extends GenericEntity { public class LogEntry extends GenericEntity {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
......
...@@ -15,6 +15,9 @@ import javax.persistence.NamedQuery; ...@@ -15,6 +15,9 @@ import javax.persistence.NamedQuery;
import javax.persistence.OneToMany; import javax.persistence.OneToMany;
import javax.persistence.Table; import javax.persistence.Table;
import org.eclipse.persistence.annotations.OptimisticLocking;
import org.eclipse.persistence.annotations.OptimisticLockingType;
/** /**
* *
*/ */
...@@ -26,6 +29,7 @@ import javax.persistence.Table; ...@@ -26,6 +29,7 @@ import javax.persistence.Table;
@NamedQuery(name = "LogEntryType.findAll", query = "SELECT l FROM LogEntryType l"), @NamedQuery(name = "LogEntryType.findAll", query = "SELECT l FROM LogEntryType l"),
@NamedQuery(name = "LogEntryType.findByName", query = "SELECT l FROM LogEntryType l WHERE l.name = :name"), @NamedQuery(name = "LogEntryType.findByName", query = "SELECT l FROM LogEntryType l WHERE l.name = :name"),
@NamedQuery(name = "LogEntryType.findByDescription", query = "SELECT l FROM LogEntryType l WHERE l.description = :description") }) @NamedQuery(name = "LogEntryType.findByDescription", query = "SELECT l FROM LogEntryType l WHERE l.description = :description") })
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
public class LogEntryType extends GenericEntity { public class LogEntryType extends GenericEntity {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
......
...@@ -16,6 +16,8 @@ import javax.persistence.OrderBy; ...@@ -16,6 +16,8 @@ import javax.persistence.OrderBy;
import javax.persistence.Table; import javax.persistence.Table;
import javax.persistence.Transient; import javax.persistence.Transient;
import org.eclipse.persistence.annotations.OptimisticLocking;
import org.eclipse.persistence.annotations.OptimisticLockingType;
import org.eclipse.persistence.annotations.PrivateOwned; import org.eclipse.persistence.annotations.PrivateOwned;
import fi.insomnia.bortal.enums.BortalApplication; import fi.insomnia.bortal.enums.BortalApplication;
...@@ -25,6 +27,7 @@ import fi.insomnia.bortal.enums.apps.IAppPermission; ...@@ -25,6 +27,7 @@ import fi.insomnia.bortal.enums.apps.IAppPermission;
@Table(name = "menu_navigation") @Table(name = "menu_navigation")
// uniqueConstraints = { @UniqueConstraint(columnNames = { // uniqueConstraints = { @UniqueConstraint(columnNames = {
// MenuNavigation.ITEM_COLUMN, MenuNavigation.EVENT_COLUMN }) }) // MenuNavigation.ITEM_COLUMN, MenuNavigation.EVENT_COLUMN }) })
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
public class MenuNavigation extends GenericEntity implements Comparable<MenuNavigation> { public class MenuNavigation extends GenericEntity implements Comparable<MenuNavigation> {
private static final long serialVersionUID = 1404769998091479699L; private static final long serialVersionUID = 1404769998091479699L;
......
...@@ -9,10 +9,13 @@ import javax.persistence.Lob; ...@@ -9,10 +9,13 @@ import javax.persistence.Lob;
import javax.persistence.OneToMany; import javax.persistence.OneToMany;
import javax.persistence.Table; import javax.persistence.Table;
import org.eclipse.persistence.annotations.OptimisticLocking;
import org.eclipse.persistence.annotations.OptimisticLockingType;
import org.eclipse.persistence.annotations.PrivateOwned; import org.eclipse.persistence.annotations.PrivateOwned;
@Entity @Entity
@Table(name = "menuitem") @Table(name = "menuitem")
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
public class Menuitem extends GenericEntity { public class Menuitem extends GenericEntity {
private static final long serialVersionUID = -3544095800802935237L; private static final long serialVersionUID = -3544095800802935237L;
......
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package fi.insomnia.bortal.model; package fi.insomnia.bortal.model;
import java.util.Date; import java.util.Date;
...@@ -15,12 +11,16 @@ import javax.persistence.Table; ...@@ -15,12 +11,16 @@ import javax.persistence.Table;
import javax.persistence.Temporal; import javax.persistence.Temporal;
import javax.persistence.TemporalType; import javax.persistence.TemporalType;
import org.eclipse.persistence.annotations.OptimisticLocking;
import org.eclipse.persistence.annotations.OptimisticLockingType;
/** /**
* *
* @author jkj * @author jkj
*/ */
@Entity @Entity
@Table(name = "news") @Table(name = "news")
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
public class News extends GenericEntity { public class News extends GenericEntity {
private static final long serialVersionUID = 498925968565236275L; private static final long serialVersionUID = 498925968565236275L;
......
...@@ -18,6 +18,8 @@ import javax.persistence.OrderBy; ...@@ -18,6 +18,8 @@ import javax.persistence.OrderBy;
import javax.persistence.Table; import javax.persistence.Table;
import javax.persistence.UniqueConstraint; import javax.persistence.UniqueConstraint;
import org.eclipse.persistence.annotations.OptimisticLocking;
import org.eclipse.persistence.annotations.OptimisticLockingType;
import org.eclipse.persistence.annotations.PrivateOwned; import org.eclipse.persistence.annotations.PrivateOwned;
/** /**
...@@ -26,6 +28,7 @@ import org.eclipse.persistence.annotations.PrivateOwned; ...@@ -26,6 +28,7 @@ import org.eclipse.persistence.annotations.PrivateOwned;
*/ */
@Entity @Entity
@Table(name = "news_groups", uniqueConstraints = @UniqueConstraint(columnNames = { "event_id", "group_name" })) @Table(name = "news_groups", uniqueConstraints = @UniqueConstraint(columnNames = { "event_id", "group_name" }))
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
public class NewsGroup extends GenericEntity { public class NewsGroup extends GenericEntity {
/** /**
......
...@@ -11,8 +11,12 @@ import javax.persistence.Table; ...@@ -11,8 +11,12 @@ import javax.persistence.Table;
import javax.persistence.Temporal; import javax.persistence.Temporal;
import javax.persistence.TemporalType; import javax.persistence.TemporalType;
import org.eclipse.persistence.annotations.OptimisticLocking;
import org.eclipse.persistence.annotations.OptimisticLockingType;
@Entity @Entity
@Table(name = "site_page_content") @Table(name = "site_page_content")
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
public class PageContent extends GenericEntity { public class PageContent extends GenericEntity {
private static final long serialVersionUID = 8359021214886290522L; private static final long serialVersionUID = 8359021214886290522L;
......
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package fi.insomnia.bortal.model; package fi.insomnia.bortal.model;
import java.util.Calendar; import java.util.Calendar;
...@@ -17,6 +13,9 @@ import javax.persistence.Table; ...@@ -17,6 +13,9 @@ import javax.persistence.Table;
import javax.persistence.Temporal; import javax.persistence.Temporal;
import javax.persistence.TemporalType; import javax.persistence.TemporalType;
import org.eclipse.persistence.annotations.OptimisticLocking;
import org.eclipse.persistence.annotations.OptimisticLockingType;
/** /**
* *
*/ */
...@@ -36,6 +35,7 @@ import javax.persistence.TemporalType; ...@@ -36,6 +35,7 @@ import javax.persistence.TemporalType;
// "SELECT p FROM Place p WHERE p.details = :details"), // "SELECT p FROM Place p WHERE p.details = :details"),
// @NamedQuery(name = "Place.findByCode", query = // @NamedQuery(name = "Place.findByCode", query =
// "SELECT p FROM Place p WHERE p.code = :code") }) // "SELECT p FROM Place p WHERE p.code = :code") })
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
public class Place extends GenericEntity { public class Place extends GenericEntity {
/** /**
......
...@@ -22,6 +22,9 @@ import javax.persistence.Table; ...@@ -22,6 +22,9 @@ import javax.persistence.Table;
import javax.persistence.Temporal; import javax.persistence.Temporal;
import javax.persistence.TemporalType; import javax.persistence.TemporalType;
import org.eclipse.persistence.annotations.OptimisticLocking;
import org.eclipse.persistence.annotations.OptimisticLockingType;
/** /**
* *
*/ */
...@@ -37,6 +40,7 @@ import javax.persistence.TemporalType; ...@@ -37,6 +40,7 @@ import javax.persistence.TemporalType;
@NamedQuery(name = "PlaceGroup.findByName", query = "SELECT p FROM PlaceGroup p WHERE p.name = :name"), @NamedQuery(name = "PlaceGroup.findByName", query = "SELECT p FROM PlaceGroup p WHERE p.name = :name"),
@NamedQuery(name = "PlaceGroup.findByActive", query = "SELECT p FROM PlaceGroup p WHERE p.active = :active"), @NamedQuery(name = "PlaceGroup.findByActive", query = "SELECT p FROM PlaceGroup p WHERE p.active = :active"),
@NamedQuery(name = "PlaceGroup.findByDetails", query = "SELECT p FROM PlaceGroup p WHERE p.details = :details") }) @NamedQuery(name = "PlaceGroup.findByDetails", query = "SELECT p FROM PlaceGroup p WHERE p.details = :details") })
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
public class PlaceGroup extends GenericEntity { public class PlaceGroup extends GenericEntity {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
......
...@@ -18,12 +18,16 @@ import javax.persistence.OrderBy; ...@@ -18,12 +18,16 @@ import javax.persistence.OrderBy;
import javax.persistence.Table; import javax.persistence.Table;
import javax.persistence.Temporal; import javax.persistence.Temporal;
import org.eclipse.persistence.annotations.OptimisticLocking;
import org.eclipse.persistence.annotations.OptimisticLockingType;
/** /**
* Entity implementation class for Entity: Poll * Entity implementation class for Entity: Poll
* *
*/ */
@Entity @Entity
@Table(name = "poll") @Table(name = "poll")
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
public class Poll extends GenericEntity { public class Poll extends GenericEntity {
/** /**
......
...@@ -9,8 +9,12 @@ import javax.persistence.Lob; ...@@ -9,8 +9,12 @@ import javax.persistence.Lob;
import javax.persistence.ManyToOne; import javax.persistence.ManyToOne;
import javax.persistence.Table; import javax.persistence.Table;
import org.eclipse.persistence.annotations.OptimisticLocking;
import org.eclipse.persistence.annotations.OptimisticLockingType;
@Entity @Entity
@Table(name = "poll_answer") @Table(name = "poll_answer")
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
public class PollAnswer extends GenericEntity implements Serializable { public class PollAnswer extends GenericEntity implements Serializable {
/** /**
......
...@@ -12,8 +12,12 @@ import javax.persistence.ManyToOne; ...@@ -12,8 +12,12 @@ import javax.persistence.ManyToOne;
import javax.persistence.OneToMany; import javax.persistence.OneToMany;
import javax.persistence.Table; import javax.persistence.Table;
import org.eclipse.persistence.annotations.OptimisticLocking;
import org.eclipse.persistence.annotations.OptimisticLockingType;
@Entity @Entity
@Table(name = "poll_question") @Table(name = "poll_question")
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
public class PollQuestion extends GenericEntity { public class PollQuestion extends GenericEntity {
public PollQuestion() { public PollQuestion() {
......
...@@ -11,8 +11,12 @@ import javax.persistence.ManyToOne; ...@@ -11,8 +11,12 @@ import javax.persistence.ManyToOne;
import javax.persistence.OneToMany; import javax.persistence.OneToMany;
import javax.persistence.Table; import javax.persistence.Table;
import org.eclipse.persistence.annotations.OptimisticLocking;
import org.eclipse.persistence.annotations.OptimisticLockingType;
@Entity @Entity
@Table(name = "possible_answer") @Table(name = "possible_answer")
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
public class PossibleAnswer extends GenericEntity { public class PossibleAnswer extends GenericEntity {
public PossibleAnswer() { public PossibleAnswer() {
......
...@@ -23,6 +23,9 @@ import javax.persistence.TemporalType; ...@@ -23,6 +23,9 @@ import javax.persistence.TemporalType;
import javax.persistence.Transient; import javax.persistence.Transient;
import javax.persistence.UniqueConstraint; import javax.persistence.UniqueConstraint;
import org.eclipse.persistence.annotations.OptimisticLocking;
import org.eclipse.persistence.annotations.OptimisticLockingType;
/** /**
* *
*/ */
...@@ -40,6 +43,7 @@ import javax.persistence.UniqueConstraint; ...@@ -40,6 +43,7 @@ import javax.persistence.UniqueConstraint;
// "SELECT p FROM PrintedCard p WHERE p.enabled = :enabled"), // "SELECT p FROM PrintedCard p WHERE p.enabled = :enabled"),
// @NamedQuery(name = "PrintedCard.findByRfidUid", query = // @NamedQuery(name = "PrintedCard.findByRfidUid", query =
// "SELECT p FROM PrintedCard p WHERE p.rfidUid = :rfidUid") }) // "SELECT p FROM PrintedCard p WHERE p.rfidUid = :rfidUid") })
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
public class PrintedCard extends GenericEntity { public class PrintedCard extends GenericEntity {
/** /**
......
...@@ -19,6 +19,9 @@ import javax.persistence.OneToMany; ...@@ -19,6 +19,9 @@ import javax.persistence.OneToMany;
import javax.persistence.Table; import javax.persistence.Table;
import javax.persistence.UniqueConstraint; import javax.persistence.UniqueConstraint;
import org.eclipse.persistence.annotations.OptimisticLocking;
import org.eclipse.persistence.annotations.OptimisticLockingType;
/** /**
* *
*/ */
...@@ -34,6 +37,7 @@ import javax.persistence.UniqueConstraint; ...@@ -34,6 +37,7 @@ import javax.persistence.UniqueConstraint;
// "SELECT p FROM Product p WHERE p.sort = :sort"), // "SELECT p FROM Product p WHERE p.sort = :sort"),
// @NamedQuery(name = "Product.findByBarcode", query = // @NamedQuery(name = "Product.findByBarcode", query =
// "SELECT p FROM Product p WHERE p.barcode = :barcode") }) // "SELECT p FROM Product p WHERE p.barcode = :barcode") })
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
public class Product extends GenericEntity { public class Product extends GenericEntity {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
...@@ -43,7 +47,7 @@ public class Product extends GenericEntity { ...@@ -43,7 +47,7 @@ public class Product extends GenericEntity {
private LanEvent event; private LanEvent event;
private String color; private String color;
@Column(name = "product_name") @Column(name = "product_name")
private String name; private String name;
......
...@@ -16,6 +16,9 @@ import javax.persistence.OneToMany; ...@@ -16,6 +16,9 @@ import javax.persistence.OneToMany;
import javax.persistence.Table; import javax.persistence.Table;
import javax.persistence.UniqueConstraint; import javax.persistence.UniqueConstraint;
import org.eclipse.persistence.annotations.OptimisticLocking;
import org.eclipse.persistence.annotations.OptimisticLockingType;
/** /**
* *
*/ */
...@@ -28,6 +31,7 @@ import javax.persistence.UniqueConstraint; ...@@ -28,6 +31,7 @@ import javax.persistence.UniqueConstraint;
// "SELECT r FROM Reader r WHERE r.identification = :identification"), // "SELECT r FROM Reader r WHERE r.identification = :identification"),
// @NamedQuery(name = "Reader.findByDescription", query = // @NamedQuery(name = "Reader.findByDescription", query =
// "SELECT r FROM Reader r WHERE r.description = :description") }) // "SELECT r FROM Reader r WHERE r.description = :description") })
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
public class Reader extends GenericEntity { public class Reader extends GenericEntity {
public Reader(LanEvent ev, String ident) { public Reader(LanEvent ev, String ident) {
......
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package fi.insomnia.bortal.model; package fi.insomnia.bortal.model;
import static javax.persistence.CascadeType.ALL; import static javax.persistence.CascadeType.ALL;
...@@ -16,11 +12,15 @@ import javax.persistence.Table; ...@@ -16,11 +12,15 @@ import javax.persistence.Table;
import javax.persistence.Temporal; import javax.persistence.Temporal;
import javax.persistence.TemporalType; import javax.persistence.TemporalType;
import org.eclipse.persistence.annotations.OptimisticLocking;
import org.eclipse.persistence.annotations.OptimisticLockingType;
/** /**
* *
*/ */
@Entity @Entity
@Table(name = "reader_events") @Table(name = "reader_events")
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
public class ReaderEvent extends GenericEntity { public class ReaderEvent extends GenericEntity {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
......
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package fi.insomnia.bortal.model; package fi.insomnia.bortal.model;
import java.util.ArrayList; import java.util.ArrayList;
...@@ -17,6 +13,8 @@ import javax.persistence.OneToMany; ...@@ -17,6 +13,8 @@ import javax.persistence.OneToMany;
import javax.persistence.Table; import javax.persistence.Table;
import javax.persistence.UniqueConstraint; import javax.persistence.UniqueConstraint;
import org.eclipse.persistence.annotations.OptimisticLocking;
import org.eclipse.persistence.annotations.OptimisticLockingType;
import org.eclipse.persistence.annotations.PrivateOwned; import org.eclipse.persistence.annotations.PrivateOwned;
/** /**
...@@ -24,6 +22,7 @@ import org.eclipse.persistence.annotations.PrivateOwned; ...@@ -24,6 +22,7 @@ import org.eclipse.persistence.annotations.PrivateOwned;
*/ */
@Entity @Entity
@Table(name = "roles", uniqueConstraints = { @UniqueConstraint(columnNames = { Role.EVENT_ID_COLUMN, Role.NAME_COLUMN }) }) @Table(name = "roles", uniqueConstraints = { @UniqueConstraint(columnNames = { Role.EVENT_ID_COLUMN, Role.NAME_COLUMN }) })
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
public class Role extends GenericEntity { public class Role extends GenericEntity {
private static final long serialVersionUID = -4602863502464505404L; private static final long serialVersionUID = -4602863502464505404L;
......
...@@ -12,10 +12,13 @@ import javax.persistence.OneToMany; ...@@ -12,10 +12,13 @@ import javax.persistence.OneToMany;
import javax.persistence.Table; import javax.persistence.Table;
import javax.persistence.UniqueConstraint; import javax.persistence.UniqueConstraint;
import org.eclipse.persistence.annotations.OptimisticLocking;
import org.eclipse.persistence.annotations.OptimisticLockingType;
import org.eclipse.persistence.annotations.PrivateOwned; import org.eclipse.persistence.annotations.PrivateOwned;
@Entity @Entity
@Table(name = "site_pages", uniqueConstraints = @UniqueConstraint(columnNames = { "event_id", "name" })) @Table(name = "site_pages", uniqueConstraints = @UniqueConstraint(columnNames = { "event_id", "name" }))
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
public class SitePage extends GenericEntity { public class SitePage extends GenericEntity {
private static final long serialVersionUID = -4333555423866132524L; private static final long serialVersionUID = -4333555423866132524L;
......
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package fi.insomnia.bortal.model; package fi.insomnia.bortal.model;
import static javax.persistence.CascadeType.ALL; import static javax.persistence.CascadeType.ALL;
...@@ -30,6 +26,8 @@ import javax.persistence.TemporalType; ...@@ -30,6 +26,8 @@ import javax.persistence.TemporalType;
import javax.persistence.Transient; import javax.persistence.Transient;
import javax.validation.constraints.NotNull; import javax.validation.constraints.NotNull;
import org.eclipse.persistence.annotations.OptimisticLocking;
import org.eclipse.persistence.annotations.OptimisticLockingType;
import org.eclipse.persistence.annotations.PrivateOwned; import org.eclipse.persistence.annotations.PrivateOwned;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
...@@ -42,6 +40,7 @@ import fi.insomnia.bortal.utilities.PasswordFunctions; ...@@ -42,6 +40,7 @@ import fi.insomnia.bortal.utilities.PasswordFunctions;
*/ */
@Entity @Entity
@Table(name = "users") @Table(name = "users")
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
public class User extends GenericEntity { public class User extends GenericEntity {
public static final String ANONYMOUS_LOGINNAME = "anonymous"; public static final String ANONYMOUS_LOGINNAME = "anonymous";
private static final long serialVersionUID = -1632200627103418206L; private static final long serialVersionUID = -1632200627103418206L;
......
...@@ -16,11 +16,15 @@ import javax.persistence.Table; ...@@ -16,11 +16,15 @@ import javax.persistence.Table;
import javax.persistence.Temporal; import javax.persistence.Temporal;
import javax.persistence.TemporalType; import javax.persistence.TemporalType;
import org.eclipse.persistence.annotations.OptimisticLocking;
import org.eclipse.persistence.annotations.OptimisticLockingType;
/** /**
* *
*/ */
@Entity @Entity
@Table(name = "user_images") @Table(name = "user_images")
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
// @NamedQueries({ // @NamedQueries({
// @NamedQuery(name = "UserImage.findAll", query = "SELECT u FROM UserImage u"), // @NamedQuery(name = "UserImage.findAll", query = "SELECT u FROM UserImage u"),
// //
......
...@@ -18,6 +18,9 @@ import javax.persistence.Temporal; ...@@ -18,6 +18,9 @@ import javax.persistence.Temporal;
import javax.persistence.TemporalType; import javax.persistence.TemporalType;
import javax.persistence.UniqueConstraint; import javax.persistence.UniqueConstraint;
import org.eclipse.persistence.annotations.OptimisticLocking;
import org.eclipse.persistence.annotations.OptimisticLockingType;
/** /**
* A vote for a compo entry * A vote for a compo entry
*/ */
...@@ -27,6 +30,7 @@ import javax.persistence.UniqueConstraint; ...@@ -27,6 +30,7 @@ import javax.persistence.UniqueConstraint;
@NamedQuery(name = "Vote.findAll", query = "SELECT v FROM Vote v"), @NamedQuery(name = "Vote.findAll", query = "SELECT v FROM Vote v"),
@NamedQuery(name = "Vote.findByScore", query = "SELECT v FROM Vote v WHERE v.score = :score"), @NamedQuery(name = "Vote.findByScore", query = "SELECT v FROM Vote v WHERE v.score = :score"),
@NamedQuery(name = "Vote.findByTime", query = "SELECT v FROM Vote v WHERE v.time = :time") }) @NamedQuery(name = "Vote.findByTime", query = "SELECT v FROM Vote v WHERE v.time = :time") })
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
public class Vote extends GenericEventChild { public class Vote extends GenericEventChild {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!