Update of /cvsroot/hibernate/Hibernate/cirrus/hibernate/collections
In directory sc8-pr-cvs1:/tmp/cvs-serv32180/hibernate/collections
Modified Files:
Bag.java List.java PersistentCollection.java
Log Message:
incremenet version number of object containing collection with a 'queued add'
Index: Bag.java
===================================================================
RCS file: /cvsroot/hibernate/Hibernate/cirrus/hibernate/collections/Bag.java,v
retrieving revision 1.17
retrieving revision 1.18
diff -C2 -d -r1.17 -r1.18
*** Bag.java 7 Dec 2002 09:05:40 -0000 1.17
--- Bag.java 17 Dec 2002 09:43:18 -0000 1.18
***************
*** 239,243 ****
*/
public boolean add(Object o) {
! if ( !scheduleAdd(o) ) {
write();
return bag.add(o);
--- 239,243 ----
*/
public boolean add(Object o) {
! if ( !queueAdd(o) ) {
write();
return bag.add(o);
***************
*** 268,272 ****
*/
public boolean addAll(Collection c) {
! if ( !scheduleAddAll(c) ) {
write();
return bag.addAll(c);
--- 268,272 ----
*/
public boolean addAll(Collection c) {
! if ( !queueAddAll(c) ) {
write();
return bag.addAll(c);
Index: List.java
===================================================================
RCS file: /cvsroot/hibernate/Hibernate/cirrus/hibernate/collections/List.java,v
retrieving revision 1.45
retrieving revision 1.46
diff -C2 -d -r1.45 -r1.46
*** List.java 7 Dec 2002 09:05:41 -0000 1.45
--- List.java 17 Dec 2002 09:43:18 -0000 1.46
***************
*** 113,117 ****
*/
public boolean add(Object object) {
! if ( !scheduleAdd(object) ) {
write();
return list.add(object);
--- 113,117 ----
*/
public boolean add(Object object) {
! if ( !queueAdd(object) ) {
write();
return list.add(object);
***************
*** 142,146 ****
*/
public boolean addAll(Collection c) {
! if ( !scheduleAddAll(c) ) {
write();
return list.addAll(c);
--- 142,146 ----
*/
public boolean addAll(Collection c) {
! if ( !queueAddAll(c) ) {
write();
return list.addAll(c);
Index: PersistentCollection.java
===================================================================
RCS file: /cvsroot/hibernate/Hibernate/cirrus/hibernate/collections/PersistentCollection.java,v
retrieving revision 1.77
retrieving revision 1.78
diff -C2 -d -r1.77 -r1.78
*** PersistentCollection.java 7 Dec 2002 09:41:22 -0000 1.77
--- PersistentCollection.java 17 Dec 2002 09:43:18 -0000 1.78
***************
*** 61,70 ****
}
! private boolean mayScheduleAdd() {
return !initialized && session!=null && session.isOpen() && session.isCollectionReadOnly(this);
}
! protected final boolean scheduleAdd(Object element) {
! if ( mayScheduleAdd() ) {
if (additions==null) additions = new ArrayList(10);
additions.add(element);
--- 61,70 ----
}
! private boolean mayQueueAdd() {
return !initialized && session!=null && session.isOpen() && session.isCollectionReadOnly(this);
}
! protected final boolean queueAdd(Object element) {
! if ( mayQueueAdd() ) {
if (additions==null) additions = new ArrayList(10);
additions.add(element);
***************
*** 76,81 ****
}
! protected final boolean scheduleAddAll(Collection coll) {
! if ( mayScheduleAdd() ) {
if (additions==null) additions = new ArrayList(20);
additions.addAll(coll);
--- 76,81 ----
}
! protected final boolean queueAddAll(Collection coll) {
! if ( mayQueueAdd() ) {
if (additions==null) additions = new ArrayList(20);
additions.addAll(coll);
***************
*** 190,193 ****
--- 190,197 ----
public final boolean wasInitialized() {
return initialized;
+ }
+
+ public final boolean hasQueuedAdds() {
+ return additions!=null;
}
|