package com.l7tech.server.entity;

import com.l7tech.objectmodel.DeleteException;
import com.l7tech.objectmodel.Entity;
import com.l7tech.objectmodel.EntityHeader;
import com.l7tech.objectmodel.EntityManager;
import com.l7tech.objectmodel.EntityType;
import com.l7tech.objectmodel.FindException;
import com.l7tech.objectmodel.Goid;
import com.l7tech.objectmodel.SaveException;
import com.l7tech.objectmodel.UpdateException;
import com.l7tech.policy.GenericEntity;
import com.l7tech.policy.GenericEntityHeader;
import java.util.Collection;
import java.util.List;
import java.util.Map;

class b implements EntityManager<ET, GenericEntityHeader> {
   final GenericEntityManager val$gem;
   final Class val$entityClass;

   b(GenericEntityManagerImpl var1, GenericEntityManager var2, Class var3) {
      this.val$gem = var2;
      this.val$entityClass = var3;
   }

   public GenericEntity findByPrimaryKey(Goid var1) throws FindException {
      return this.val$gem.findByGenericClassAndPrimaryKey(this.val$entityClass, var1);
   }

   public Collection<GenericEntityHeader> findAllHeaders() throws FindException {
      return this.val$gem.findAllHeaders(this.val$entityClass);
   }

   public Collection<GenericEntityHeader> findAllHeaders(int var1, int var2) throws FindException {
      return this.val$gem.findAllHeaders(this.val$entityClass, var1, var2);
   }

   public Collection<ET> findAll() throws FindException {
      return this.val$gem.findAll(this.val$entityClass);
   }

   public Goid save(GenericEntity var1) throws SaveException {
      return this.val$gem.save(this.val$entityClass, var1);
   }

   public void save(Goid var1, GenericEntity var2) throws SaveException {
      this.val$gem.save(var1, this.val$entityClass, var2);
   }

   public Integer getVersion(Goid var1) throws FindException {
      return this.val$gem.getVersion(this.val$entityClass, var1);
   }

   public Map<Goid, Integer> findVersionMap() throws FindException {
      return this.val$gem.findVersionMap(this.val$entityClass);
   }

   public void delete(GenericEntity var1) throws DeleteException {
      this.val$gem.delete(this.val$entityClass, var1);
   }

   public GenericEntity getCachedEntity(Goid var1, int var2) throws FindException {
      return this.val$gem.getCachedEntity(this.val$entityClass, var1, var2);
   }

   public Class<? extends Entity> getInterfaceClass() {
      return this.val$entityClass;
   }

   public EntityType getEntityType() {
      return this.val$gem.getEntityType();
   }

   public String getTableName() {
      return this.val$gem.getTableName();
   }

   public GenericEntity findByUniqueName(String var1) throws FindException {
      return this.val$gem.findByUniqueName(this.val$entityClass, var1);
   }

   public void delete(Goid var1) throws DeleteException, FindException {
      this.val$gem.delete(this.val$entityClass, var1);
   }

   public void update(GenericEntity var1) throws UpdateException {
      this.val$gem.update(this.val$entityClass, var1);
   }

   public GenericEntity findByHeader(EntityHeader var1) throws FindException {
      return this.val$gem.findByHeader(this.val$entityClass, var1);
   }

   public List<ET> findPagedMatching(int var1, int var2, String var3, Boolean var4, Map<String, List<Object>> var5) throws FindException {
      return this.val$gem.findPagedMatching(this.val$entityClass, var1, var2, var3, var4, var5);
   }

   public Class<? extends Entity> getImpClass() {
      return this.val$entityClass;
   }
}
