org.apache.openaz.xacml.admin.view.windows.PIPImportWindow.java Source code

Java tutorial

Introduction

Here is the source code for org.apache.openaz.xacml.admin.view.windows.PIPImportWindow.java

Source

/*
 *  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;
    }

}