/** Recursively save all child elements and then call ObjBase to save itself. */ @Override public synchronized boolean save(ClothoConnection conn) { System.out.println("============ Starting plasmidSample save"); if (!isChanged()) { System.out.println("plasmidSample didn't require saving"); return true; } if (Collector.isLocal(_pSampleDatum._plasmidUUID)) { Plasmid plas = getPlasmid(); if (!plas.isInDatabase()) { if (!plas.save(conn)) { return false; } } } if (Collector.isLocal(_pSampleDatum._sourceStrainUUID)) { Strain st = getSourceStrain(); if (!st.isInDatabase()) { if (!st.save(conn)) { return false; } } } return super.save(conn); }
/** * Private Constructor for a new Sample generated from scratch, use factory method * generatePlasmidSample * * @param myplasmid the Plasmid ("DNA") within the Sample * @param mycell the Strain from which the Plasmid is derived * @param mycontainer the Container the Sample is being put in * @param myvolume how many uL of liquid are in the new Sample * @param author who is creating the Sample */ private PlasmidSample(Plasmid myplasmid, Strain mycell, double myvolume, Person author) { super(myplasmid.getName(), myvolume, author); _pSampleDatum._plasmidUUID = myplasmid.getUUID(); if (mycell != null) { _pSampleDatum._sourceStrainUUID = mycell.getUUID(); } }
public void changePlasmid(Plasmid newplas) { // DO A CHECK OF WHETHER THIS STRAIN IS LOCKED OR NOT if (newplas == null) { fireData(new RefreshEvent(this, RefreshEvent.Condition.PLASMID_CHANGED)); return; } _pSampleDatum._plasmidUUID = newplas.getUUID(); setChanged(org.clothocore.api.dnd.RefreshEvent.Condition.PLASMID_CHANGED); }
private static Entry infoToPlasmidForField(Entry entry, String value, EntryField field) { if (!entry.getRecordType().equalsIgnoreCase(EntryType.PLASMID.toString())) return entry; Plasmid plasmid = (Plasmid) entry; switch (field) { case BACKBONE: plasmid.setBackbone(value); return plasmid; case PROMOTERS: plasmid.setPromoters(value); return plasmid; case REPLICATES_IN: plasmid.setReplicatesIn(value); return plasmid; case CIRCULAR: plasmid.setCircular( "yes".equalsIgnoreCase(value) || "true".equalsIgnoreCase(value) || "circular".equalsIgnoreCase(value)); return plasmid; case ORIGIN_OF_REPLICATION: plasmid.setOriginOfReplication(value); return plasmid; default: return plasmid; } }
protected static Entry setPlasmidFields(PlasmidData plasmidData, Entry entry) { if (plasmidData == null) return entry; Plasmid plasmid = (Plasmid) entry; if (plasmidData.getBackbone() != null) plasmid.setBackbone(plasmidData.getBackbone()); if (plasmidData.getOriginOfReplication() != null) plasmid.setOriginOfReplication(plasmidData.getOriginOfReplication()); if (plasmidData.getPromoters() != null) plasmid.setPromoters(plasmidData.getPromoters()); if (plasmidData.getReplicatesIn() != null) plasmid.setReplicatesIn(plasmidData.getReplicatesIn()); if (plasmidData.getCircular() != null) plasmid.setCircular(plasmidData.getCircular()); return entry; }