package edu.ualberta.med.biobank.test; import java.util.Arrays; import java.util.Date; import org.junit.Test; import edu.ualberta.med.biobank.common.exception.BiobankCheckException; import edu.ualberta.med.biobank.common.wrappers.DispatchSpecimenWrapper; import edu.ualberta.med.biobank.common.wrappers.PatientWrapper; import edu.ualberta.med.biobank.common.wrappers.SiteWrapper; import edu.ualberta.med.biobank.common.wrappers.SpecimenTypeWrapper; import edu.ualberta.med.biobank.common.wrappers.SpecimenWrapper; import edu.ualberta.med.biobank.common.wrappers.StudyWrapper; import edu.ualberta.med.biobank.model.ActivityStatus; import edu.ualberta.med.biobank.test.internal.CollectionEventHelper; import edu.ualberta.med.biobank.test.internal.PatientHelper; import edu.ualberta.med.biobank.test.internal.SiteHelper; import edu.ualberta.med.biobank.test.internal.SpecimenTypeHelper; import edu.ualberta.med.biobank.test.internal.StudyHelper; import gov.nih.nci.system.applicationservice.ApplicationException; @Deprecated public class TestHibernateLocking extends TestDatabase { @Test public void testHibernateLocking() { try { SpecimenWrapper newSpec = new SpecimenWrapper(appService); newSpec.setInventoryId("aaaa"); newSpec.setCreatedAt(new Date()); newSpec.setActivityStatus(ActivityStatus.ACTIVE); StudyWrapper study = StudyHelper.addStudy("teststudy"); SiteWrapper site = SiteHelper.addSite("testsite"); PatientWrapper patient = PatientHelper.addPatient("testp", study); SpecimenTypeWrapper st = SpecimenTypeHelper .addSpecimenType("testst"); st.persist(); newSpec.setSpecimenType(st); CollectionEventHelper.addCollectionEvent(site, patient, 1, newSpec); // TEST BEGINS SpecimenWrapper ob1 = SpecimenWrapper.getSpecimen(appService, "aaaa"); SpecimenWrapper ob2 = SpecimenWrapper.getSpecimen(appService, "aaaa"); DispatchSpecimenWrapper ds1 = new DispatchSpecimenWrapper( appService); ds1.setSpecimen(newSpec); DispatchSpecimenWrapper ds2 = new DispatchSpecimenWrapper( appService); ds2.setSpecimen(newSpec); ob1.addToDispatchSpecimenCollection(Arrays.asList(ds1)); ob2.addToDispatchSpecimenCollection(Arrays.asList(ds2)); ob1.persist(); System.out.println("test 1 saved successfully"); Thread.sleep(1000); ob2.persist(); System.out.println("test 2 saved successfully"); } catch (Exception e) { e.printStackTrace(); SpecimenWrapper ob; try { ob = SpecimenWrapper.getSpecimen(appService, "aaaa"); System.out.println(ob.getCurrentCenter()); } catch (BiobankCheckException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } catch (ApplicationException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } catch (Exception ex) { // TODO Auto-generated catch block ex.printStackTrace(); } } } }