package edu.ualberta.med.biobank.common.peer; import edu.ualberta.med.biobank.common.util.TypeReference; import java.util.Collections; import edu.ualberta.med.biobank.common.wrappers.Property; import java.util.List; import java.util.ArrayList; import edu.ualberta.med.biobank.model.Study; import edu.ualberta.med.biobank.model.SpecimenType; import edu.ualberta.med.biobank.model.SourceSpecimen; public class SourceSpecimenPeer { public static final Property<Integer, SourceSpecimen> ID = Property.create( "id" //$NON-NLS-1$ , SourceSpecimen.class , new TypeReference<Integer>() {} , new Property.Accessor<Integer, SourceSpecimen>() { private static final long serialVersionUID = 1L; @Override public Integer get(SourceSpecimen model) { return model.getId(); } @Override public void set(SourceSpecimen model, Integer value) { model.setId(value); } }); public static final Property<Boolean, SourceSpecimen> NEED_ORIGINAL_VOLUME = Property.create( "needOriginalVolume" //$NON-NLS-1$ , SourceSpecimen.class , new TypeReference<Boolean>() {} , new Property.Accessor<Boolean, SourceSpecimen>() { private static final long serialVersionUID = 1L; @Override public Boolean get(SourceSpecimen model) { return model.getNeedOriginalVolume(); } @Override public void set(SourceSpecimen model, Boolean value) { model.setNeedOriginalVolume(value); } }); public static final Property<Study, SourceSpecimen> STUDY = Property.create( "study" //$NON-NLS-1$ , SourceSpecimen.class , new TypeReference<Study>() {} , new Property.Accessor<Study, SourceSpecimen>() { private static final long serialVersionUID = 1L; @Override public Study get(SourceSpecimen model) { return model.getStudy(); } @Override public void set(SourceSpecimen model, Study value) { model.setStudy(value); } }); public static final Property<SpecimenType, SourceSpecimen> SPECIMEN_TYPE = Property.create( "specimenType" //$NON-NLS-1$ , SourceSpecimen.class , new TypeReference<SpecimenType>() {} , new Property.Accessor<SpecimenType, SourceSpecimen>() { private static final long serialVersionUID = 1L; @Override public SpecimenType get(SourceSpecimen model) { return model.getSpecimenType(); } @Override public void set(SourceSpecimen model, SpecimenType value) { model.setSpecimenType(value); } }); public static final List<Property<?, ? super SourceSpecimen>> PROPERTIES; static { List<Property<?, ? super SourceSpecimen>> aList = new ArrayList<Property<?, ? super SourceSpecimen>>(); aList.add(ID); aList.add(NEED_ORIGINAL_VOLUME); aList.add(STUDY); aList.add(SPECIMEN_TYPE); PROPERTIES = Collections.unmodifiableList(aList); }; }