From a7e49e71499dce37b62205f29b808bab7535a1f8 Mon Sep 17 00:00:00 2001 From: kohleman <kohleman> Date: Mon, 22 Aug 2011 16:13:03 +0000 Subject: [PATCH] LMS-2445-Fix: Part2, needed for multiple parents SVN: 22581 --- .../email/EntityTrackingEmailGenerator.java | 52 +++++++++++-------- 1 file changed, 30 insertions(+), 22 deletions(-) diff --git a/deep_sequencing_unit/source/java/ch/ethz/bsse/cisd/dsu/tracking/email/EntityTrackingEmailGenerator.java b/deep_sequencing_unit/source/java/ch/ethz/bsse/cisd/dsu/tracking/email/EntityTrackingEmailGenerator.java index 53904165301..9d387e27709 100644 --- a/deep_sequencing_unit/source/java/ch/ethz/bsse/cisd/dsu/tracking/email/EntityTrackingEmailGenerator.java +++ b/deep_sequencing_unit/source/java/ch/ethz/bsse/cisd/dsu/tracking/email/EntityTrackingEmailGenerator.java @@ -44,7 +44,7 @@ public class EntityTrackingEmailGenerator implements IEntityTrackingEmailGenerat private static final String NOTIFICATION_EMAIL_SUBJECT = "notification-email-subject"; private static final String AFFILIATION_NOTIFICATION_EMAIL_CONTACT_SUFFIX = - "-affiliation-notification-email-contact"; + "-affiliation-notification-email-contact"; private final String from; @@ -62,7 +62,7 @@ public class EntityTrackingEmailGenerator implements IEntityTrackingEmailGenerat this.template = template; final Map<String, String> recipientsByAffiliation = - retrieveRecipientsByAffiliation(properties); + retrieveRecipientsByAffiliation(properties); EntityTrackingEmailDataManager.initialize(recipientsByAffiliation); } @@ -77,10 +77,10 @@ public class EntityTrackingEmailGenerator implements IEntityTrackingEmailGenerat if (propertyKey.endsWith(AFFILIATION_NOTIFICATION_EMAIL_CONTACT_SUFFIX)) { final String affiliation = - propertyKey.substring(0, propertyKey.length() - - AFFILIATION_NOTIFICATION_EMAIL_CONTACT_SUFFIX.length()); + propertyKey.substring(0, propertyKey.length() + - AFFILIATION_NOTIFICATION_EMAIL_CONTACT_SUFFIX.length()); final String affiliationRecipient = - PropertyUtils.getMandatoryProperty(properties, propertyKey); + PropertyUtils.getMandatoryProperty(properties, propertyKey); result.put(affiliation, affiliationRecipient); } } @@ -90,7 +90,7 @@ public class EntityTrackingEmailGenerator implements IEntityTrackingEmailGenerat public List<EmailWithSummary> generateEmails(TrackedEntities trackedEntities) { final Collection<EntityTrackingEmailData> emailDataGroupedByRecipient = - EntityTrackingEmailDataManager.groupByRecipient(trackedEntities); + EntityTrackingEmailDataManager.groupByRecipient(trackedEntities); final List<EmailWithSummary> results = new ArrayList<EmailWithSummary>(); for (EntityTrackingEmailData emailData : emailDataGroupedByRecipient) @@ -129,10 +129,10 @@ public class EntityTrackingEmailGenerator implements IEntityTrackingEmailGenerat private static final char SUBSECTION_SEPARATOR_CHAR = '-'; private static final String SECTION_SEPARATOR_LINE = - createSeparatorLine(SECTION_SEPARATOR_CHAR); + createSeparatorLine(SECTION_SEPARATOR_CHAR); private static final String SUBSECTION_SEPARATOR_LINE = - createSeparatorLine(SUBSECTION_SEPARATOR_CHAR); + createSeparatorLine(SUBSECTION_SEPARATOR_CHAR); private final static String EXTERNAL_SAMPLE_NAME_PROPERTY_CODE = "EXTERNAL_SAMPLE_NAME"; @@ -213,31 +213,39 @@ public class EntityTrackingEmailGenerator implements IEntityTrackingEmailGenerat private static void appendDataSetDetails(StringBuilder sb, ExternalData dataSet) { + Collection<Sample> sequencingSamples; + Sample flowLaneSample = dataSet.getSample(); assert flowLaneSample != null; - Sample sequencingSample = flowLaneSample.getGeneratedFrom(); - assert sequencingSample != null; - String externalSampleName = getExternalSampleName(sequencingSample); + sequencingSamples = flowLaneSample.getParents(); + assert sequencingSamples != null; + + for (Sample sequencingSample : sequencingSamples) { + - // link to openbis - appendAttribute(sb, String.format( - "You can download results for external sample named '%s' at", - externalSampleName), dataSet.getPermlink()); + String externalSampleName = getExternalSampleName(sequencingSample); - // data set properties - appendProperties(sb, dataSet.getProperties()); + // link to openbis + appendAttribute(sb, String.format( + "You can download results for external sample named '%s' at", + externalSampleName), dataSet.getPermlink()); + + // data set properties + appendProperties(sb, dataSet.getProperties()); + + // sequencing sample info + appendAttribute(sb, String.format( + "Meta data of Sequencing sample '%s' are available here", externalSampleName), + sequencingSample.getPermlink()); + } - // sequencing sample info - appendAttribute(sb, String.format( - "Meta data of Sequencing sample '%s' are available here", externalSampleName), - sequencingSample.getPermlink()); } private static String getExternalSampleName(Sample sequencingSample) { String externalSampleName = - tryGetSamplePropertyValue(sequencingSample, EXTERNAL_SAMPLE_NAME_PROPERTY_CODE); + tryGetSamplePropertyValue(sequencingSample, EXTERNAL_SAMPLE_NAME_PROPERTY_CODE); assert externalSampleName != null; return externalSampleName; } -- GitLab