View Javadoc

1   /*
2    * 
3    * 
4    */
5   package oscon2006.web;
6   
7   import oscon2006.common.*;
8   import wicket.markup.html.form.*;
9   import wicket.model.*;
10  import java.util.*;
11  
12  public class DatabaseQueryForm extends BaseForm
13  {
14  	private RadioChoice databaseChoice = new RadioChoice("databaseChoice");
15  	private DropDownChoice outputChoice = new DropDownChoice("outputChoice");
16  	private static final String EMPLOYEES = "Employees";
17  	private static final String PRODUCTS = "Products";
18  	
19  	public DatabaseQueryForm(String componentName)
20  	{
21  		super(componentName);
22  		
23  		List<String> dbChoices = new ArrayList<String>();
24  		dbChoices.add(EMPLOYEES);
25  		dbChoices.add(PRODUCTS);
26  	
27  		databaseChoice.setModel(new Model(EMPLOYEES));
28  		databaseChoice.setChoices(dbChoices);
29  		databaseChoice.setNullValid(false);
30  		databaseChoice.setRequired(true);
31  		
32  		outputChoice.setModel(new Model(OutputFormat.EXCEL));
33  		outputChoice.setChoices(Arrays.asList(OutputFormat.values()));
34  		outputChoice.setNullValid(false);
35  		outputChoice.setRequired(true);
36  		
37  		add(databaseChoice);
38  		add(outputChoice);
39  	}
40  	
41  	
42  	public final void onSubmit()
43  	{
44  		
45  		DAO dao = new DAO();
46  		
47  		byte[] filedata = null;
48  		String filename = null;
49  		
50  		String selection = (String) databaseChoice.getConvertedInput();
51  		
52  		OutputFormat format = (OutputFormat) outputChoice.getModelObject(); 
53  			
54  		if (PRODUCTS.equals(selection))
55  		{
56  			filedata = dao.getProducts(format);
57  			filename = "products." + format.getExtension();
58  		}
59  		else if (EMPLOYEES.equals(selection))
60  		{
61  			filedata = dao.getEmployees(format);
62  			filename = "employees." + format.getExtension();
63  		}
64  		else
65  		{
66  			throw new RuntimeException(selection);
67  		}
68  		
69  		setResponse(filedata, filename);
70  	}
71  	
72  }