Changeset 4891
- Timestamp:
- Apr 7, 2009, 9:48:59 AM (14 years ago)
- Location:
- trunk/src/plugins/core/net/sf/basedb/plugins/batchimport
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/plugins/core/net/sf/basedb/plugins/batchimport/AbstractItemImporter.java
r4835 r4891 354 354 355 355 // Everything is ok, save values 356 /*357 if (forJob)358 {359 storeValue(wrapper, request, fileParameter);360 storeValue(wrapper, request, ri.getParameter("mode"));361 }362 storeValue(wrapper, request, dataHeaderRegexpParameter);363 storeValue(wrapper, request, dataSplitterRegexpParameter);364 storeValue(wrapper, request, trimQuotesParameter);365 storeValue(wrapper, request, ignoreRegexpParameter);366 storeValue(wrapper, request, dataFooterRegexpParameter);367 storeValue(wrapper, request, minDataColumnsParameter);368 storeValue(wrapper, request, maxDataColumnsParameter);369 storeValue(wrapper, request, ri.getParameter(Parameters.CHARSET_PARAMETER));370 storeValue(wrapper, request, ri.getParameter(Parameters.DECIMAL_SEPARATOR_PARAMETER));371 storeValue(wrapper, request, ri.getParameter(Parameters.DATE_FORMAT_PARAMETER));372 373 // Identification method374 storeValue(wrapper, request, ri.getParameter("idMethod"));375 if (forJob)376 {377 storeValue(wrapper, request, ri.getParameter("includeMine"));378 storeValue(wrapper, request, ri.getParameter("includeSharedTo"));379 storeValue(wrapper, request, ri.getParameter("includeInProject"));380 storeValue(wrapper, request, ri.getParameter("includeOthers"));381 }382 383 // Column mappings384 storeValue(wrapper, request, complexMappings);385 */386 356 for (PluginParameter pp : ri.getParameters()) 387 357 { 388 // if (pp.getName().contains("ColumnMapping"))389 358 if (pp.getParameterType() != null) 390 359 { … … 392 361 } 393 362 } 394 // storeValue(wrapper, request, ri.getParameter("dataDirectory"));395 363 if (forJob) 396 364 { … … 413 381 414 382 // Error handling 415 storeValue(job, request, ri.getParameter(Parameters.LOGFILE_PARAMETER));416 383 response.setDryRun(Boolean.TRUE.equals(request.getParameterValue(Parameters.DRY_RUN_PARAMETER))); 417 storeValue(job, request, defaultErrorParameter); 418 storeValue(job, request, itemNotFoundErrorParameter); 419 storeValue(job, request, itemExistsErrorParameter); 420 storeValue(job, request, multipleItemsFoundErrorParameter); 421 storeValue(job, request, referenceNotFoundErrorParameter); 422 storeValue(job, request, multipleReferencesFoundErrorParameter); 423 storeValue(job, request, ri.getParameter(Parameters.INVALID_USE_OF_NULL_ERROR)); 424 storeValue(job, request, stringTooLongErrorParameter); 425 storeValue(job, request, numberFormatErrorParameter); 426 storeValue(job, request, numberOutOfRangeErrorParameter); 427 storeValue(job, request, noWritePermissionToItemErrorParameter); 428 storeValue(job, request, noUsePermissionToReferenceErrorParameter); 429 384 for (PluginParameter pp : ri.getParameters()) 385 { 386 if (pp.getParameterType() != null) 387 { 388 storeValue(job, request, ri.getParameter(pp.getName())); 389 } 390 } 391 430 392 // Save context info 431 393 response.setDone("Job configuration complete", Job.ExecutionTime.SHORT); -
trunk/src/plugins/core/net/sf/basedb/plugins/batchimport/HybridizationImporter.java
r4837 r4891 22 22 package net.sf.basedb.plugins.batchimport; 23 23 24 import java.util.Arrays; 24 25 import java.util.Collections; 25 26 import java.util.List; … … 31 32 import net.sf.basedb.core.Hardware; 32 33 import net.sf.basedb.core.Hybridization; 34 import net.sf.basedb.core.InvalidDataException; 33 35 import net.sf.basedb.core.Item; 34 36 import net.sf.basedb.core.ItemQuery; … … 39 41 import net.sf.basedb.core.Protocol; 40 42 import net.sf.basedb.core.ProtocolType; 43 import net.sf.basedb.core.StringParameterType; 41 44 import net.sf.basedb.core.SystemItems; 42 45 import net.sf.basedb.core.Version; … … 116 119 ); 117 120 121 private static final PluginParameter<String> multipleArrayIndexErrorParameter = 122 new PluginParameter<String>( 123 "multipleArrayIndexError", 124 "Labeled extract on multiple arrays", 125 "What to do if trying to assign a labeled extract to more than one array " + 126 "on a multi-array hybridization\n\n"+ 127 "ignore = Update the array index overriding previous settings\n" + 128 "fail = Stop with an error message", 129 new StringParameterType(255, "fail", false, 1, 0, 0, 130 Arrays.asList( new String[] { "ignore", "fail"} )) 131 ); 132 133 118 134 public HybridizationImporter() 119 135 {} … … 156 172 private Mapper arrayIndexMapper; 157 173 private Mapper arraySlideMapper; 174 private boolean failIfMultipleArrayIndex; 158 175 159 176 /** … … 194 211 } 195 212 213 @Override 214 protected void addMoreErrorParameters(List<PluginParameter<?>> parameters) 215 { 216 parameters.add(multipleArrayIndexErrorParameter); 217 } 218 196 219 /** 197 220 Calls {@link Hybridization#getQuery()}. … … 218 241 arrayIndexMapper = getMapper(ffp, (String)job.getValue("arrayIndexColumnMapping"), null, null); 219 242 arraySlideMapper = getMapper(ffp, (String)job.getValue("arraySlideColumnMapping"), null, null); 243 this.failIfMultipleArrayIndex = "fail".equals(getErrorOption("multipleArrayIndexError")); 220 244 } 221 245 … … 294 318 { 295 319 BioMaterialEvent creationEvent = hyb.getCreationEvent(); 320 int currentIndex = creationEvent.getSourceGroup(parent); 296 321 Float usedQuantity = usedQuantityMapper == null ? 297 322 null : usedQuantityMapper.getFloat(data); … … 300 325 { 301 326 Integer arrayIndex = arrayIndexMapper.getInt(data); 302 if (arrayIndex != null) creationEvent.setSourceGroup(parent, arrayIndex); 327 if (arrayIndex != null) 328 { 329 if (currentIndex != 0 && arrayIndex != currentIndex && failIfMultipleArrayIndex) 330 { 331 throw new InvalidDataException("Labeled extract '" + parent.getName() + 332 "' is already associated with array index " + currentIndex + 333 " on hybridization '" + hyb.getName() + "'. It is not possible to " + 334 "also associate it with array index " + arrayIndex); 335 } 336 creationEvent.setSourceGroup(parent, arrayIndex); 337 } 303 338 } 304 339 }
Note: See TracChangeset
for help on using the changeset viewer.