Package com.eviware.soapui.security.support

Source Code of com.eviware.soapui.security.support.MaliciousAttachmentListToTableHolder

/*
* Copyright 2004-2014 SmartBear Software
*
* Licensed under the EUPL, Version 1.1 or - as soon as they will be approved by the European Commission - subsequent
* versions of the EUPL (the "Licence");
* You may not use this work except in compliance with the Licence.
* You may obtain a copy of the Licence at:
*
* http://ec.europa.eu/idabc/eupl
*
* Unless required by applicable law or agreed to in writing, software distributed under the Licence is
* distributed on an "AS IS" basis, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the Licence for the specific language governing permissions and limitations
* under the Licence.
*/
package com.eviware.soapui.security.support;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import com.eviware.soapui.config.MaliciousAttachmentConfig;
import com.eviware.soapui.security.tools.AttachmentElement;
import com.eviware.soapui.security.ui.MaliciousAttachmentMutationsPanel.MutationTables;
import com.eviware.x.impl.swing.JFormDialog;

public class MaliciousAttachmentListToTableHolder {

    MaliciousAttachmentFilesListForm filesList;
    MaliciousAttachmentTableModel generateTableModel;
    MaliciousAttachmentTableModel replaceTableModel;
    JFormDialog tablesDialog;

    Map<String, List<MaliciousAttachmentConfig>> generateMap = new HashMap<String, List<MaliciousAttachmentConfig>>();
    Map<String, List<MaliciousAttachmentConfig>> replaceMap = new HashMap<String, List<MaliciousAttachmentConfig>>();
    Map<String, Boolean> removeMap = new HashMap<String, Boolean>();

    public JFormDialog getTablesDialog() {
        return tablesDialog;
    }

    public void setTablesDialog(JFormDialog tablesDialog) {
        this.tablesDialog = tablesDialog;
    }

    public MaliciousAttachmentFilesListForm getFilesList() {
        return filesList;
    }

    public void setFilesList(MaliciousAttachmentFilesListForm filesList) {
        this.filesList = filesList;
    }

    public MaliciousAttachmentTableModel getGenerateTableModel() {
        return generateTableModel;
    }

    public void setGenerateTableModel(MaliciousAttachmentTableModel generateTableModel) {
        this.generateTableModel = generateTableModel;
    }

    public MaliciousAttachmentTableModel getReplaceTableModel() {
        return replaceTableModel;
    }

    public void setReplaceTableModel(MaliciousAttachmentTableModel replaceTableModel) {
        this.replaceTableModel = replaceTableModel;
    }

    public void refresh() {
        if (filesList != null) {
            AttachmentElement item = filesList.getFirstItem();
            // String label = ( item != null ) ? item.getAttachment().getName() :
            // "";
            // tablesDialog.getFormField( MutationTables.LABEL ).setValue( label );
            if (item != null) {
                load(item);
            }
        }
    }

    public void refresh(AttachmentElement oldItem, AttachmentElement newItem) {
        if (oldItem != null) {
            save(oldItem);

            if (newItem != null) {
                load(newItem);
            }
        }
    }

    public void addResultToGenerateTable(MaliciousAttachmentConfig config) {
        generateTableModel.addResult(config);
    }

    public void addResultToReplaceTable(MaliciousAttachmentConfig config) {
        replaceTableModel.addResult(config);
    }

    private void save(AttachmentElement item) {
        List<MaliciousAttachmentConfig> generateList = new ArrayList<MaliciousAttachmentConfig>();
        List<MaliciousAttachmentConfig> replaceList = new ArrayList<MaliciousAttachmentConfig>();

        for (int i = 0; i < generateTableModel.getRowCount(); i++) {
            generateList.add(generateTableModel.getRowValue(i));
        }

        for (int i = 0; i < replaceTableModel.getRowCount(); i++) {
            replaceList.add(replaceTableModel.getRowValue(i));
        }

        Boolean remove = tablesDialog.getBooleanValue(MutationTables.REMOVE_FILE);

        generateMap.put(item.getId(), generateList);
        replaceMap.put(item.getId(), replaceList);
        removeMap.put(item.getId(), remove);
    }

    private void load(AttachmentElement item) {
        List<MaliciousAttachmentConfig> generateList = generateMap.get(item.getId());
        List<MaliciousAttachmentConfig> replaceList = replaceMap.get(item.getId());
        Boolean remove = removeMap.get(item.getId());

        // tablesDialog.setValue( MutationTables.LABEL,
        // item.getAttachment().getName() );

        generateTableModel.clear();
        replaceTableModel.clear();
        tablesDialog.setBooleanValue(MutationTables.REMOVE_FILE, new Boolean(false));

        if (remove != null) {
            tablesDialog.setBooleanValue(MutationTables.REMOVE_FILE, remove);
        }

        if (generateList != null) {
            for (MaliciousAttachmentConfig element : generateList) {
                generateTableModel.addResult(element);
            }
        }

        if (replaceList != null) {
            for (MaliciousAttachmentConfig element : replaceList) {
                replaceTableModel.addResult(element);
            }
        }
    }

    public void removeAttachment(String key) {
        generateMap.remove(key);
        replaceMap.remove(key);
        removeMap.remove(key);
    }

    public void release() {
        filesList.release();
        filesList = null;
        tablesDialog.release();
        generateMap = null;
        replaceMap = null;
        removeMap = null;
    }
}
TOP

Related Classes of com.eviware.soapui.security.support.MaliciousAttachmentListToTableHolder

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.