|
JavaTM Platform Standard Ed. 6 |
|||||||||
전의 패키지 다음의 패키지 | 프레임 있어 프레임 없음 |
any
에 관련지을 수 있었던 데이터값의 횡단(traverse), 및 데이터값의 기본적인 원가요소를 추출하기 위한 클래스와 인터페이스를 제공합니다.
참조처:
설명
인터페이스의 개요 | |
---|---|
DynAny | Any 의 값은, DynAny 객체를 통해 동적으로 해석 (횡단(traverse)) 및 구축할 수 있습니다. |
DynAnyFactory | DynAny 객체는, DynAnyFactory 객체로 오퍼레이션을 호출하는 것으로 작성할 수 있습니다. |
DynAnyFactoryOperations | DynAny 객체는, DynAnyFactory 객체로 오퍼레이션을 호출하는 것으로 작성할 수 있습니다. |
DynAnyOperations | Any 의 값은, DynAny 객체를 통해 동적으로 해석 (횡단(traverse)) 및 구축할 수 있습니다. |
DynArray | DynArray 객체에 의해, IDL 의 배열의 조작이 지원됩니다. |
DynArrayOperations | DynArray 객체에 의해, IDL 의 배열의 조작이 지원됩니다. |
DynEnum | DynEnum 객체에 의해, IDL 의 열거치의 조작이 지원됩니다. |
DynEnumOperations | DynEnum 객체에 의해, IDL 의 열거치의 조작이 지원됩니다. |
DynFixed | DynFixed 객체에 의해, IDL 의 fixed 치의 조작이 지원됩니다. |
DynFixedOperations | DynFixed 객체에 의해, IDL 의 fixed 치의 조작이 지원됩니다. |
DynSequence | DynSequence 객체에 의해, IDL 의 순서의 조작이 지원됩니다. |
DynSequenceOperations | DynSequence 객체에 의해, IDL 의 순서의 조작이 지원됩니다. |
DynStruct | DynStruct 객체에 의해, IDL 구조체 및 예외치의 조작이 지원됩니다. |
DynStructOperations | DynStruct 객체에 의해, IDL 구조체 및 예외치의 조작이 지원됩니다. |
DynUnion | DynUnion 객체에 의해, IDL 의 공용체의 조작이 지원됩니다. |
DynUnionOperations | DynUnion 객체에 의해, IDL 의 공용체의 조작이 지원됩니다. |
DynValue | DynValue 객체에 의해, IDL 의 비 boxed 치 형의 조작이 지원됩니다. |
DynValueBox | DynValueBox 객체에 의해, IDL 의 boxed 치 형의 조작이 지원됩니다. |
DynValueBoxOperations | DynValueBox 객체에 의해, IDL 의 boxed 치 형의 조작이 지원됩니다. |
DynValueCommon | DynValueCommon 는, DynValue 및 DynValueBox 인터페이스로 지원되는 오퍼레이션을 제공합니다. |
DynValueCommonOperations | DynValueCommon 는, DynValue 및 DynValueBox 인터페이스로 지원되는 오퍼레이션을 제공합니다. |
DynValueOperations | DynValue 객체에 의해, IDL 의 비 boxed 치 형의 조작이 지원됩니다. |
클래스의 개요 | |
---|---|
_DynAnyFactoryStub | DynAny 객체는, DynAnyFactory 객체로 오퍼레이션을 호출하는 것으로 작성할 수 있습니다. |
_DynAnyStub | Any 의 값은, DynAny 객체를 통해 동적으로 해석 (횡단(traverse)) 및 구축할 수 있습니다. |
_DynArrayStub | DynArray 객체에 의해, IDL 의 배열의 조작이 지원됩니다. |
_DynEnumStub | DynEnum 객체에 의해, IDL 의 열거치의 조작이 지원됩니다. |
_DynFixedStub | DynFixed 객체에 의해, IDL 의 fixed 치의 조작이 지원됩니다. |
_DynSequenceStub | DynSequence 객체에 의해, IDL 의 순서의 조작이 지원됩니다. |
_DynStructStub | DynStruct 객체에 의해, IDL 구조체 및 예외치의 조작이 지원됩니다. |
_DynUnionStub | DynUnion 객체에 의해, IDL 의 공용체의 조작이 지원됩니다. |
_DynValueStub | DynValue 객체에 의해, IDL 의 비 boxed 치 형의 조작이 지원됩니다. |
AnySeqHelper | org/omg/DynamicAny/AnySeqHelper.java. |
DynAnyFactoryHelper | DynAny 객체는, DynAnyFactory 객체로 오퍼레이션을 호출하는 것으로 작성할 수 있습니다. |
DynAnyHelper | Any 의 값은, DynAny 객체를 통해 동적으로 해석 (횡단(traverse)) 및 구축할 수 있습니다. |
DynAnySeqHelper | org/omg/DynamicAny/DynAnySeqHelper.java. |
DynArrayHelper | DynArray 객체에 의해, IDL 의 배열의 조작이 지원됩니다. |
DynEnumHelper | DynEnum 객체에 의해, IDL 의 열거치의 조작이 지원됩니다. |
DynFixedHelper | DynFixed 객체에 의해, IDL 의 fixed 치의 조작이 지원됩니다. |
DynSequenceHelper | DynSequence 객체에 의해, IDL 의 순서의 조작이 지원됩니다. |
DynStructHelper | DynStruct 객체에 의해, IDL 구조체 및 예외치의 조작이 지원됩니다. |
DynUnionHelper | DynUnion 객체에 의해, IDL 의 공용체의 조작이 지원됩니다. |
DynValueHelper | DynValue 객체에 의해, IDL 의 비 boxed 치 형의 조작이 지원됩니다. |
FieldNameHelper | org/omg/DynamicAny/FieldNameHelper.java. |
NameDynAnyPair | org/omg/DynamicAny/NameDynAnyPair.java. |
NameDynAnyPairHelper | org/omg/DynamicAny/NameDynAnyPairHelper.java. |
NameDynAnyPairSeqHelper | org/omg/DynamicAny/NameDynAnyPairSeqHelper.java. |
NameValuePair | org/omg/DynamicAny/NameValuePair.java. |
NameValuePairHelper | org/omg/DynamicAny/NameValuePairHelper.java. |
NameValuePairSeqHelper | org/omg/DynamicAny/NameValuePairSeqHelper.java. |
실행시에 any
에 관련지을 수 있었던 데이터값의 횡단(traverse), 및 데이터값의 기본적인 원가요소를 추출하기 위한 클래스와 인터페이스를 제공합니다.
any
는, 그 any
의 형태에 대해 정적인 정보가 없는 (IDL 컴파일러가 그 형태에 대해 생성한 코드가, 객체 구현을 포함해 컴파일되어 있지 않다) 프로그램에 건네줄 수가 있습니다. 이 때문에, 객체는 any
를 받아도, 그것을 사용하기 위한 이식성이 있는 메소드가 없게 됩니다.
DynAny
를 사용하면(자),any
의 데이터값의 횡단(traverse)을 실행시에 실시해, 데이터값의 기본적인 원가요소를 추출할 수가 있습니다. 이것은, 강력한 총칭 서버 (브릿지, 필터링을 지원하는 이벤트 채널)를 작성하는 경우에 도움이 됩니다. 또, 형태에 관한 정적인 정보를 가지지 않고 , 실행시에 any
를 구축할 수도 있습니다. 이것은, 총칭 클라이언트 (브릿지, 브라우저, 디버거, 사용자 인터페이스 툴)를 작성하는 경우에 도움이 됩니다.
Any
의 값은,DynAny 객체를 통해 동적으로 해석 (횡단(traverse)) 및 구축할 수 있습니다. DynAny 객체는 데이터값에 관련지을 수 있습니다만, 이 데이터값는 Any 에 삽입된 값의 카피에 대응합니다. DynAny 객체는, 컴퍼넌트의 DynAny 의 순서 붙일 수 있었던 컬렉션이라고 볼 수가 있습니다. DynAny 가 long
등의 기본형을 나타내는 경우, 또는 빈 상태(empty)의 예외와 같이 컴퍼넌트가 없는 형태를 나타내는 경우는, 컴퍼넌트의 순서 붙일 수 있었던 컬렉션은 비웁니다.
각각의 DynAny 객체로, 그 DynAny 의 컴퍼넌트의 컬렉션내에 있어서의 현재 위치가 파악됩니다. 현재 위치는, 0 으로부터 n-1 의 인덱스치로 나타납니다 (n 는 컴퍼넌트의 수). -1 그렇다고 하는 특별한 인덱스치도 있어, 이것은 현재 위치가 어디도 지시하지 않은 것을 의미합니다. 현재 위치를 가질 수 없는 값 (빈 상태(empty)의 예외등)의 경우, 인덱스치는 -1 으로 고정됩니다. DynAny
가 컴퍼넌트를 가지는 값으로 초기화되었을 경우, 인덱스도 0 에 초기화됩니다. 초기화되어 있지 않은 DynAny
(DynAny
에 값이 없지만, 컴퍼넌트를 가질 수 있는 TypeCode
가 있다)가 작성되었을 경우는, 현재 위치는 DynAny
에 의해 나타내지는 값의 형태에 따라서 달라, 신규 작성된 DynAny
의 컴퍼넌트가 디폴트 값를 가질 수 있을지 어떨지에 의해 0 또는 -1 이 됩니다.
rewind
,seek
, 및 next
의 반복 조작을 사용하면(자), 현재 위치를 변경할 수 있습니다. current_component
조작은, 현재 위치의 컴퍼넌트를 돌려줍니다. component_count
조작은 DynAny
의 컴퍼넌트의 수를 돌려줍니다. 이러한 조작을 아울러 사용하면(자), 컴퍼넌트의 내용을 (재귀적으로) 조사하는 등,DynAny
의 컴퍼넌트에 대해서 반복 처리를 실시할 수 있습니다.
구축형과 관련지을 수 있었던 DynAny
객체를, 구축형 DynAny
객체라고 합니다. IDL 의 각종 구축형 (fixed, enum, struct, sequence, union, array, exception, 치 형)의 각각 붙어,DynAny
인터페이스로부터 상속된 인터페이스가 있습니다. 구축형 DynAny
객체는,DynAny
객체를 신규 작성하기 위한 조작을 export 합니다. 작성되는 객체는 각각 구축형의 데이터값의 컴퍼넌트에 관련지을 수 있습니다. 예를 들어,DynStruct
는 struct
치와 관련지을 수 있습니다. 즉,DynStruct
는, 구조체의 멤버 마다 컴퍼넌트가 1 개씩 있는 것 같은, 순서 붙일 수 있었던 컬렉션을 소유한다고 볼 수가 있습니다. DynStruct
객체는,struct
의 멤버가 관련지을 수 있는 DynAny
객체를 신규 작성하기 위한 조작을 export 합니다.
다른 (구축형) DynAny
객체로부터 DynAny
객체를 얻었을 경우, 예를 들어 DynStruct
로부터 작성된, 구조체 멤버를 나타내는 DynAny
는,DynStruct
에 논리적으로 포함되게 됩니다. insert
또는 get
조작을 호출해도, 현재 위치는 변경되지 않습니다. 최상정도의 DynAny
객체 (다른 DynAny
의 컴퍼넌트는 아닌 것)를 파기하면(자), 그 컴퍼넌트의 DynAny
도 파기됩니다. 최상정도가 아닌 DynAny
를 파기했을 경우는 아무것도 일어나지 않습니다. 파기된 최상정도의 DynAny
, 또는 그 하위 객체에 대해서 조작을 호출하면(자), OBJECT_NOT_EXIST 가 throw 됩니다. DynAny
를 파기한 뒤도, 거기에 관련지을 수 있는 데이터값의 컴퍼넌트를 조작하려면 , 우선 컴퍼넌트의 DynAny
를 작성하고 나서, 작성한 DynAny
객체의 카피를 작성합니다.
DynAny
객체의 동작은, 할당할 수 있었던 메모리 공간과 액세스 속도에 관해서 효과적인 구현을 실현할 수 있도록(듯이) 정의되고 있습니다. DynAny
객체는, 실행시에 any
로부터 추출된 값의 횡단(traverse)이나,any
의 값의 구축을 실시하기 위해서(때문에) 사용하는 것이 상정되고 있습니다. 다른 용도에서의 사용은 추천할 수 없습니다.
Insert
와 get
의 각 조작은, 기본 DynAny
객체의 조작에 필요합니다만, 구축형 DynAny
객체의 조작에도 도움이 됩니다. 구축형 DynAny
객체에 기본 데이터형의 값을 삽입하면(자),DynAny
객체에 관련지을 수 있었던 구축형 데이터값의 현재의 컴퍼넌트를 초기화하게 됩니다. 예를 들어,DynStruct
로 insert_boolean
를 호출하면(자), 관련하는 struct
의 데이터값의 현재 위치에 boolean
의 데이터값가 삽입됩니다. 값의 TypeCode
가 DynAny
에 포함되는 TypeCode
와 같은 경우, 값의 삽입과 추출을 통해 형태는 같게 됩니다. DynAny
에 컴퍼넌트가 있는 경우는, 값의 삽입과 추출에 있어서의 형태는 현재 위치의 DynAny
의 TypeCode
와 같게 됩니다.
기본적인 오퍼레이션에는 다음의 것이 있습니다.
DynAny
객체와 DynAnyFactory
객체는, 그것들이 작성 및 사용되는 프로세스에 대해서 로컬이라고 상정되고 있습니다. 즉,DynAny
및 DynAnyFactory
객체에의 참조를 다른 프로세스에 export 하거나ORB.object_to_string()
로 외부화하거나 할 수 없습니다. 실행을 시도하면(자) MARSHAL 시스템 예외가 발생합니다. IDL 에 인터페이스가 지정되고 있기 (위해)때문에,DynAny
객체에서는 표준의 org.omg.CORBA.Object
인터페이스에 정의되고 있는 조작을 export 할 수 있습니다. 다만,Object
인터페이스를 통해 export 한 조작을 호출하려고 하면(자), 표준 NO_IMPLEMENT 예외가 발생하는 일이 있습니다. DynAny
객체를 DII 와 사용하려고 하면(자), NO_IMPLEMENT 예외가 발생하는 경우가 있습니다.
Java(TM) Platform, Standard Edition 6 ORB 가 준거하는 공식의 스펙의 지원 섹션의 정확한 리스트는,「Java(TM) SE 6 에서의 정식적 CORBA 지원 스펙」을 참조해 주세요.
|
JavaTM Platform Standard Ed. 6 |
|||||||||
전의 패키지 다음의 패키지 | 프레임 있어 프레임 없음 |
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.