    001/*****************************************************************************
    002 * Copyright by The HDF Group.                                               *
    003 * All rights reserved.                                                      *
    004 *                                                                           *
    005 * This file is part of the HDF Java Products distribution.                  *
    006 * The full copyright notice, including terms governing use, modification,   *
    007 * and redistribution, is contained in the COPYING file, which can be found  *
    008 * at the root of the source code distribution tree,                         *
    009 * or in https://www.hdfgroup.org/licenses.                                  *
    010 * If you do not have access to either file, you may request a copy from     *
    011 * help@hdfgroup.org.                                                        *
    012 ****************************************************************************/
    013
    014package hdf.view.TreeView;
    015
    016import java.util.HashMap;
    017
    018import org.eclipse.swt.widgets.Composite;
    019import org.eclipse.swt.widgets.Shell;
    020
    021import hdf.object.HObject;
    022import hdf.view.DataView.DataViewFactory;
    023import hdf.view.DataView.DataViewManager;
    024import hdf.view.ImageView.ImageView;
    025import hdf.view.MetaDataView.MetaDataView;
    026import hdf.view.PaletteView.PaletteView;
    027import hdf.view.TableView.TableView;
    028
    029/**
    030 * This class extends DataViewFactory so that at runtime it can be determined if a specific DataViewFactory class is a
    031 * TreeViewFactory and can thus be used appropriately where a TreeView is needed.
    032 *
    033 * @author jhenderson
    034 * @version 1.0 7/30/2018
    035 */
    036public abstract class TreeViewFactory extends DataViewFactory {
    037
    038    @SuppressWarnings("rawtypes")
    039    @Override
    040    public final TableView getTableView(DataViewManager viewer, HashMap dataPropertiesMap) throws ClassNotFoundException, UnsupportedOperationException {
    041        throw new UnsupportedOperationException("TreeViewFactory does not implement getTableView()");
    042    }
    043
    044    @SuppressWarnings("rawtypes")
    045    @Override
    046    public final ImageView getImageView(DataViewManager viewer, HashMap dataPropertiesMap) throws ClassNotFoundException, UnsupportedOperationException {
    047        throw new UnsupportedOperationException("TreeViewFactory does not implement getImageView()");
    048    }
    049
    050    @Override
    051    public final PaletteView getPaletteView(Shell parent, DataViewManager viewer, ImageView theImageView) throws ClassNotFoundException, UnsupportedOperationException {
    052        throw new UnsupportedOperationException("TreeViewFactory does not implement getPaletteView()");
    053    }
    054
    055    @Override
    056    public final MetaDataView getMetaDataView(Composite parentObj, DataViewManager viewer, HObject theObj) throws ClassNotFoundException, UnsupportedOperationException {
    057        throw new UnsupportedOperationException("TreeViewFactory does not implement getMetaDataView()");
    058    }
    059
    060}