// Path: katharsis-jpa/src/main/java/io/katharsis/jpa/internal/JpaQueryFactoryBase.java
// public abstract class JpaQueryFactoryBase implements JpaQueryFactory {
// 
// 	protected EntityManager em;
// 
// 	protected ComputedAttributeRegistryImpl computedAttrs = new ComputedAttributeRegistryImpl();
// 
// 	protected MetaLookup metaLookup;
// 	
// 
// 	@Override
// 	public void initalize(JpaQueryFactoryContext context) {
// 		this.em = context.getEntityManager();
// 		this.metaLookup = context.getMetaLookup();
// 		this.computedAttrs.init(context);
// 	}
// 
// 	public EntityManager getEntityManager() {
// 		return em;
// 	}
// 
// 	public ComputedAttributeRegistry getComputedAttributes() {
// 		return computedAttrs;
// 	}
// }


import java.lang.reflect.Type;
import java.util.List;
import io.katharsis.jpa.internal.JpaQueryFactoryBase;
import io.katharsis.jpa.internal.query.backend.criteria.JpaCriteriaQueryImpl;
import io.katharsis.jpa.query.JpaQueryFactory;
package io.katharsis.jpa.query.criteria;



public class JpaCriteriaQueryFactory extends JpaQueryFactoryBase implements JpaQueryFactory {

	private JpaCriteriaQueryFactory() {
	}

	public static JpaCriteriaQueryFactory newInstance() {
// Path: katharsis-jpa/src/main/java/io/katharsis/jpa/internal/JpaQueryFactoryBase.java
// public abstract class JpaQueryFactoryBase implements JpaQueryFactory {
// 
// 	protected EntityManager em;
// 
// 	protected ComputedAttributeRegistryImpl computedAttrs = new ComputedAttributeRegistryImpl();
// 
// 	protected MetaLookup metaLookup;
// 	
// 
// 	@Override
// 	public void initalize(JpaQueryFactoryContext context) {
// 		this.em = context.getEntityManager();
// 		this.metaLookup = context.getMetaLookup();
// 		this.computedAttrs.init(context);
// 	}
// 
// 	public EntityManager getEntityManager() {
// 		return em;
// 	}
// 
// 	public ComputedAttributeRegistry getComputedAttributes() {
// 		return computedAttrs;
// 	}
// }


// Path: katharsis-jpa/src/main/java/io/katharsis/jpa/query/criteria/JpaCriteriaQueryFactory.java
import java.lang.reflect.Type;
import java.util.List;
import io.katharsis.jpa.internal.JpaQueryFactoryBase;
import io.katharsis.jpa.internal.query.backend.criteria.JpaCriteriaQueryImpl;
import io.katharsis.jpa.query.JpaQueryFactory;

package io.katharsis.jpa.query.criteria;



public class JpaCriteriaQueryFactory extends JpaQueryFactoryBase implements JpaQueryFactory {

	private JpaCriteriaQueryFactory() {
	}

	public static JpaCriteriaQueryFactory newInstance() {
		return new JpaCriteriaQueryFactory();