package ${omAgentPackage};

import java.io.Serializable;
import java.util.List;

import ${omPojoPackage}.*;

import org.asyrinx.joey.om.agent.AgentAssociation;
import org.asyrinx.joey.om.EntityService;
import org.asyrinx.joey.om.SearchCondition;

/**
 */
public interface ${table.getJavaName()}Agent extends EntityService {
	public ${table.getJavaName()} load(Serializable key, AgentAssociation association);

	public List list(SearchCondition condition, AgentAssociation association);

	public void addToAssociation(${table.getJavaName()} obj, AgentAssociation association);
	
	public void restore(${table.getJavaName()} obj, AgentAssociation association);
	
#foreach( $fk in $table.getForeignKeys() )
	#set( $fkTable = $fk.getForeignTableObject() )
	#if( ! $usedAgentTable.contains( $fkTable ) )
	public List listBy${fk.getJavaName()}(${fkTable.getJavaName()} ref, AgentAssociation association);
	#end
#end
}
