KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > hibernate > NonUniqueObjectException


1 //$Id: NonUniqueObjectException.java,v 1.4 2005/02/12 07:19:50 steveebersole Exp $
2
package org.hibernate;
3
4 import java.io.Serializable JavaDoc;
5
6 import org.hibernate.pretty.MessageHelper;
7
8 /**
9  * This exception is thrown when an operation would
10  * break session-scoped identity. This occurs if the
11  * user tries to associate two different instances of
12  * the same Java class with a particular identifier,
13  * in the scope of a single <tt>Session</tt>.
14  *
15  * @author Gavin King
16  */

17 public class NonUniqueObjectException extends HibernateException {
18     private final Serializable JavaDoc identifier;
19     private final String JavaDoc entityName;
20
21     public NonUniqueObjectException(String JavaDoc message, Serializable JavaDoc id, String JavaDoc clazz) {
22         super(message);
23         this.entityName = clazz;
24         this.identifier = id;
25     }
26
27     public NonUniqueObjectException(Serializable JavaDoc id, String JavaDoc clazz) {
28         this("a different object with the same identifier value was already associated with the session", id, clazz);
29     }
30
31     public Serializable JavaDoc getIdentifier() {
32         return identifier;
33     }
34
35     public String JavaDoc getMessage() {
36         return super.getMessage() + ": " +
37             MessageHelper.infoString(entityName, identifier);
38     }
39
40     public String JavaDoc getEntityName() {
41         return entityName;
42     }
43
44 }
45
Popular Tags