Changeset 4035
- Timestamp:
- Dec 5, 2007, 9:13:35 AM (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/clients/migrate/net/sf/basedb/clients/migrate/UploadFileTransfer.java
r3824 r4035 259 259 // identifier 260 260 String md5 = QUICK_TRANSFER ? fileName : md5sum(location); 261 if (md5 != null) 262 { 263 File file = getFileByMd5(dc, user, md5); 264 if (file == null) 265 { 266 Directory homeDir = user.getHomeDirectory(); 267 if (homeDir == null) 268 { 269 log.info("...upload related files"); 270 { 271 log.debug("User " + user.getName() + " is missing a home directory"); 272 // Something is wrong here homeDir is not null when you 273 // look through the web interface 274 // homeDir = Directory.createHomeDirectory(dc, user, 275 // true); 276 // dc.saveItem(homeDir); 277 } 278 } 279 int prefix = 0; 280 String prefixedFileName = fileName; 281 while (File.exists(dc, homeDir, prefixedFileName)) 282 { 283 prefixedFileName = prefix + "_" + fileName; 284 prefix++; 285 } 286 // All files are stored in the users homedirectory 287 file = File.getNew(dc, homeDir); 288 setCommonItemData(dc, file, rs); 289 file.setName(prefixedFileName); // Reset the filename incase 290 // we've prefixed it in the 291 // above while loop 292 dc.saveItem(file); 293 log.debug("File item is saved into BASE2"); 294 transferFile(file, location, md5); 295 if (createRawBioAssay || createPrintmap) file.setWriteProtected(true); 296 commit(dc); 297 String fileMd5 = file.getMd5(); 298 if (fileMd5 != null) 299 { 300 // We assume that each file generates a unique md5sum 301 md5ToIdMap.put( 302 user.getId() + "_" + fileMd5, file.getId()); 303 } 304 if (log.isDebugEnabled()) 305 { 306 log.debug("Transfered File: " + file.getName() + "\tBASE1 id(" + rs.getInt(1) + ")"); 307 } 308 } 309 else 310 { 311 log.info( file.getName() + " already exists"); 312 } 313 if (createProtocol) 314 { 315 protocolFileMap.put(rs.getInt(1), file.getId()); 316 } 317 if (createImage) 318 { 319 imageFileMap.put(rs.getInt(1), file.getId()); 320 } 321 if (createRawBioAssay) 322 { 323 rawBioAssayFileMap.put(rs.getInt(1), file.getId()); 324 } 325 if (createPrintmap) 326 { 327 printmapFileMap.put(rs.getInt(1), file.getId()); 328 } 329 } 330 else 261 if (md5 == null) 331 262 { 332 263 log.debug("Couldn't get md5 for file: " + fileName + ":" + rs.getString(ID)); 333 264 log.warn("File:" + fileName + " with Base1Id:" + rs.getString(ID) + " will not be uploaded to BASE2"); 265 md5 = fileName; 266 } 267 268 File file = getFileByMd5(dc, user, md5); 269 if (file == null) 270 { 271 Directory homeDir = user.getHomeDirectory(); 272 if (homeDir == null) 273 { 274 log.info("...upload related files"); 275 { 276 log.debug("User " + user.getName() + " is missing a home directory"); 277 // Something is wrong here homeDir is not null when you 278 // look through the web interface 279 // homeDir = Directory.createHomeDirectory(dc, user, 280 // true); 281 // dc.saveItem(homeDir); 282 } 283 } 284 int prefix = 0; 285 String prefixedFileName = fileName; 286 while (File.exists(dc, homeDir, prefixedFileName)) 287 { 288 prefixedFileName = prefix + "_" + fileName; 289 prefix++; 290 } 291 // All files are stored in the users homedirectory 292 file = File.getNew(dc, homeDir); 293 setCommonItemData(dc, file, rs); 294 file.setName(prefixedFileName); // Reset the filename incase 295 // we've prefixed it in the 296 // above while loop 297 dc.saveItem(file); 298 log.debug("File item is saved into BASE2"); 299 transferFile(file, location, md5); 300 if (createRawBioAssay || createPrintmap) file.setWriteProtected(true); 301 commit(dc); 302 String fileMd5 = file.getMd5(); 303 if (fileMd5 != null) 304 { 305 // We assume that each file generates a unique md5sum 306 md5ToIdMap.put( 307 user.getId() + "_" + fileMd5, file.getId()); 308 } 309 if (log.isDebugEnabled()) 310 { 311 log.debug("Transfered File: " + file.getName() + "\tBASE1 id(" + rs.getInt(1) + ")"); 312 } 313 } 314 else 315 { 316 log.info( file.getName() + " already exists"); 317 } 318 if (createProtocol) 319 { 320 protocolFileMap.put(rs.getInt(1), file.getId()); 321 } 322 if (createImage) 323 { 324 imageFileMap.put(rs.getInt(1), file.getId()); 325 } 326 if (createRawBioAssay) 327 { 328 rawBioAssayFileMap.put(rs.getInt(1), file.getId()); 329 } 330 if (createPrintmap) 331 { 332 printmapFileMap.put(rs.getInt(1), file.getId()); 334 333 } 335 334 }
Note: See TracChangeset
for help on using the changeset viewer.