Java tutorial
/* * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file * distributed with this work for additional information * regarding copyright ownership. The ASF licenses this file * to you under the Apache License, Version 2.0 (the * "License"); you may not use this file except in compliance * with the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied. See the License for the * specific language governing permissions and limitations * under the License. * */ package org.apache.openaz.xacml.admin.view.windows; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.OutputStream; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import com.vaadin.annotations.AutoGenerated; import com.vaadin.ui.Upload; import com.vaadin.ui.Upload.Receiver; import com.vaadin.ui.Upload.SucceededEvent; import com.vaadin.ui.Upload.SucceededListener; import com.vaadin.ui.VerticalLayout; import com.vaadin.ui.Window; public class PIPImportWindow extends Window implements Receiver, SucceededListener { /*- VaadinEditorProperties={"grid":"RegularGrid,20","showGrid":true,"snapToGrid":true,"snapToObject":true,"movingGuides":false,"snappingDistance":10} */ private static final Log logger = LogFactory.getLog(PolicyUploadWindow.class); @AutoGenerated private VerticalLayout mainLayout; @AutoGenerated private Upload upload; private static final long serialVersionUID = 1L; private String filename = null; /** * The constructor should first build the main layout, set the * composition root and then do any custom initialization. * * The constructor will not be automatically regenerated by the * visual editor. */ public PIPImportWindow() { buildMainLayout(); //setCompositionRoot(mainLayout); setContent(mainLayout); // // Set ourselves up // this.upload.addSucceededListener(this); this.upload.setReceiver(this); } @AutoGenerated private VerticalLayout buildMainLayout() { // common part: create layout mainLayout = new VerticalLayout(); mainLayout.setImmediate(false); mainLayout.setWidth("-1px"); mainLayout.setHeight("-1px"); mainLayout.setMargin(true); mainLayout.setSpacing(true); // top-level component properties setWidth("-1px"); setHeight("-1px"); // upload_1 upload = new Upload(); upload.setImmediate(false); upload.setWidth("-1px"); upload.setHeight("-1px"); mainLayout.addComponent(upload); return mainLayout; } @Override public void uploadSucceeded(SucceededEvent event) { this.filename = event.getFilename(); this.close(); } @Override public OutputStream receiveUpload(String filename, String mimeType) { // // Try to create the output stream // try { return new FileOutputStream(filename); } catch (FileNotFoundException e) { logger.error("Failed to create uploaded file", e); } return null; } public String getUploadedFile() { return this.filename; } }