View Javadoc

1   package uk.ac.cam.spectra.spectrasub.pages;
2   
3   import org.apache.log4j.Logger;
4   import org.apache.tapestry.IPage;
5   import org.apache.tapestry.IRequestCycle;
6   import org.apache.tapestry.annotations.InjectPage;
7   import org.apache.tapestry.event.PageBeginRenderListener;
8   import org.apache.tapestry.event.PageEvent;
9   
10  import uk.ac.cam.spectra.spectrasub.DataFile;
11  import uk.ac.cam.spectra.spectrasub.DataPackage;
12  import uk.ac.cam.spectra.spectrasub.NotFoundException;
13  import uk.ac.cam.spectra.spectrasub.components.UploadMessage.UploadInfo;
14  
15  public abstract class DataWarning extends BaseSubmissionPage implements
16  		PageBeginRenderListener {
17  	@SuppressWarnings("unused")
18  	private static final Logger LOG = Logger.getLogger(DataWarning.class);
19  
20  	public void pageBeginRender(PageEvent event) {
21  		if (getRequestCycle().isRewinding()) {
22  			// Can't do anything - don't have access to form properties
23  		} else {
24  			loadPackage();
25  		}
26  	}
27  
28  	public IPage doSubmit(IRequestCycle cycl) throws NotFoundException {
29  		if (getCancelled()) {
30  			return getUpload();
31  		}
32  		DataPackage pkg = loadPackage();
33  		if (pkg.getRemainingDataFiles().isEmpty()) {
34  			AddMetadata am = getAddMetadata();
35  			am.setPackageId(getPackageId());
36  			return am;
37  		} else {
38  			Upload h = getUpload();
39  			h.setPackageId(getPackageId());
40  			return h;
41  		}
42  	}
43  
44  	public abstract boolean getCancelled();
45  
46  	public void cancel() {
47  		setCancelled(true);
48  	}
49  
50  	public abstract void setCancelled(boolean b);
51  
52  	@InjectPage("AddMetadata")
53  	public abstract AddMetadata getAddMetadata();
54  
55  	@InjectPage("Upload")
56  	public abstract Upload getUpload();
57  
58  	public abstract String getWarning();
59  
60  	public abstract void setDataFile(DataFile df);
61  
62  	public abstract DataFile getDataFile();
63  
64  	public abstract UploadInfo getUploadInfo();
65  
66  	public abstract void setUploadInfo(UploadInfo info);
67  
68  	public boolean getDisplayNoCMLWarning() {
69  		return getDataFile().getConvertOnWarning();
70  	}
71  
72  	public boolean getDisplayNoInChIWarning() {
73  		return getDataFile().getCreateInChIOnWarning();
74  	}
75  }