All pastes #884824 Raw Edit

polymorphism

public java v1 · immutable
#884824 ·published 2008-01-30 16:56 UTC
rendered paste body
@MappedSuperclass@Entity@Inheritance(strategy = InheritanceType.TABLE_PER_CLASS)public interface ExerciseInterface {	public abstract byte[] getImage();	public abstract void setImage(byte[] image);	public abstract String getName();	public abstract String getReferenceUrl();	public abstract void setName(String name);	public abstract void setReferenceUrl(String referenceUrl);	@ManyToOne	public abstract ExerciseCategory getExerciseCategory();	public abstract void setExerciseCategory(ExerciseCategory exerciseCategory);	public abstract String getDescription();	public abstract void setDescription(String description);	@Id	public abstract Long getId();	public abstract void setId(Long id);}package zeuzgroup.core.exercise;import javax.persistence.AttributeOverride;import javax.persistence.AttributeOverrides;import javax.persistence.Column;import javax.persistence.Embedded;import javax.persistence.Entity;@Entity@AttributeOverrides( {		@AttributeOverride(name = "version", column = @Column(insertable = false, updatable = false)),		@AttributeOverride(name = "id", column = @Column(insertable = false, updatable = false)) })public  class ExerciseDuration extends ExerciseBase implements		ExerciseInterface {public ExerciseDuration() {super(null);}	@Embedded	private Duration duration;	public ExerciseDuration(ExerciseCategory exerciseCategory) {		super(exerciseCategory);	}	public Duration getDuration() {		return duration;	}	public void setDuration(Duration duration) {		this.duration = duration;	}}package zeuzgroup.core.exercise;import java.util.ArrayList;import java.util.List;import javax.persistence.Entity;import javax.persistence.OneToMany;import zeuzgroup.core.BaseEntity;@Entitypublic class ExerciseCategory extends BaseEntity {	private String name;	@OneToMany(mappedBy = "exerciseCategory")	private List<ExerciseInterface> exercises = new ArrayList<ExerciseInterface>();	public ExerciseCategory(String name) {		super();		this.name = name;	}	public String getName() {		return name;	}	public void setName(String name) {		this.name = name;	}	public List<ExerciseInterface> getExercises() {		return exercises;	}	public void setExercises(List<ExerciseInterface> exercises) {		this.exercises = exercises;	}	public ExerciseCategory() {	}}