All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.uqbar.common.transaction.Collection.TransactionalCollection.scala Maven / Gradle / Ivy

There is a newer version: 3.6.3
Show newest version
package com.uqbar.common.transaction.Collection;

import java.util.Collection

/**
 * @author nnydjesus
 * @param 
 * @param 
 */
abstract class TransactionalCollection[D<: Collection[E], E](owner:Any, fieldName:String) extends TransactionalData[D](owner, fieldName) with Collection[E] {
	
	override def size() = data.size();
	override def isEmpty() = data.isEmpty()
	override def contains(o:Object) = data.contains(o);
	override def containsAll(c:Collection[_]) = data.containsAll(c);
	override def iterator() = data.iterator()
	override def toArray() = data.toArray()
	override def toArray[T](a:Array[T with java.lang.Object]) = null
	override def add(e:E) = updateData(_.add(e))
	override def addAll(c:Collection[_ <:E]) = updateData(_.addAll(c))
	override def remove(e:Object) = updateData(_.remove(e))
	override def removeAll(c:Collection[_]) = updateData(_.removeAll(c))
	override def retainAll(c:Collection[_]) = updateData(_.retainAll(c))
	override def clear() = updateData(_.clear())
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy