@Entity
@Audited
@Table(appliesTo="AgentBase", indexes = { @Index(name = "agentTitleCacheIndex", columnNames = { "titleCache" }) })
-public abstract class AgentBase<S extends IIdentifiableEntityCacheStrategy<?>> extends IdentifiableMediaEntity<S> implements IMergable, IMatchable, Cloneable{
+public abstract class AgentBase<S extends IIdentifiableEntityCacheStrategy<? extends AgentBase<S>>> extends IdentifiableMediaEntity<S> implements IMergable, IMatchable, Cloneable{
private static final long serialVersionUID = 7732768617469448829L;
@SuppressWarnings("unused")
private static final Logger logger = Logger.getLogger(AgentBase.class);
})
@Entity
@Audited
-public abstract class TeamOrPersonBase<T extends TeamOrPersonBase<?>> extends AgentBase<INomenclaturalAuthorCacheStrategy<T>> implements INomenclaturalAuthor {
+public abstract class TeamOrPersonBase<T extends TeamOrPersonBase<T>> extends AgentBase<INomenclaturalAuthorCacheStrategy<T>> implements INomenclaturalAuthor {
private static final long serialVersionUID = 5216821307314001961L;
public static final Logger logger = Logger.getLogger(TeamOrPersonBase.class);
@NameMustHaveAuthority(groups = Level2.class)
@NoDuplicateNames(groups = Level3.class)
public class NonViralName<T extends NonViralName<?>>
- extends TaxonNameBase<T, INonViralNameCacheStrategy<?>>{
+ extends TaxonNameBase<T, INonViralNameCacheStrategy<T>>{
private static final long serialVersionUID = -9083811681449792683L;