// Path: raidenjpa-core/src/main/java/org/raiden/exception/NotYetImplementedException.java
// public class NotYetImplementedException extends RuntimeException {
// 	
// 	private static final long serialVersionUID = 7845965338955346095L;
// 	
// 	private String message;
// 
// 	public NotYetImplementedException() {
// 		
// 	}
// 	
// 	public NotYetImplementedException(String message) {
// 		this.message = message;
// 	}
// 
// 	public String toString() {
// 		return message;
// 	}
// 
// }


import java.util.Calendar;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.Set;
import javax.persistence.FlushModeType;
import javax.persistence.LockModeType;
import javax.persistence.Parameter;
import javax.persistence.Query;
import javax.persistence.TemporalType;
import javax.persistence.TypedQuery;
import org.raiden.exception.NotYetImplementedException;
package org.raidenjpa.spec;




public class RaidenTypedQuery<X> implements TypedQuery<X> {

	private Query query;

	public RaidenTypedQuery(Query query) {
		this.query = query;
	}

	@SuppressWarnings({ "unchecked" })
	public List<X> getResultList() {
		return query.getResultList();
	}

	@SuppressWarnings("unchecked")
	public X getSingleResult() {
		return (X) query.getSingleResult();
	}

	public TypedQuery<X> setMaxResults(int maxResult) {
		query.setMaxResults(maxResult);
		return this;
	}
	
	public TypedQuery<X> setParameter(String name, Object value) {
		query.setParameter(name, value);
		return this;
	}
	
	public int getFirstResult() {
		return query.getFirstResult();
	}
	
	public TypedQuery<X> setFirstResult(int startPosition) {
		query.setFirstResult(startPosition);
		return this;
	}
	
	public int executeUpdate() {
// Path: raidenjpa-core/src/main/java/org/raiden/exception/NotYetImplementedException.java
// public class NotYetImplementedException extends RuntimeException {
// 	
// 	private static final long serialVersionUID = 7845965338955346095L;
// 	
// 	private String message;
// 
// 	public NotYetImplementedException() {
// 		
// 	}
// 	
// 	public NotYetImplementedException(String message) {
// 		this.message = message;
// 	}
// 
// 	public String toString() {
// 		return message;
// 	}
// 
// }


// Path: raidenjpa-core/src/main/java/org/raidenjpa/spec/RaidenTypedQuery.java
import java.util.Calendar;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.Set;
import javax.persistence.FlushModeType;
import javax.persistence.LockModeType;
import javax.persistence.Parameter;
import javax.persistence.Query;
import javax.persistence.TemporalType;
import javax.persistence.TypedQuery;
import org.raiden.exception.NotYetImplementedException;

package org.raidenjpa.spec;




public class RaidenTypedQuery<X> implements TypedQuery<X> {

	private Query query;

	public RaidenTypedQuery(Query query) {
		this.query = query;
	}

	@SuppressWarnings({ "unchecked" })
	public List<X> getResultList() {
		return query.getResultList();
	}

	@SuppressWarnings("unchecked")
	public X getSingleResult() {
		return (X) query.getSingleResult();
	}

	public TypedQuery<X> setMaxResults(int maxResult) {
		query.setMaxResults(maxResult);
		return this;
	}
	
	public TypedQuery<X> setParameter(String name, Object value) {
		query.setParameter(name, value);
		return this;
	}
	
	public int getFirstResult() {
		return query.getFirstResult();
	}
	
	public TypedQuery<X> setFirstResult(int startPosition) {
		query.setFirstResult(startPosition);
		return this;
	}
	
	public int executeUpdate() {
		throw new NotYetImplementedException();