JavaTM Platform
Standard Ed. 6

org.omg.DynamicAny
인터페이스 DynAnyFactoryOperations

기존의 서브 인터페이스의 일람:
DynAnyFactory
기존의 구현 클래스의 일람:
_DynAnyFactoryStub


public interface DynAnyFactoryOperations

DynAny 객체는, DynAnyFactory 객체로 오퍼레이션을 호출하는 것으로 작성할 수 있습니다. 일반적으로, DynAny 객체를 작성하는 방법은 2 개 있습니다.

구축형 DynAny 객체에서는, 원가요소의 값에의 액세스를 캡슐화하는 것 같은 DynAny 객체를 새롭게 작성할 수 있는 오퍼레이션이 지원됩니다. DynAny 객체에서는, 카피 오퍼레이션에 의한 DynAny 객체의 신규 작성도 지원하고 있습니다. DynAnyFactory 객체에의 참조를 가져오려면 , ORB.resolve_initial_references()를 호출합니다. 이 때, 식별자 파라미터를 「DynAnyFactory」라고 하는 캐릭터 라인 정수로 설정합니다.

일반적으로, any 의 동적 해석에서는, 최초로 create_dyn_any()를 사용해 DynAny 객체를 작성합니다. 작성되는 DynAny 객체 참조는, any 의 형태에 의해, DynFixed, DynStruct, DynSequence, DynArray, DynUnion, DynEnum, 또는 DynValue 라고 하는 객체 참조에 네로우 변환할 수 있습니다.

any 의 동적 작성에서는, create_dyn_any_from_type_code()를 사용해 DynAny 객체를 작성합니다. 이 때, 작성하는 값에 관련짓는 TypeCode 를 건네줍니다. 반환되는 참조는, 필요에 따라서 DynStruct 등이 복잡한 형태의 어떤 것인가에 네로우 변환할 수 있습니다. 다음에, 결과의 객체로 오퍼레이션을 호출해 값을 초기화합니다. 마지막으로, to_any 오퍼레이션을 기동해, 구축형 DynAny 로부터 값을 작성합니다.


메소드의 개요
 DynAny create_dyn_any_from_type_code (TypeCode  type)
          TypeCode 로부터 DynAny 를 작성합니다.
 DynAny create_dyn_any (Any  value)
          any 치로부터 DynAny 객체를 신규 작성합니다.
 

메소드의 상세

create_dyn_any

DynAny  create_dyn_any(Any  value)
                      throws InconsistentTypeCode 
any 치로부터 DynAny 객체를 신규 작성합니다. any 치에 관련지을 수 있고 있는 TypeCode 의 카피가, 결과적으로 작성되는 DynAny 객체에 할당할 수 있습니다. DynAny 객체에 관련지을 수 있는 값은, 원의 any 의 값의 카피가 됩니다. 작성된 DynAny 의 현재 위치는, 건네받은 값에 컴퍼넌트가 있는 경우는 0, 그 이외의 경우는 -1 으로 설정됩니다.

예외:
InconsistentTypeCode - 치의 TypeCode 가 TCKind of tk_Principal, tk_native, 또는 tk_abstract_interface 인 경우

create_dyn_any_from_type_code

DynAny  create_dyn_any_from_type_code(TypeCode  type)
                                     throws InconsistentTypeCode 
TypeCode 로부터 DynAny 를 작성합니다. TypeCode 에 의해, 작성되는 객체의 형태는 DynAny 또는 그리고 파생한 DynStruct 등의 형태의 어떤 것인가가 됩니다. 반환되는 참조는, 파생형에 네로우 변환할 수 있습니다. 어느 경우도, TypeCode 로부터 작성된 DynAny 에는 디폴트 값가 있습니다. 기본형의 디폴트 값는 다음과 같이 됩니다. 복합형의 경우는, 대응하는 DynAny 를 작성하면(자), 다음과 같은 디폴트 값를 할당할 수 있습니다.

예외:
InconsistentTypeCode

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 도 참조해 주세요.