⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 toolid.java

📁 编辑视频文件
💻 JAVA
字号:
/* * File:     ToolID.java * Project:  MPI Linguistic Application * Date:     02 May 2007 * * Copyright (C) 2001-2007  Max Planck Institute for Psycholinguistics * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA */package mpi.eudico.tool;import java.io.Serializable;import java.util.Vector;/** * A class whose objects identify Tools. Eudico Tools are principally * identified by their category and their name, and their class name. A ToolID * is also able to inform the user if the corresponding Tool is available as * server based tool and/or client based tool. The user's choice is * administered by the ToolID, which is in turn used by the ToolDatabase to * create an instance of the specified Tool. In the long run server based * Tools will also have client versions since we may want them to work on * locally available data sets. ToolIDs can be associated with ToolConditions. * For the corresponding Tool to be applicable all of these ToolConditions * have to be met. * * @author Hennie Brugman * @author Albert Russel * @version 29-Apr-1999 */public class ToolID implements Serializable, Comparable {    /** Constants to indicate where a Tool is to be instantiated. */    public static short LOCAL = 1;    /** Holds value of property DOCUMENT ME! */    public static short SERVER = 2;    /** The category to which the Tool belongs, for example 'Viewers' */    private String category;    /**     * The name of the Tool as it is shown in the Tool Tree. For example 'Time     * Line Viewer'.     */    private String name;    /**     * The name of the .class file that implements this tool.  For example     * 'mpi.eudico.tool.TimeLineView'.     */    private String className;    /**     * If true, there is a version of the corresponding Tool that can run on     * clients. Example: Viewers.     */    private boolean clientVersionAvailable;    /**     * If true, there is a version of the corresponding Tool that can run on     * the server. Example: a search tool.     */    private boolean serverVersionAvailable;    /**     * The Tool specified by this ToolID is to be created either LOCALly or on     * the SERVER.     */    private short requestedHost;    /**     * A list of conditions that have to be met by ToolAdministrators for the     * associated Tool to be applicable.     */    private Vector toolConditions;    /**     * If false, this ToolID is intended for demonstration purposes. It's     * information will show up in the Eudico browser, but dimmed and     * disabled.     */    private boolean isImplemented;    /** Shows the status of the Tool */    private boolean isEnabled = true;    /**     * Creates a ToolID     *     * @param theCategory The Tool category.     * @param theName The Tool name.     * @param theClassName The implementing .class file.     * @param clientVersion DOCUMENT ME!     * @param serverVersion DOCUMENT ME!     * @param implemented DOCUMENT ME!     */    public ToolID(String theCategory, String theName, String theClassName,        boolean clientVersion, boolean serverVersion, boolean implemented) {        category = theCategory;        name = theName;        className = theClassName;        clientVersionAvailable = clientVersion;        serverVersionAvailable = serverVersion;        isImplemented = implemented;        requestedHost = LOCAL;        toolConditions = new Vector();    }    /**     * DOCUMENT ME!     *     * @return the ToolID category.     */    public String getCategory() {        return category;    }    /**     * DOCUMENT ME!     *     * @return the ToolID name.     */    public String getName() {        return name;    }    /**     * DOCUMENT ME!     *     * @return the ToolID className.     */    public String getClassName() {        return className;    }    /**     * Returns true if the corresponding Tool is available to run on  clients.     *     * @return DOCUMENT ME!     */    public boolean hasClientVersion() {        return clientVersionAvailable;    }    /**     * Returns true if the corresponding Tool is available to run on the     * server.     *     * @return DOCUMENT ME!     */    public boolean hasServerVersion() {        return serverVersionAvailable;    }    /**     * Specify user's request if a Tool is to be created and run on the client     * or on the server.     *     * @param localOrServer DOCUMENT ME!     */    public void setHost(short localOrServer) {        requestedHost = localOrServer;    }    /**     * Compares two ToolID's according to the lexicografical ordering of their     * category and name Strings.     *     * @param toolID The other ToolID with which this one is to be compared.     *     * @return the value 0 if both ToolID's are equal, a value less than 0 if     *         this  ToolID is lexicographically less than the toolID     *         parameter, and a value  greater than 0 if this ToolID is     *         lexicographically greater than the toolID  parameter.     */    public int compareTo(Object toolID) {        String s1 = category + name;        String s2 = ((ToolID) toolID).getCategory() +            ((ToolID) toolID).getName();        return s1.compareTo(s2);    }    /**     * Returns conditions that have to be met for this Tool to be applicable.     *     * @return DOCUMENT ME!     */    public Vector getConditions() {        return toolConditions;    }    /**     * DOCUMENT ME!     *     * @param theToolCondition DOCUMENT ME!     */    public void addCondition(ToolCondition theToolCondition) {        toolConditions.add(theToolCondition);    }    /**     * DOCUMENT ME!     *     * @return DOCUMENT ME!     */    public boolean isImplemented() {        return isImplemented;    }    /**     * DOCUMENT ME!     *     * @param b DOCUMENT ME!     */    public void setEnabled(boolean b) {        isEnabled = b;    }    /**     * DOCUMENT ME!     *     * @return DOCUMENT ME!     */    public boolean isEnabled() {        return isEnabled;    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -