public static GridPanel getSamplePairsByAnalysisPanel( List<FileGroup> analysisFileGroupList, Map<FileGroup, Sample> fileGroupHpa2SampleMap, Map<FileGroup, Sample> fileGroupMsp1SampleMap) { GridPanel panel = new GridPanel(); panel.setTitle("Sample Pairs"); panel.setResizable(true); panel.setMaximizable(true); panel.setOrder(1); GridContent content = new GridContent(); content.addDataFields(new GridDataField("Analysis", "String")); // dataIndex, datatype content.addDataFields( new GridDataField("Hpa2/Beta-GT Sample", "String")); // dataIndex, datatype content.addDataFields(new GridDataField("Msp1 Sample", "String")); // dataIndex, datatype content.addColumn( new GridColumn("Analysis", "Analysis", 500, 0)); // header,dataIndex width=250; flex=0 content.addColumn( new GridColumn( "Hpa2/Beta-GT Sample", "Hpa2/Beta-GT Sample", 250, 0)); // header,dataIndex width=250; flex=0 content.addColumn( new GridColumn("Msp1 Sample", "Msp1 Sample", 1)); // header,dataIndex width=250; flex=0 // create rows with information for (FileGroup fileGroup : analysisFileGroupList) { if (fileGroupHpa2SampleMap.isEmpty()) { logger.debug("fileGroupHpa2SampleMap is empty "); } List<String> row = new ArrayList<String>(); row.add(fileGroup.getDescription()); Sample hpa2Sample = fileGroupHpa2SampleMap.get(fileGroup); String hpa2SampleName = "Unexpected Error"; if (hpa2Sample != null) { hpa2SampleName = hpa2Sample.getName(); } else { logger.debug("hpa2Sample is null"); } Sample msp1Sample = fileGroupMsp1SampleMap.get(fileGroup); String msp1SampleName = "Standard Reference"; if (msp1Sample != null && msp1Sample.getId().intValue() > 0) { msp1SampleName = msp1Sample.getName(); } logger.debug("hpa2SampleName = " + hpa2SampleName); logger.debug("msp1SampleName = " + msp1SampleName); row.add(hpa2SampleName); row.add(msp1SampleName); content.addDataRow(row); } panel.setContent(content); return panel; }
@Override public String getTypeOfHelpLibrary(Sample sample) { try { return (String) MetaHelper.getMetaValue( HELPTAG_LIB_AREA, RESTRICTION_ENZYME_META_KEY, sample.getSampleMeta()); } catch (MetadataException e) { } // not found return null; }
@Override public String getTypeOfHelpLibraryRequestedForMacromolecule(Sample sample) { try { return (String) MetaHelper.getMetaValue( HELPTAG_DNA_AREA, TYPE_OF_HELP_LIBRARY_REQUESTED_META_KEY, sample.getSampleMeta()); } catch (MetadataException e) { } // not found return null; }
@Override public boolean isBetaGTMspI(Sample s) { String enzymeString; try { if (s.getParentId() != null) { // if it has a parent sample, which means it's a facility library, use its parent sample to // check for library type s = sampleService.getSampleById(s.getParentId()); } if (!s.getSampleType().getIName().equalsIgnoreCase("dna")) { // not dna, so must be library enzymeString = (String) MetaHelper.getMetaValue( HELPTAG_LIB_AREA, RESTRICTION_ENZYME_META_KEY, s.getSampleMeta()); } else { // genomic DNA enzymeString = (String) MetaHelper.getMetaValue( HELPTAG_DNA_AREA, TYPE_OF_HELP_LIBRARY_REQUESTED_META_KEY, s.getSampleMeta()); } if (enzymeString.equals("beta-GT-MspI")) { return true; } } catch (MetadataException e) { // not found logger.debug( "Restriction Enzyme Meta (and libraryToCreate meta) not found for Sample id = " + s.getId()); } return false; }
public static GridPanel getLibrariesAndHcountFilesUsedByAnalysisPanel( List<FileGroup> analysisFileGroupList, Map<FileGroup, List<Sample>> fileGroupLibrariesUsedMap, Map<FileGroup, List<FileHandle>> fileGroupHcountFilesUsedMap) { GridPanel panel = new GridPanel(); panel.setTitle("Libraries & Hcount Files Used"); panel.setResizable(true); panel.setMaximizable(true); panel.setOrder(1); GridContent content = new GridContent(); content.addDataFields(new GridDataField("Analysis", "String")); // dataIndex, datatype content.addDataFields(new GridDataField("Libraries Used", "String")); // dataIndex, datatype content.addDataFields(new GridDataField("Hcount Files Used", "String")); // dataIndex, datatype content.addColumn( new GridColumn("Analysis", "Analysis", 500, 0)); // header,dataIndex width=500; flex=0 content.addColumn( new GridColumn( "Libraries Used", "Libraries Used", 150, 0)); // header,dataIndex width=300; flex=0 content.addColumn( new GridColumn("Hcount Files Used", "Hcount Files Used", 1)); // header,dataIndex flex=1 // create rows with information for (FileGroup fileGroup : analysisFileGroupList) { List<String> row = new ArrayList<String>(); row.add(fileGroup.getDescription()); List<Sample> libraries = fileGroupLibrariesUsedMap.get(fileGroup); if (libraries.isEmpty()) { row.add("Error"); } else { StringBuilder libraryNamesAsStringBuilder = new StringBuilder(); for (Sample library : libraries) { if (libraryNamesAsStringBuilder.length() > 0) { libraryNamesAsStringBuilder.append("<br />"); } libraryNamesAsStringBuilder.append(library.getName()); } row.add(new String(libraryNamesAsStringBuilder)); } List<FileHandle> bamFiles = fileGroupHcountFilesUsedMap.get(fileGroup); if (bamFiles.isEmpty()) { row.add("Error"); } else { StringBuilder fileNamesAsStringBuilder = new StringBuilder(); for (FileHandle fh : bamFiles) { if (fileNamesAsStringBuilder.length() > 0) { fileNamesAsStringBuilder.append("<br />"); } fileNamesAsStringBuilder.append(fh.getFileName()); } row.add(new String(fileNamesAsStringBuilder)); } content.addDataRow(row); } panel.setContent(content); return panel; }