Project

General

Profile

« Previous | Next » 

Revision 8746

first pass at allowing admins to update DOI registration. This only acts on EML objects at the moment and is meant to illustrate one mechanism for updating the DOIs. https://projects.ecoinformatics.org/ecoinfo/issues/6530

View differences:

src/edu/ucsb/nceas/metacat/client/MetacatClient.java
674 674
    	 
675 675
    	HttpPost post = new HttpPost(metacatUrl);
676 676
    	MultipartEntity entity = new MultipartEntity(HttpMultipartMode.BROWSER_COMPATIBLE);
677
    	 
677
    	
678 678
    	// For File parameters
679 679
    	InputStreamBody content = null;
680 680
    	if (size < 0) {
src/edu/ucsb/nceas/metacat/replication/ReplicationService.java
86 86
import edu.ucsb.nceas.metacat.accesscontrol.AccessControlForSingleFile;
87 87
import edu.ucsb.nceas.metacat.accesscontrol.PermOrderException;
88 88
import edu.ucsb.nceas.metacat.admin.upgrade.RemoveInvalidReplicas;
89
import edu.ucsb.nceas.metacat.admin.upgrade.UpdateDOI;
89 90
import edu.ucsb.nceas.metacat.admin.upgrade.dataone.GenerateORE;
90 91
import edu.ucsb.nceas.metacat.admin.upgrade.dataone.GenerateSystemMetadata;
91 92
import edu.ucsb.nceas.metacat.client.InsufficientKarmaException;
......
413 414
				gore.upgrade();
414 415
				out.write("Generated ORE maps for server " + serverid);
415 416
				
417
			} else if (subaction.equals("updatedoi")) {
418
				UpdateDOI udoi = new UpdateDOI();
419
				int serverLocation = -1;
420
				String serverid = ((String[]) params.get("serverid"))[0];
421
				serverLocation = Integer.parseInt(serverid);
422
				udoi.setServerLocation(serverLocation );
423
				udoi.upgrade();
424
				out.write("Generated ORE maps for server " + serverid);
425
				
416 426
			} else if (subaction.equals("removeinvalidreplicas")) {
417 427
				RemoveInvalidReplicas rir = new RemoveInvalidReplicas();
418 428
				int serverLocation = -1;
......
474 484
			if (showGenerateSystemMetadata) {
475 485
				out.write("<td><b>System Metadata</b></td>");
476 486
				out.write("<td><b>ORE Maps</b></td>");
487
				out.write("<td><b>DOI Registrations</b></td>");
477 488
				out.write("<td><b>Invalid Replicas</b></td>");
478 489
			}
479 490
			out.write("<td><b>Sync Access Policies</b></td>");
......
509 520
					out.write("<input type='submit' value='Generate ORE'/>");
510 521
					out.write("</form></td>");
511 522
					
523
					// for DOI updating
524
					out.write("<td><form action='" + request.getContextPath() + "/admin'>");
525
					out.write("<input name='serverid' type='hidden' value='" + serverId + "'/>");
526
					out.write("<input name='configureType' type='hidden' value='replication'/>");
527
					out.write("<input name='action' type='hidden' value='servercontrol'/>");
528
					out.write("<input name='subaction' type='hidden' value='updatedoi'/>");
529
					out.write("<input type='submit' value='Update DOIs'/>");
530
					out.write("</form></td>");
531
					
512 532
					// for invalid replicas
513 533
					out.write("<td><form action='" + request.getContextPath() + "/admin'>");
514 534
					out.write("<input name='serverid' type='hidden' value='" + serverId + "'/>");

Also available in: Unified diff