JavaTM Platform
Standard Ed. 6

org.omg.CORBA
클래스 TypeCode

java.lang.Object 
  상위를 확장 org.omg.CORBA.TypeCode
모든 구현된 인터페이스:
Serializable , IDLEntity


public abstract class TypeCode
extends Object
implements IDLEntity

특정의 CORBA 데이터형에 대한 정보를 포함하는 컨테이너입니다.

TypeCode 객체의 사용법:

TypeCode 객체의 표현은 불투명합니다만, 추상적으로는,TypeCode 객체의 원가요소는 다음과 같습니다.

TypeCode 객체는, 다양한 방법으로 취득할 수 있습니다.
  1. Any.insert_X 메소드의 호출로부터 취득한다. X 는 기본적인 IDL 형. 이 메소드는, 형태 X 의 TypeCode 객체를 생성해, 그 객체를 Any 객체의 type 필드에 할당한다
  2. ORB 클래스의 메소드의 호출로부터 취득한다

    예를 들어 다음의 메소드는, 최대 30 문자의 stringTypeCode 객체를 생성합니다.

       org.omg.CORBA.TypeCode tcString = orb.create_string_tc(30);
     

    다음은, 5 개의 stringarray 에 대해 TypeCode 객체를 생성합니다.

       org.omg.CORBA.TypeCode tcArray = orb.create_array_tc(
                                           5, TCKind.tk_string);
     

    다음은, Account 라는 이름의 인터페이스의 TypeCode 객체를 생성합니다.

       org.omg.CORBA.TypeCode tcInterface = orb.create_interface_tc(
                                                     "thisId", "Account");
     
  3. 사용자 정의 IDL 형 Holder 클래스의 _type 메소드로부터의 반환값으로서 취득한다. 이러한 Holder 클래스는,idltojava 컴파일러에 의해 생성된다
  4. CORBA 인터페이스 리포지터리(repository)로부터 취득한다

TypeCode 클래스의 대부분의 메소드는 액세스용 메소드이며,TypeCode 객체에 포함되고 있는 정보는 특정의 형태에 고유합니다. 그 때문에, 메소드는 메소드가 적용되는 종류의 형태 코드만으로 불려 갈 필요가 있습니다. 액세스용 메소드가 올바르지 않은 종류의 형태 코드의 정보에 액세스 하려고 하면(자), 예외 TypeCodePackage.BadKind 가 throw 됩니다. 예를 들어,discriminator_type 메소드가 union 이외로 불려 가면(자),BadKind 가 throw 됩니다. 이것은,union 만이 판별자를 가지기 (위해)때문에입니다. 다음의 리스트는, 메소드가 어느 종류의 형태 코드에 적용되는지를 나타냅니다.

다음의 메소드는,TypeCode 의 모든 종류로 호출할 수가 있습니다.

다음의 메소드는,objref,struct,union,enum,alias,exception,value,value_box,native, 및 abstract_interface 로 호출할 수가 있습니다.

다음의 메소드는,struct,union,enum, 및 exception 로 호출할 수가 있습니다.

다음의 메소드는,struct,union, 및 exception 로 호출할 수가 있습니다.

다음의 메소드는,union 로 호출할 수가 있습니다.

다음의 메소드는,string,sequence, 및 array 로 호출할 수가 있습니다.

다음의 메소드는,alias,sequence,array, 및 value_box 로 호출할 수가 있습니다.

다른 CORBA 유사 객체와 달리,TypeCode 객체는 일반적인 IDL 파라미터로서 건네줄 수가 있습니다.

parameter 메소드 및 param_count 메소드 (추천 되지 않는다)는 매핑 되지 않습니다.

Java IDL 는 CORBA 스펙을 확장해,struct TypeCode 로 허가 떠날 수 있어 모든 오퍼레이션이 exception TypeCode 에서도 허가되도록(듯이) 합니다.


생성자 의 개요
TypeCode ()
           
 
메소드의 개요
abstract  TypeCode concrete_base_type ()
          이 TypeCode 객체로 기술되는 치 형의 구상 기저형을 기술하는 TypeCode 객체를 돌려줍니다.
abstract  TypeCode content_type ()
          이 TypeCode 객체에 의해 기술되는 객체의 멤버의 IDL 형을 나타내는 TypeCode 객체를 돌려줍니다.
abstract  int default_index ()
          디폴트 멤버의 인덱스, 또는 디폴트의 멤버가 없는 경우는 -1 을 돌려줍니다.
abstract  TypeCode discriminator_type ()
          디폴트의 멤버는 아닌 모든 라벨을 기술하는 TypeCode 객체를 돌려줍니다.
abstract  boolean equal (TypeCode  tc)
          이 TypeCode 객체와 지정된 TypeCode 객체가 동일한지 어떤지를 비교합니다.
abstract  boolean equivalent (TypeCode  tc)
          이 TypeCode 객체와 지정된 TypeCode 객체가 동일한지 어떤지를 판정합니다.
abstract  short fixed_digits ()
          이 TypeCode 객체로 기술된 fixed 형의 자리수를 돌려줍니다.
abstract  short fixed_scale ()
          이 TypeCode 객체로 기술된 fixed 형의 스케일을 돌려줍니다.
abstract  TypeCode get_compact_typecode ()
          모든 옵션명 및 멤버명 필드를 삭제합니다만, 별명형 코드는 모두 그대로 남깁니다.
abstract  String id ()
          이 TypeCode 객체의 형태를 포괄적으로 식별하는 리포지터리(repository) ID 를 가져옵니다.
abstract  TCKind kind ()
          이 TypeCode 객체의 종류를 가져옵니다.
abstract  int length ()
          이 TypeCode 객체에 의해 기술되는 형태의 요소수를 돌려줍니다.
abstract  int member_count ()
          이 TypeCode 객체로 기술되는 형태의 멤버수를 가져옵니다.
abstract  Any member_label (int index)
          지정된 인덱스에 의해 식별되는 공용체 멤버의 라벨을 가져옵니다.
abstract  String member_name (int index)
          지정된 인덱스로 식별되는 멤버의 단순명을 가져옵니다.
abstract  TypeCode member_type (int index)
          지정된 인덱스로 식별되는 멤버의 형태를 기술하는 TypeCode 객체를 가져옵니다.
abstract  short member_visibility (int index)
          지정된 인덱스의 멤버의 가시성을 나타내는 정수를 돌려줍니다.
abstract  String name ()
          포위 스코프내에서 TypeCode 객체를 식별하는 단순명을 가져옵니다.
abstract  short type_modifier ()
          이 TypeCode 객체가 기술하는 치 형의 수식자를 나타내는 정수를 돌려줍니다.
 
클래스 java.lang. Object 로부터 상속된 메소드
clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait
 

생성자 의 상세

TypeCode

public TypeCode()
메소드의 상세

equal

public abstract boolean equal(TypeCode  tc)
TypeCode 객체와 지정된 TypeCode 객체가 동일한지 어떤지를 비교합니다. 2 개의 TypeCode 객체는, 그것들이 교환 가능하고,TypeCode 조작이 적용되었을 때에 같은 결과가 되는 경우에 등가입니다.

파라미터:
tc - 비교 대상의 TypeCode 객체
반환값:
TypeCode 가 동등한 경우는 true, 그렇지 않은 경우는 false

equivalent

public abstract boolean equivalent(TypeCode  tc)
TypeCode 객체와 지정된 TypeCode 객체가 동일한지 어떤지를 판정합니다.

파라미터:
tc - 이 형태 코드와 비교하는 형태 코드
반환값:
지정된 형태 코드가 이 형태 코드와 같은 경우는 true, 그렇지 않은 경우는 false

get_compact_typecode

public abstract TypeCode  get_compact_typecode()
모든 옵션명 및 멤버명 필드를 삭제합니다만, 별명형 코드는 모두 그대로 남깁니다.

반환값:
그대로 남기는 별명형 코드를 제외한, 옵션명과 멤버명 필드가 삭제되었다 TypeCode 객체
관련 항목:
CORBA 패키지에 구현되어 있지 않은 기능에 대한 코멘트

kind

public abstract TCKind  kind()
TypeCode 객체의 종류를 가져옵니다. 형태 코드의 종류는, 어느 TypeCode 메소드가 정상적으로 호출할 수가 있는지를 나타냅니다.

kind 메소드는, 어느 TypeCode 객체에서도 호출할 수가 있습니다.

반환값:
TypeCode 객체의 kind 필드의 값을 나타낸다 TCKind 의 인스턴스

id

public abstract String  id()
                   throws BadKind 
TypeCode 객체의 형태를 포괄적으로 식별하는 리포지터리(repository) ID 를 가져옵니다.

id 메소드는, 객체 참조, 구조체, 공용체, 열거, 앨리어스(alias), 예외, value 형, boxed value 형, 네이티브, 및 추상 인터페이스의 형태 코드로 호출할 수가 있습니다. 객체 참조, 예외, value 형, boxed value 형, 네이티브, 추상 인터페이스 TypeCode 객체는, 항상 리포지터리(repository) ID 를 가집니다. 인터페이스 리포지터리(repository) 또는 ORB.create_operation_list 메소드로부터 취득되는 구조체, 공용체, 열거, 및 앨리어스(alias) TypeCode 객체도 항상 리포지터리(repository) ID 를 가집니다. 리포지터리(repository) ID 가 없는 경우, 메소드는 빈 상태(empty)의 캐릭터 라인을 돌려줍니다.

반환값:
TypeCode 객체의 리포지터리(repository) ID. 리포지터리(repository) ID 가 없는 경우는 빈 상태(empty)의 캐릭터 라인
예외:
BadKind - 메소드가, 올바르지 않은 종류의 TypeCode 객체로 불려 갔을 경우

name

public abstract String  name()
                     throws BadKind 
포위 스코프내에서 TypeCode 객체를 식별하는 단순명을 가져옵니다. 이름은 리포지터리(repository)에 로컬이므로,TypeCode 객체로부터 반환된 이름은, 특정의 리포지터리(repository) 내부의 형태의 이름과는 일치하지 않는 경우가 있어, 빈 상태(empty)의 캐릭터 라인의 경우도 있습니다.

name 메소드는, 객체 참조, 구조체, 공용체, 열거, 앨리어스(alias), 예외, value 형, boxed value 형, 네이티브, 및 추상 인터페이스 TypeCode 객체로 호출할 수가 있습니다.

반환값:
TypeCode 객체를 식별하는 이름, 또는 빈 상태(empty)의 캐릭터 라인
예외:
BadKind - 메소드가, 올바르지 않은 종류의 TypeCode 객체로 불려 갔을 경우

member_count

public abstract int member_count()
                          throws BadKind 
TypeCode 객체로 기술되는 형태의 멤버수를 가져옵니다.

member_count 메소드는, 구조체, 공용체, 열거 TypeCode 객체로 호출할 수가 있습니다. Java IDL 는 CORBA 스펙을 확장해, 이 메소드가 예외도 처리할 수 있도록(듯이) 합니다.

반환값:
TypeCode 객체에 의해 기술되는 형태를 구성하는 멤버의 수
예외:
BadKind - 메소드가, 올바르지 않은 종류의 TypeCode 객체로 불려 갔을 경우

member_name

public abstract String  member_name(int index)
                            throws BadKind ,
                                   Bounds 
지정된 인덱스로 식별되는 멤버의 단순명을 가져옵니다. 이름은 리포지터리(repository)에 로컬이기 (위해)때문에,TypeCode 객체로부터 반환되는 이름은, 특정의 리포지터리(repository)의 멤버명으로 일치하지 않는 경우가 있어, 빈 상태(empty)의 캐릭터 라인인 경우도 있습니다.

member_name 메소드는, 구조체, 공용체, 및 열거 TypeCode 객체로 호출할 수가 있습니다. Java IDL 는 CORBA 스펙을 확장해, 이 메소드가 예외도 처리할 수 있도록(듯이) 합니다.

파라미터:
index - 이름이 요구되는 멤버의 인덱스
반환값:
인덱스로 식별되는 멤버의 단순명 또는 빈 상태(empty)의 캐릭터 라인
예외:
Bounds - 지정된 인덱스가, 형태를 구성하는 멤버의 수와 동일한지, 그것보다 큰 값의 경우
BadKind - 메소드가, 올바르지 않은 종류의 TypeCode 객체로 불려 갔을 경우

member_type

public abstract TypeCode  member_type(int index)
                              throws BadKind ,
                                     Bounds 
지정된 인덱스로 식별되는 멤버의 형태를 기술하는 TypeCode 객체를 가져옵니다.

member_type 메소드는, 구조체 및 공용체 TypeCode 객체로 호출할 수가 있습니다. Java IDL 는 CORBA 스펙을 확장해, 이 메소드가 예외도 처리할 수 있도록(듯이) 합니다.

파라미터:
index - 형 정보가 요구되는 멤버의 인덱스
반환값:
지정된 인덱스의 멤버를 기술한다 TypeCode 객체
예외:
Bounds - 지정된 인덱스가, 형태를 구성하는 멤버의 수와 동일한지, 그것보다 큰 값의 경우
BadKind - 메소드가, 올바르지 않은 종류의 TypeCode 객체로 불려 갔을 경우

member_label

public abstract Any  member_label(int index)
                          throws BadKind ,
                                 Bounds 
지정된 인덱스에 의해 식별되는 공용체 멤버의 라벨을 가져옵니다. 디폴트의 멤버의 경우, 라벨은 0 8중창입니다.

member_label 메소드는, 공용체 TypeCode 객체만으로 호출할 수가 있습니다.

파라미터:
index - 라벨이 요구되는 공용체 멤버의 인덱스
반환값:
요구된 공용체 멤버의 라벨을 기술한다 Any 객체, 또는 디폴트의 멤버의 0 8중창
예외:
Bounds - 지정된 인덱스가, 공용체를 구성하는 멤버의 수와 동일한지, 그것보다 큰 값의 경우
BadKind - 메소드가, 공용체가 아닌 TypeCode 객체로 불려 갔을 경우

discriminator_type

public abstract TypeCode  discriminator_type()
                                     throws BadKind 
디폴트의 멤버는 아닌 모든 라벨을 기술하는 TypeCode 객체를 돌려줍니다. discriminator_type 메소드는, 공용체 TypeCode 객체만으로 호출할 수가 있습니다.

반환값:
디폴트의 멤버가 아닌 라벨을 기술한다 TypeCode 객체
예외:
BadKind - 메소드가, 공용체가 아닌 TypeCode 객체로 불려 갔을 경우

default_index

public abstract int default_index()
                           throws BadKind 
디폴트 멤버의 인덱스, 또는 디폴트의 멤버가 없는 경우는 -1 을 돌려줍니다.

default_index 메소드는, 공용체 TypeCode 객체만으로 호출할 수가 있습니다.

반환값:
디폴트의 멤버의 인덱스. 디폴트의 멤버가 없는 경우는 -1
예외:
BadKind - 메소드가, 공용체가 아닌 TypeCode 객체로 불려 갔을 경우

length

public abstract int length()
                    throws BadKind 
TypeCode 객체에 의해 기술되는 형태의 요소수를 돌려줍니다. 캐릭터 라인 및 순서의 경우는 바운드가 돌려주어져 0 은 안 바운드의 캐릭터 라인 또는 순서를 나타냅니다. 배열의 경우, 배열의 요소수가 돌려주어집니다.

length 메소드는, 캐릭터 라인, 순서, 및 배열 TypeCode 객체로 호출할 수가 있습니다.

반환값:
캐릭터 라인 및 순서의 바운드, 또는 배열의 요소수
예외:
BadKind - 메소드가, 올바르지 않은 종류의 TypeCode 객체로 불려 갔을 경우

content_type

public abstract TypeCode  content_type()
                               throws BadKind 
TypeCode 객체에 의해 기술되는 객체의 멤버의 IDL 형을 나타내는 TypeCode 객체를 돌려줍니다. 순서 및 배열의 경우는, 요소의 형태가 돌려주어집니다. 앨리어스(alias)의 경우는, 원의 형태가 돌려주어집니다. 다차원 배열은, 차원 마다 1 개의 TypeCode 객체를 상자로 하는 것으로 나타내집니다. boxed value 형의 경우는 boxed 형이 돌려주어집니다.

content_type 메소드는, 순서, 배열, 앨리어스(alias), 및 boxed value 형 TypeCode 객체로 호출할 수가 있습니다.

반환값:
순서 및 배열의 요소의 형태, 앨리어스(alias)의 원의 형태, 또는 boxed value 형의 boxed 형을 나타낸다 TypeCode 객체
예외:
BadKind - 메소드가, 올바르지 않은 종류의 TypeCode 객체로 불려 갔을 경우

fixed_digits

public abstract short fixed_digits()
                            throws BadKind 
TypeCode 객체로 기술된 fixed 형의 자리수를 돌려줍니다. 예를 들어, 수치 3000.275d 의 형태 코드는 fixed>7, 3< 입니다. 7 은 정밀도, 3 은 스케일입니다.

반환값:
자리수의 총수
예외:
BadKind - 이 메소드가, 올바르지 않은 종류의 TypeCode 객체로 불려 갔을 경우

fixed_scale

public abstract short fixed_scale()
                           throws BadKind 
TypeCode 객체로 기술된 fixed 형의 스케일을 돌려줍니다. 정의 수치는, 소수점의 우측에 있는 자리수를 나타냅니다. 예를 들어, 수치 3000d 의 형태 코드는 fixed>4, 0> 입니다. 최초의 수치는 정밀도로, 2 번째의 수치는 스케일입니다. 부의 수치도 가능합니다. 그 경우는, 소수점의 좌측으로 제로를 붙입니다. 이 경우,fixed>1, -3< 는 수치 3000d 의 형태 코드가 됩니다.

반환값:
TypeCode 객체로 기술된다 fixed 형의 스케일
예외:
BadKind - 이 메소드가, 올바르지 않은 종류의 TypeCode 객체로 불려 갔을 경우

member_visibility

public abstract short member_visibility(int index)
                                 throws BadKind ,
                                        Bounds 
지정된 인덱스의 멤버의 가시성을 나타내는 정수를 돌려줍니다. 이 오퍼레이션은, 비 boxed 치 TypeCode 객체만으로 호출할 수가 있습니다.

파라미터:
index - 치에의 인덱스를 나타낸다 int
반환값:
PRIVATE_MEMBER.value 또는 PUBLIC_MEMBER.value
예외:
BadKind - 이 메소드가, 치 형이 아닌 TypeCode 객체로 불려 갔을 경우
Bounds - 지정한 인덱스가 범위외에 있는 경우
관련 항목:
CORBA 패키지에 구현되어 있지 않은 기능에 대한 코멘트

type_modifier

public abstract short type_modifier()
                             throws BadKind 
TypeCode 객체가 기술하는 치 형의 수식자를 나타내는 정수를 돌려줍니다. 반환되는 정수는,VM_NONE.value,VM_ABSTRACT.value,VM_CUSTOM.value, 또는 VM_TRUNCATABLE.value 의 어떤 것인가일 필요가 있습니다.

반환값:
TypeCode 객체로 기술된다 치 형을 기술하는 정수
예외:
BadKind - 이 메소드가, 치 형이 아닌 TypeCode 객체로 불려 갔을 경우
관련 항목:
CORBA 패키지에 구현되어 있지 않은 기능에 대한 코멘트

concrete_base_type

public abstract TypeCode  concrete_base_type()
                                     throws BadKind 
TypeCode 객체로 기술되는 치 형의 구상 기저형을 기술하는 TypeCode 객체를 돌려줍니다. 구상 기저형이 없는 경우는, null 를 돌려줍니다.

반환값:
TypeCode 객체로 기술된다 치 형의 구상 기저형을 기술한다 TypeCode 객체
예외:
BadKind - 이 메소드가, 비 boxed 치 형의 TypeCode 객체로 불려 갔을 경우
관련 항목:
CORBA 패키지에 구현되어 있지 않은 기능에 대한 코멘트

JavaTM Platform
Standard Ed. 6

버그의 보고와 기능의 요청
한층 더 자세한 API 레퍼런스 및 개발자 문서에 대해서는,Java SE 개발자용 문서를 참조해 주세요. 개발자전용의 상세한 해설, 개념의 개요, 용어의 정의, 버그의 회피책, 및 코드 실례가 포함되어 있습니다.

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.