You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openmeetings.apache.org by so...@apache.org on 2013/05/30 04:40:31 UTC

svn commit: r1487709 - in /openmeetings/trunk/singlewebapp/src/org/apache/openmeetings: servlet/outputhandler/LangExport.java web/admin/backup/BackupPanel.java web/admin/labels/LangPanel.java web/common/UploadableProfileImagePanel.java

Author: solomax
Date: Thu May 30 02:40:30 2013
New Revision: 1487709

URL: http://svn.apache.org/r1487709
Log:
[OPENMEETINGS-642] code clean-up

Modified:
    openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/servlet/outputhandler/LangExport.java
    openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/backup/BackupPanel.java
    openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/labels/LangPanel.java
    openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/common/UploadableProfileImagePanel.java

Modified: openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/servlet/outputhandler/LangExport.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/servlet/outputhandler/LangExport.java?rev=1487709&r1=1487708&r2=1487709&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/servlet/outputhandler/LangExport.java (original)
+++ openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/servlet/outputhandler/LangExport.java Thu May 30 02:40:30 2013
@@ -20,6 +20,7 @@ package org.apache.openmeetings.servlet.
 
 import java.io.IOException;
 import java.io.OutputStream;
+import java.io.Writer;
 import java.util.Date;
 import java.util.List;
 
@@ -203,8 +204,15 @@ public class LangExport extends BaseHttp
 		return document;
 	}
 
-	public static void serializetoXML(OutputStream out, String aEncodingScheme,
-			Document doc) throws Exception {
+	public static void serializetoXML(Writer out, String aEncodingScheme, Document doc) throws Exception {
+		OutputFormat outformat = OutputFormat.createPrettyPrint();
+		outformat.setEncoding(aEncodingScheme);
+		XMLWriter writer = new XMLWriter(out, outformat);
+		writer.write(doc);
+		writer.flush();
+	}
+	
+	public static void serializetoXML(OutputStream out, String aEncodingScheme, Document doc) throws Exception {
 		OutputFormat outformat = OutputFormat.createPrettyPrint();
 		outformat.setEncoding(aEncodingScheme);
 		XMLWriter writer = new XMLWriter(out, outformat);

Modified: openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/backup/BackupPanel.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/backup/BackupPanel.java?rev=1487709&r1=1487708&r2=1487709&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/backup/BackupPanel.java (original)
+++ openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/backup/BackupPanel.java Thu May 30 02:40:30 2013
@@ -18,12 +18,14 @@
  */
 package org.apache.openmeetings.web.admin.backup;
 
+import static org.apache.openmeetings.OpenmeetingsVariables.webAppRootKey;
+import static org.apache.openmeetings.web.app.Application.getBean;
+
 import java.io.File;
 import java.io.IOException;
 import java.text.DecimalFormat;
 import java.util.Date;
 
-import org.apache.openmeetings.OpenmeetingsVariables;
 import org.apache.openmeetings.data.basic.dao.ConfigurationDao;
 import org.apache.openmeetings.servlet.outputhandler.BackupExport;
 import org.apache.openmeetings.servlet.outputhandler.BackupImportController;
@@ -31,7 +33,6 @@ import org.apache.openmeetings.utils.Imp
 import org.apache.openmeetings.utils.OmFileHelper;
 import org.apache.openmeetings.utils.math.CalendarPatterns;
 import org.apache.openmeetings.web.admin.AdminPanel;
-import org.apache.openmeetings.web.app.Application;
 import org.apache.openmeetings.web.util.AjaxDownload;
 import org.apache.wicket.ajax.AjaxRequestTarget;
 import org.apache.wicket.ajax.markup.html.form.AjaxButton;
@@ -55,9 +56,7 @@ import org.slf4j.Logger;
  * 
  */
 public class BackupPanel extends AdminPanel {
-
-	private static final Logger log = Red5LoggerFactory.getLogger(
-			BackupPanel.class, OpenmeetingsVariables.webAppRootKey);
+	private static final Logger log = Red5LoggerFactory.getLogger(BackupPanel.class, webAppRootKey);
 
 	private static final long serialVersionUID = -1L;
 
@@ -84,8 +83,7 @@ public class BackupPanel extends AdminPa
 			setMultiPart(true);
 
 			// set max upload size in form as info text
-			Long maxBytes = ImportHelper.getMaxUploadSize(Application
-					.getBean(ConfigurationDao.class));
+			Long maxBytes = ImportHelper.getMaxUploadSize(getBean(ConfigurationDao.class));
 			double megaBytes = maxBytes.doubleValue() / 1024 / 1024;
 			DecimalFormat formatter = new DecimalFormat("#,###.00");
 			add(new Label("MaxUploadSize", formatter.format(megaBytes)));
@@ -99,8 +97,7 @@ public class BackupPanel extends AdminPa
 			add(includeFilesInBackup);
 
 			// Set maximum size controlled by configuration
-			setMaxSize(Bytes.bytes(ImportHelper.getMaxUploadSize(Application
-					.getBean(ConfigurationDao.class))));
+			setMaxSize(Bytes.bytes(ImportHelper.getMaxUploadSize(getBean(ConfigurationDao.class))));
 
 			// Add a component to download a file without page refresh
 			final AjaxDownload download = new AjaxDownload();
@@ -121,7 +118,7 @@ public class BackupPanel extends AdminPa
 					File backupFile = new File(backup_dir, dateString + ".zip");
 
 					try {
-						Application.getBean(BackupExport.class).performExport(
+						getBean(BackupExport.class).performExport(
 								backupFile,
 								backup_dir,
 								includeFilesInBackup.getConvertedInput()
@@ -159,8 +156,7 @@ public class BackupPanel extends AdminPa
 							uploadFeedback.error("File is empty");
 							return;
 						}
-						Application.getBean(BackupImportController.class)
-								.performImport(upload.getInputStream());
+						getBean(BackupImportController.class).performImport(upload.getInputStream());
 					} catch (IOException e) {
 						log.error("IOException on panel backup upload ", e);
 						uploadFeedback.error(e);

Modified: openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/labels/LangPanel.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/labels/LangPanel.java?rev=1487709&r1=1487708&r2=1487709&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/labels/LangPanel.java (original)
+++ openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/admin/labels/LangPanel.java Thu May 30 02:40:30 2013
@@ -18,14 +18,16 @@
  */
 package org.apache.openmeetings.web.admin.labels;
 
-import java.io.File;
-import java.io.FileOutputStream;
+import static org.apache.openmeetings.OpenmeetingsVariables.webAppRootKey;
+import static org.apache.openmeetings.web.app.Application.getBean;
+
+import java.io.ByteArrayInputStream;
 import java.io.IOException;
-import java.io.OutputStream;
+import java.io.InputStream;
+import java.io.StringWriter;
 import java.util.Iterator;
 import java.util.List;
 
-import org.apache.openmeetings.OpenmeetingsVariables;
 import org.apache.openmeetings.data.basic.FieldLanguageDao;
 import org.apache.openmeetings.data.basic.FieldManager;
 import org.apache.openmeetings.data.basic.FieldValueDao;
@@ -36,8 +38,6 @@ import org.apache.openmeetings.servlet.o
 import org.apache.openmeetings.servlet.outputhandler.LangExport;
 import org.apache.openmeetings.web.admin.AdminPanel;
 import org.apache.openmeetings.web.admin.SearchableDataView;
-import org.apache.openmeetings.web.admin.backup.BackupPanel;
-import org.apache.openmeetings.web.app.Application;
 import org.apache.openmeetings.web.common.PagedEntityListPanel;
 import org.apache.openmeetings.web.data.DataViewContainer;
 import org.apache.openmeetings.web.data.OrderByBorder;
@@ -55,8 +55,8 @@ import org.apache.wicket.markup.html.for
 import org.apache.wicket.markup.html.form.upload.FileUploadField;
 import org.apache.wicket.markup.html.panel.FeedbackPanel;
 import org.apache.wicket.markup.repeater.Item;
-import org.apache.wicket.model.IModel;
-import org.apache.wicket.util.resource.FileResourceStream;
+import org.apache.wicket.util.resource.AbstractResourceStream;
+import org.apache.wicket.util.resource.ResourceStreamNotFoundException;
 import org.dom4j.Document;
 import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
@@ -71,8 +71,7 @@ import com.googlecode.wicket.jquery.ui.f
  * 
  */
 public class LangPanel extends AdminPanel {
-	private static final Logger log = Red5LoggerFactory.getLogger(
-			BackupPanel.class, OpenmeetingsVariables.webAppRootKey);
+	private static final Logger log = Red5LoggerFactory.getLogger(LangPanel.class, webAppRootKey);
 	
 	private static final long serialVersionUID = 5904180813198016592L;
 
@@ -81,7 +80,7 @@ public class LangPanel extends AdminPane
 	private LangForm langForm;
 	private FileUploadField fileUploadField;
 	// Create feedback panels
-	final FeedbackPanel importFeedback;
+	private final FeedbackPanel importFeedback = new FeedbackPanel("importFeedback");
 	
 	@Override
 	public void onMenuPanelLoad(AjaxRequestTarget target) {
@@ -92,11 +91,8 @@ public class LangPanel extends AdminPane
 	public LangPanel(String id) {
 		super(id);
 		// Create feedback panels
-		importFeedback = new FeedbackPanel("importFeedback");
-		importFeedback.setOutputMarkupId(true);
-		add(importFeedback);
-		FieldLanguageDao langDao = Application
-				.getBean(FieldLanguageDao.class);
+		add(importFeedback.setOutputMarkupId(true));
+		FieldLanguageDao langDao = getBean(FieldLanguageDao.class);
 		language = langDao.getFieldLanguageById(1L);
 
 		Fieldlanguagesvalues flv = new Fieldlanguagesvalues();
@@ -166,22 +162,7 @@ public class LangPanel extends AdminPane
 			}
 		});
 		langForm = new LangForm("langForm", listContainer, this);
-		fileUploadField = new FileUploadField("fileInput", new IModel<List<FileUpload>>() {
-			/**
-			 * 
-			 */
-			private static final long serialVersionUID = 2862135442385825549L;
-
-			public void detach() {
-			}
-			
-			public void setObject(List<FileUpload> object) {
-			}
-			
-			public List<FileUpload> getObject() {
-				return null;
-			}
-		});
+		fileUploadField = new FileUploadField("fileInput");
 		langForm.add(fileUploadField);
 		langForm.add(new UploadProgressBar("progress", langForm, fileUploadField));
 		fileUploadField.add(new AjaxFormSubmitBehavior(langForm, "onchange") {
@@ -195,7 +176,7 @@ public class LangPanel extends AdminPane
 						importFeedback.error("File is empty");
 						return;
 					}
-					Application.getBean(ImportController.class).importLanguage(language.getLanguage_id(), download.getInputStream());
+					getBean(ImportController.class).importLanguage(language.getLanguage_id(), download.getInputStream());
 				} catch (IOException e) {
 					log.error("IOException on panel language editor import ", e);
 					importFeedback.error(e);
@@ -218,32 +199,37 @@ public class LangPanel extends AdminPane
 
 			protected void onSubmit(AjaxRequestTarget target, Form<?> form) {
 
-				try {
-					List<Fieldlanguagesvalues> flvList = Application.getBean(FieldManager.class).getMixedFieldValuesList(language.getLanguage_id());
-
-					FieldLanguage fl = Application.getBean(FieldLanguageDao.class)
-							.getFieldLanguageById(language.getLanguage_id());
-					if (fl != null && flvList != null) {
-						Document doc = LangExport.createDocument(flvList, Application.getBean(FieldManager.class).getUntranslatedFieldValuesList(language.getLanguage_id()));
+				final List<Fieldlanguagesvalues> flvList = getBean(FieldManager.class).getMixedFieldValuesList(language.getLanguage_id());
 
-						String requestedFile = fl.getName() + ".xml";
-						OutputStream out = new FileOutputStream(requestedFile);
-
-						LangExport.serializetoXML(out, "UTF-8", doc);
-
-						out.flush();
-						out.close();
+				FieldLanguage fl = getBean(FieldLanguageDao.class).getFieldLanguageById(language.getLanguage_id());
+				if (fl != null && flvList != null) {
+					download.setFileName(fl.getName() + ".xml");
+					download.setResourceStream(new AbstractResourceStream() {
+						private static final long serialVersionUID = 1L;
+						private StringWriter sw;
+						private InputStream is;
 						
-						download.setFileName(requestedFile);
-						download.setResourceStream(new FileResourceStream(new File(requestedFile)));
-						download.initiate(target);
-					}
-				} catch (IOException e) {
-					log.error("IOException on panel language editor import ", e);
-					importFeedback.error(e);
-				} catch (Exception e) {
-					log.error("Exception on panel language editor import ", e);
-					importFeedback.error(e);
+						public InputStream getInputStream() throws ResourceStreamNotFoundException {
+							try {
+								Document doc = LangExport.createDocument(flvList, getBean(FieldManager.class).getUntranslatedFieldValuesList(language.getLanguage_id()));
+								sw = new StringWriter();
+								LangExport.serializetoXML(sw, "UTF-8", doc);
+								is = new ByteArrayInputStream(sw.toString().getBytes());
+								return is;
+							} catch (Exception e) {
+								throw new ResourceStreamNotFoundException(e);
+							}
+						}
+						
+						public void close() throws IOException {
+							if (is != null) {
+								is.close();
+								is = null;
+							}
+							sw = null;
+						}
+					});//new FileResourceStream(new File(requestedFile)));
+					download.initiate(target);
 				}
 				
 				// repaint the feedback panel so that it is hidden

Modified: openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/common/UploadableProfileImagePanel.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/common/UploadableProfileImagePanel.java?rev=1487709&r1=1487708&r2=1487709&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/common/UploadableProfileImagePanel.java (original)
+++ openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/common/UploadableProfileImagePanel.java Thu May 30 02:40:30 2013
@@ -21,8 +21,6 @@ package org.apache.openmeetings.web.comm
 import static org.apache.openmeetings.utils.ImportHelper.getMaxUploadSize;
 import static org.apache.openmeetings.web.app.Application.getBean;
 
-import java.util.List;
-
 import org.apache.openmeetings.data.basic.dao.ConfigurationDao;
 import org.apache.openmeetings.documents.GenerateImage;
 import org.apache.openmeetings.utils.StoredFile;
@@ -32,7 +30,6 @@ import org.apache.wicket.extensions.ajax
 import org.apache.wicket.markup.html.form.Form;
 import org.apache.wicket.markup.html.form.upload.FileUpload;
 import org.apache.wicket.markup.html.form.upload.FileUploadField;
-import org.apache.wicket.model.IModel;
 import org.apache.wicket.util.lang.Bytes;
 
 public class UploadableProfileImagePanel extends ProfileImagePanel {
@@ -44,20 +41,7 @@ public class UploadableProfileImagePanel
 		final Form<Void> form = new Form<Void>("form");
 		form.setMultiPart(true);
 		form.setMaxSize(Bytes.bytes(getMaxUploadSize(getBean(ConfigurationDao.class))));
-		form.add(fileUploadField = new FileUploadField("image", new IModel<List<FileUpload>>() {
-			private static final long serialVersionUID = -8514518605278263956L;
-
-			//FIXME this need to be eliminated
-			public void detach() {
-			}
-			
-			public void setObject(List<FileUpload> object) {
-			}
-			
-			public List<FileUpload> getObject() {
-				return null;
-			}
-		}));
+		form.add(fileUploadField = new FileUploadField("image"));
 		form.add(new UploadProgressBar("progress", form, fileUploadField));
 		fileUploadField.add(new AjaxFormSubmitBehavior(form, "onchange") {
 			private static final long serialVersionUID = 2160216679027859231L;