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

📄 linguistictype.java

📁 编辑视频文件
💻 JAVA
字号:
/* * File:     LinguisticType.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.server.corpora.clomimpl.type;/** * DOCUMENT ME! * $Id: LinguisticType.java,v 1.3 2005/07/26 13:45:50 hasloe Exp $ * @author $Author: hasloe $ * @version $Revision: 1.3 $ */public class LinguisticType {    /** Holds value of property DOCUMENT ME! */    String typeName;    /** Holds value of property DOCUMENT ME! */    Constraint constraints; // can be composite    /** Holds value of property DOCUMENT ME! */    boolean timeAlignable = true;    /** Holds value of property DOCUMENT ME! */    boolean graphicReferences = false;    /* HS: added jun 04 support for controlled vocabularies */    /** the identifier of the Controlled Vocabulary in use by this lin. type */    String controlledVocabularyName;    /**     * Creates a new LinguisticType instance     *     * @param theName DOCUMENT ME!     */    public LinguisticType(String theName) {        typeName = theName;    }    /**     * DOCUMENT ME!     *     * @return DOCUMENT ME!     */    public String toString() {        String stereotype = "";        if (constraints != null) {            stereotype = Constraint.stereoTypes[constraints.getStereoType()];        }        return typeName + ", " + timeAlignable + ", " + stereotype;    }    /**     * DOCUMENT ME!     *     * @return DOCUMENT ME!     */    public String getLinguisticTypeName() {        return typeName;    }    /**     * DOCUMENT ME!     *     * @param theName DOCUMENT ME!     */    public void setLinguisticTypeName(String theName) {        typeName = theName;    }    /**     * DOCUMENT ME!     *     * @return DOCUMENT ME!     */    public boolean hasConstraints() {        if (constraints != null) {            return true;        } else {            return false;        }    }    /**     * DOCUMENT ME!     *     * @return DOCUMENT ME!     */    public Constraint getConstraints() {        return constraints;    }    /**     * DOCUMENT ME!     *     * @param theConstraint DOCUMENT ME!     */    public void addConstraint(Constraint theConstraint) {        //MK:02/06/30 removed println. If you need debug output, use debugln.        //System.out.println("add Constraint of stereotype: " + theConstraint.getStereoType() + " to LinguisticType: " + typeName);        if (constraints == null) {            constraints = theConstraint;        } else {            constraints.addConstraint(theConstraint);        }    }    /**     * DOCUMENT ME!     */    public void removeConstraints() {        constraints = null;    }    /**     * DOCUMENT ME!     *     * @return DOCUMENT ME!     */    public boolean isTimeAlignable() {        return timeAlignable;    }    /**     * DOCUMENT ME!     *     * @param isTimeAlignable DOCUMENT ME!     */    public void setTimeAlignable(boolean isTimeAlignable) {        timeAlignable = isTimeAlignable;    }    /**     * DOCUMENT ME!     *     * @return DOCUMENT ME!     */    public boolean hasGraphicReferences() {        return graphicReferences;    }    /**     * DOCUMENT ME!     *     * @param b DOCUMENT ME!     */    public void setGraphicReferences(boolean b) {        graphicReferences = b;    }    /**     * Returns whether or not annotation values on tiers using this LinguisticType     * are restricted by a ControlledVocabulary.<br>     * Current implementation is very loose; the value returned only depends     * on the presence of a non-null reference string. Could be more strict     * by keeping a flag independent from a reference string or object reference.     *     * @return true if there is a reference to a ControlledVocabulary     */    public boolean isUsingControlledVocabulary() {        return ((controlledVocabularyName == null) ||        (controlledVocabularyName.length() == 0)) ? false : true;    }    /**     * Returns the name (identifier) of the ControlledVocabulary in use by     * this type.<br>     * The actual CV objects are stored in and managed by the Transcription.     * (Candidate for change: might store a reference to the CV object itself     * instead of using a reference to it.)     *     * @return the name/identifier of the cv     */    public String getControlledVocabylaryName() {        return controlledVocabularyName;    }    /**     * Sets the name of the ControlledVocabulary to be used by this type.     *     * @see #getControlledVocabylaryName()     * @param name the name/identifier of the cv     */    public void setControlledVocabularyName(String name) {        controlledVocabularyName = name;    }    /**     * Overrides <code>Object</code>'s equals method by checking all  fields of     * the other object to be equal to all fields in this  object.     *     * @param obj the reference object with which to compare     *     * @return true if this object is the same as the obj argument; false     *         otherwise     */    public boolean equals(Object obj) {        if (obj == null) {            // null is never equal            return false;        }        if (obj == this) {            // same object reference             return true;        }        if (!(obj instanceof LinguisticType)) {            // it should be a MediaDescriptor object            return false;        }        LinguisticType other = (LinguisticType) obj;        if ((typeName != null) &&                !typeName.equals(other.getLinguisticTypeName())) {            return false;        } else if ((other.getLinguisticTypeName() != null) &&                !other.getLinguisticTypeName().equals(typeName)) {            return false;        }        if (isTimeAlignable() != other.isTimeAlignable()) {            return false;        }        if (hasConstraints() != other.hasConstraints()) {            return false;        } else {            if (hasConstraints() &&                    !getConstraints().equals(other.getConstraints())) {                return false;            }        }        if (hasGraphicReferences() != other.hasGraphicReferences()) {            return false;        }        if (isUsingControlledVocabulary() != other.isUsingControlledVocabulary()) {            return false;        } else {            if (isUsingControlledVocabulary()) {                // can compare CV only by their name                return getControlledVocabylaryName().equals(other.getControlledVocabylaryName());            }        }        return true;    }}

⌨️ 快捷键说明

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