value.java
来自「CmisJavaApi」· Java 代码 · 共 151 行
JAVA
151 行
/* * The contents of this file are subject to the Dyade Public License, * as defined by the file DYADE_PUBLIC_LICENSE.TXT * * You may not use this file except in compliance with the License. You may * obtain a copy of the License on the Dyade web site (www.dyade.fr). * * Software distributed under the License is distributed on an "AS IS" basis, * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for * the specific terms governing rights and limitations under the License. * * The Original Code is CmisJava API, including the java package * fr.dyade.cmis, released September 5, 2000. * * The Initial Developer of the Original Code is Dyade. The Original Code and * portions created by Dyade are Copyright Bull and Copyright INRIA. * All Rights Reserved. *//* Copyright 1996-2000 by Institut National de Recherche en Informatique * et en Automatique (INRIA) * All rights reserved. See COPYRIGHT in top-level directory. * * Authors: Laurent Andrey, Eric Dillon, Olivier Festor */// $Id: Value.java,v 1.3 2000/09/05 13:31:08 festor Exp $// $Source: /local/resedas/CVS-Repository/CmisJavaApi/src/fr/dyade/cmis/api/types/Value.java,v $//// Todo//package fr.dyade.cmis.api.types;/** * Implementation of an ASN.1 value. * <p> * For each definition of an ASN.1 type done within the C-fmkapi, we have a Java class definition. * However, each of these classes will extend this class because they must hold a <code>discriminant</code> * that will be used from C-code through the JNI. * <p> * As a consequence this class has been defined as an abstract class. It only implements one field that * is directly forwarded to the C-fmkapi. * <p> * <strong>THIS CLASS IS FOR INTERNAL USE ONLY</strong> * This java coding is indeed closed related to Open Master fmk-c-api's one... * May be this would be changed. * @see fr.dyade.cmis.api.types.ASN1Boolean * @see fr.dyade.cmis.api.types.ASN1Enum * @see fr.dyade.cmis.api.types.ASN1Integer * @see fr.dyade.cmis.api.types.Null * @see fr.dyade.cmis.api.types.ObjectIdentifier * @see fr.dyade.cmis.api.types.Bits * @see fr.dyade.cmis.api.types.BitString * @see fr.dyade.cmis.api.types.Bytes * @see fr.dyade.cmis.api.types.NumericString * @see fr.dyade.cmis.api.types.PrintableString * @see fr.dyade.cmis.api.types.TeletexString * @see fr.dyade.cmis.api.types.VideotexString * @see fr.dyade.cmis.api.types.IA5String * @see fr.dyade.cmis.api.types.GraphicString * @see fr.dyade.cmis.api.types.VisibleString * @see fr.dyade.cmis.api.types.GeneralString * @see fr.dyade.cmis.api.types.OctetString * @see fr.dyade.cmis.api.types.ValueDescriptor * @see fr.dyade.cmis.api.types.GeneralizedTime * @see fr.dyade.cmis.api.types.UTCTime * @see fr.dyade.cmis.api.types.Real * @see fr.dyade.cmis.api.types.IPAddress * @see fr.dyade.cmis.api.types.Opaque * @see fr.dyade.cmis.api.types.NSAPAddress * @see fr.dyade.cmis.api.types.EventTypeId * @see fr.dyade.cmis.api.types.ObjectClass * @see fr.dyade.cmis.api.types.Any * @see fr.dyade.cmis.api.types.TaggedValue * @see fr.dyade.cmis.api.types.ComposedValue * * "Fake Value" (no corresponding value type code): * @see fr.dyade.cmis.api.types.ActionTypeId * @see fr.dyade.cmis.api.types.AttributeId * * See also: * @see fr.dyade.cmis.api.types.External * * TODO: push Open Master special stuff (verbatim) into fr.dyade.cmis.om.types package. * @version cvs $Id: Value.java,v 1.3 2000/09/05 13:31:08 festor Exp $ */public abstract class Value extends CMISType { protected Value() { fValueType=VALUE_UNKNOWN; } protected Value(short pValueType) { fValueType=pValueType; } public final short getType() { return fValueType; } // The differents types that are decoded by the API. // Those codes come from basic ASN1 spec. public static final short VALUE_UNKNOWN = 0x0; public static final short VALUE_BOOLEAN = 0x1; public static final short VALUE_INTEGER = 0x2; public static final short VALUE_BIT_STRING = 0x3; public static final short VALUE_OCTET_STRING = 0x4; public static final short VALUE_NULL = 0x5; public static final short VALUE_OBJECT_IDENTIFIER = 0x6; public static final short VALUE_DESCRIPTOR = 0x7; public static final short VALUE_ENUM = 0xa; public static final short VALUE_NUMERIC_STRING = 0x12; public static final short VALUE_PRINTABLE_STRING = 0x13; public static final short VALUE_TELETEX_STRING = 0x14; public static final short VALUE_VIDEOTEX_STRING = 0x15; public static final short VALUE_IA5_STRING = 0x16; public static final short VALUE_UTCTIME = 0x17; public static final short VALUE_GENTIME = 0x18; public static final short VALUE_GRAPHIC_STRING = 0x19; public static final short VALUE_VISIBLE_STRING = 0x1a; public static final short VALUE_GENERAL_STRING = 0x1b; public static final short VALUE_REAL = 0x1d; public static final short VALUE_IPADDRESS = 0x40; public static final short VALUE_COUNTER32 = 0x41; public static final short VALUE_GAUGE32 = 0x42; public static final short VALUE_TICKS = 0x43; public static final short VALUE_OPAQUE = 0x44; public static final short VALUE_NSAPADDRESS = 0x45; public static final short VALUE_COUNTER64 = 0x46; public static final short VALUE_UINTEGER32 = 0x47; public static final short VALUE_OBJECT_CLASS = 0x60; public static final short VALUE_OBJECT_INSTANCE = 0x61; public static final short VALUE_EVENT_TYPE = 0x62; public static final short VALUE_ANY = 0x70; public static final short VALUE_VERBATIM = 0x85; public static final short TAGGED_VALUE = 0x92; public static final short COMPOSED_VALUE = 0x93; // the discriminant... used for JNI protected short fValueType; /** * The encoded value */ protected Bytes fEncodedValue; protected UndecodedValueReasons fUReasons; } // Value
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?