I wrote: > I'm attaching the unified diff from the CORBA 3.1 associated files to > the files contained orbit2. This diff is very small, suggesting that > either the files in orbit2 are modified copies of the CORBA 3.1 > associated files, or that the orbit2 files were derived (i.e. are a > derived work of) the CORBA 3.1 specification. and of course I forgot the actual attachment. Here it is.
Attachment:
pgp0snfioTWVG.pgp
Description: PGP signature
Only in 3.1: CONV_FRAME.idl diff -u 3.1/CORBA_Object.idl orbit2/CORBA_Object.idl --- 3.1/CORBA_Object.idl 2009-08-25 02:38:32.115092388 +0200 +++ orbit2/CORBA_Object.idl 2009-08-25 02:45:23.023535051 +0200 @@ -9,7 +9,7 @@ Flags arg_modes; // argument mode flags }; - interface ORB; // PIDL Forward Declaration + enum SetOverrideType {SET_OVERRIDE, ADD_OVERRIDE}; interface Object { // PIDL @@ -40,7 +40,7 @@ in Identifier operation, in NVList arg_list, inout NamedValue result, - out Request req, + out Request request, in Flags req_flag ); @@ -67,9 +67,5 @@ out PolicyList inconsistent_policies ); - string repository_id(); - Object get_component (); - - ORB get_ORB (); }; diff -u 3.1/CORBA_ORB.idl orbit2/CORBA_ORB.idl --- 3.1/CORBA_ORB.idl 2009-08-25 02:38:21.130547171 +0200 +++ orbit2/CORBA_ORB.idl 2009-08-25 02:45:22.987547227 +0200 @@ -8,27 +8,24 @@ typedef unsigned short ServiceType; typedef unsigned long ServiceOption; typedef unsigned long ServiceDetailType; - typedef CORBA::OctetSeq ServiceDetailData; - typedef sequence<ServiceOption> ServiceOptionSeq; const ServiceType Security = 1; struct ServiceDetail { ServiceDetailType service_detail_type; - ServiceDetailData service_detail; + sequence <octet> service_detail; }; - typedef sequence<ServiceDetail> ServiceDetailSeq; - struct ServiceInformation { - ServiceOptionSeq service_options; - ServiceDetailSeq service_details; + sequence <ServiceOption> service_options; + sequence <ServiceDetail> service_details; }; native ValueFactory; typedef string ORBid; + // frehberg@gnome-de.org exception WrongTransaction {}; interface ORB { // PIDL diff -u 3.1/CORBA_Policy.idl orbit2/CORBA_Policy.idl --- 3.1/CORBA_Policy.idl 2009-08-25 02:38:38.655419525 +0200 +++ orbit2/CORBA_Policy.idl 2009-08-25 02:45:23.095561262 +0200 @@ -12,6 +12,8 @@ typedef sequence <Policy> PolicyList; typedef sequence <PolicyType> PolicyTypeSeq; + // InvalidPolicies added by frehberg@gnome-de.org + exception InvalidPolicies { sequence <unsigned short> indices; }; typedef short PolicyErrorCode; exception PolicyError {PolicyErrorCode reason;}; @@ -22,19 +24,3 @@ const PolicyErrorCode BAD_POLICY_VALUE = 3; const PolicyErrorCode UNSUPPORTED_POLICY_VALUE = 4; - enum SetOverrideType {SET_OVERRIDE, ADD_OVERRIDE}; - - exception InvalidPolicies { - sequence<unsigned short> indicies; - }; - - interface PolicyManager { - PolicyList get_policy_overrides(in PolicyTypeSeq ts); - - void set_policy_overrides(in PolicyList policies, - in SetOverrideType set_add) - raises(InvalidPolicies); - }; - - local interface PolicyCurrent : PolicyManager, Current { }; - diff -u 3.1/CORBA_Stream.idl orbit2/CORBA_Stream.idl --- 3.1/CORBA_Stream.idl 2009-08-25 02:39:09.736955873 +0200 +++ orbit2/CORBA_Stream.idl 2009-08-25 02:45:23.103549927 +0200 @@ -22,6 +22,7 @@ unsigned long offset; }; +#ifndef _ORBIT2_ abstract valuetype DataOutputStream { void write_any (in any value); void write_boolean (in boolean value); @@ -186,3 +187,4 @@ in short scale ) raises (BadFixedValue); }; +#endif diff -u 3.1/DynamicAny.idl orbit2/DynamicAny.idl --- 3.1/DynamicAny.idl 2009-08-25 02:39:45.006711253 +0200 +++ orbit2/DynamicAny.idl 2009-08-25 02:45:23.151537789 +0200 @@ -56,7 +56,7 @@ raises(TypeMismatch, InvalidValue); void insert_string( in string value) raises(TypeMismatch, InvalidValue); - void insert_reference(in Object value) + void insert_reference(in CORBA::Object value) raises(TypeMismatch, InvalidValue); void insert_typecode(in CORBA::TypeCode value) @@ -77,9 +77,10 @@ raises(TypeMismatch, InvalidValue); void insert_dyn_any(in DynAny value) raises(TypeMismatch, InvalidValue); +#ifndef _ORBIT2_ void insert_val( in ValueBase value) raises(TypeMismatch, InvalidValue); - +#endif boolean get_boolean() raises(TypeMismatch, InvalidValue); octet get_octet() @@ -100,7 +101,7 @@ raises(TypeMismatch, InvalidValue); string get_string() raises(TypeMismatch, InvalidValue); - Object get_reference() + CORBA::Object get_reference() raises(TypeMismatch, InvalidValue); CORBA::TypeCode get_typecode() raises(TypeMismatch, InvalidValue); @@ -118,9 +119,10 @@ raises(TypeMismatch, InvalidValue); DynAny get_dyn_any() raises(TypeMismatch, InvalidValue); +#ifndef _ORBIT2_ ValueBase get_val() raises(TypeMismatch, InvalidValue); - +#endif boolean seek(in long index); void rewind(); boolean next(); Only in 3.1: Dynamic.idl Only in 3.1: FT.idl diff -u 3.1/GIOP.idl orbit2/GIOP.idl --- 3.1/GIOP.idl 2009-08-25 02:39:56.227269612 +0200 +++ orbit2/GIOP.idl 2009-08-25 02:45:23.067537520 +0200 @@ -20,11 +20,6 @@ typeprefix GIOP "omg.org"; #endif // _PRE_3_0_COMPILER_ -#ifndef MAX_GIOP_MINOR_VERSION -#define MAX_GIOP_MINOR_VERSION 4 -#endif - - struct Version { octet major; octet minor; @@ -34,34 +29,21 @@ // be available for V1.0 and V1.1 typedef sequence<octet> Principal; -#if MAX_GIOP_MINOR_VERSION == 0 - - // GIOP 1.0 - enum MsgType_1_0{ // rename from MsgType - Request, Reply, CancelRequest, - LocateRequest, LocateReply, - CloseConnection, MessageError - }; - typedef MsgType_1_0 MsgType; - -#else // GIOP 1.1 - enum MsgType_1_1{ + enum MsgType_1_1 { Request, Reply, CancelRequest, LocateRequest, LocateReply, CloseConnection, MessageError, Fragment // GIOP 1.1 addition }; - typedef MsgType_1_1 MsgType_1_2; - typedef MsgType_1_1 MsgType_1_3; - typedef MsgType_1_1 MsgType; -#endif + typedef GIOP::MsgType_1_1 MsgType_1_2; + typedef GIOP::MsgType_1_1 MsgType_1_3; + // GIOP 1.0 - typedef char Magicn[4]; struct MessageHeader_1_0 {// Renamed from MessageHeader - Magicn magic; + char magic [4]; Version GIOP_version; boolean byte_order; octet message_type; @@ -70,7 +52,7 @@ // GIOP 1.1 struct MessageHeader_1_1 { - Magicn magic; + char magic [4]; Version GIOP_version; octet flags; // GIOP 1.1 change octet message_type; @@ -88,19 +70,18 @@ IOP::ServiceContextList service_context; unsigned long request_id; boolean response_expected; - IOP::ObjectKey object_key; + sequence <octet> object_key; string operation; Principal requesting_principal; }; // GIOP 1.1 - typedef octet RequestReserved[3]; struct RequestHeader_1_1 { IOP::ServiceContextList service_context; unsigned long request_id; boolean response_expected; - RequestReserved reserved; // Added in GIOP 1.1 - IOP::ObjectKey object_key; + octet reserved[3]; // Added in GIOP 1.1 + sequence <octet> object_key; string operation; Principal requesting_principal; }; @@ -115,14 +96,14 @@ IOP::IOR ior; }; union TargetAddress switch (AddressingDisposition) { - case KeyAddr: IOP::ObjectKey object_key; + case KeyAddr: sequence <octet> object_key; case ProfileAddr: IOP::TaggedProfile profile; case ReferenceAddr: IORAddressingInfo ior; }; struct RequestHeader_1_2 { unsigned long request_id; octet response_flags; - RequestReserved reserved; + octet reserved[3]; TargetAddress target; string operation; // Principal not in GIOP 1.2 @@ -132,8 +113,7 @@ // GIOP 1.3 typedef RequestHeader_1_2 RequestHeader_1_3; -#if MAX_GIOP_MINOR_VERSION < 2 - +#ifndef GIOP_1_2 // GIOP 1.0 and 1.1 enum ReplyStatusType_1_0 {// Renamed from ReplyStatusType NO_EXCEPTION, @@ -152,11 +132,7 @@ // GIOP 1.1 typedef ReplyHeader_1_0 ReplyHeader_1_1; // Same Header contents for 1.0 and 1.1 - typedef ReplyStatusType_1_0 ReplyStatusType; -#endif - -#if MAX_GIOP_MINOR_VERSION >= 2 - +#else // GIOP 1.2 enum ReplyStatusType_1_2 { NO_EXCEPTION, @@ -166,7 +142,6 @@ LOCATION_FORWARD_PERM, // new value for 1.2 NEEDS_ADDRESSING_MODE // new value for 1.2 }; - typedef ReplyStatusType_1_2 ReplyStatusType; struct ReplyHeader_1_2 { unsigned long request_id; @@ -176,7 +151,7 @@ // GIOP 1.3 typedef ReplyHeader_1_2 ReplyHeader_1_3; -#endif +#endif // GIOP_1_2 struct SystemExceptionReplyBody { string exception_id; @@ -191,7 +166,7 @@ // GIOP 1.0 struct LocateRequestHeader_1_0 {// Renamed LocationRequestHeader unsigned long request_id; - IOP::ObjectKey object_key; + sequence <octet> object_key; }; // GIOP 1.1 @@ -200,14 +175,14 @@ // GIOP 1.2 struct LocateRequestHeader_1_2 { - unsigned long request_id; - TargetAddress target; + unsigned long request_id; + TargetAddress target; }; // GIOP 1.3 typedef LocateRequestHeader_1_2 LocateRequestHeader_1_3; -#if MAX_GIOP_MINOR_VERSION < 2 +#ifndef GIOP_1_2 // GIOP 1.0 and 1.1 enum LocateStatusType_1_0 {// Renamed from LocateStatusType UNKNOWN_OBJECT, @@ -242,7 +217,7 @@ // GIOP 1.3 typedef LocateReplyHeader_1_2 LocateReplyHeader_1_3; -#endif // MAX_GIOP_VERSION_NUMBER +#endif // GIOP_1_2 // GIOP 1.2 struct FragmentHeader_1_2 { diff -u 3.1/IIOP.idl orbit2/IIOP.idl --- 3.1/IIOP.idl 2009-08-25 02:40:08.223871058 +0200 +++ orbit2/IIOP.idl 2009-08-25 02:45:23.043532973 +0200 @@ -25,15 +25,15 @@ Version iiop_version; string host; unsigned short port; - IOP::ObjectKey object_key; + sequence <octet> object_key; }; struct ProfileBody_1_1 {// also used for 1.2 Version iiop_version; string host; unsigned short port; - IOP::ObjectKey object_key; + sequence <octet> object_key; // Added in 1.1 unchanged for 1.2 - IOP::TaggedComponentSeq components; + sequence <IOP::TaggedComponent> components; }; // BiDirectional IIOP diff -u 3.1/IOP.idl orbit2/IOP.idl --- 3.1/IOP.idl 2009-08-25 02:40:13.752140011 +0200 +++ orbit2/IOP.idl 2009-08-25 02:45:23.059549134 +0200 @@ -25,14 +25,11 @@ const ProfileId TAG_MULTIPLE_COMPONENTS = 1; const ProfileId TAG_SCCP_IOP = 2; - typedef CORBA::OctetSeq ProfileData; - struct TaggedProfile { ProfileId tag; - ProfileData profile_data; + sequence <octet> profile_data; }; - typedef sequence <TaggedProfile> TaggedProfileSeq; // The IOR @@ -40,8 +37,9 @@ // object-specific protocol profiles, plus a type ID. struct IOR { string type_id; - TaggedProfileSeq profiles; + sequence <TaggedProfile> profiles; }; + // IOR Components @@ -51,18 +49,13 @@ typedef unsigned long ComponentId; - typedef CORBA::OctetSeq ComponentData; - struct TaggedComponent { ComponentId tag; - ComponentData component_data; + sequence <octet> component_data; }; - typedef sequence <TaggedComponent> TaggedComponentSeq; typedef sequence <TaggedComponent> MultipleComponentProfile; - typedef CORBA::OctetSeq ObjectKey; - const ComponentId TAG_ORB_TYPE = 0; const ComponentId TAG_CODE_SETS = 1; const ComponentId TAG_POLICIES = 2; Only in 3.1: MessageRouting.idl Only in 3.1: Messaging.idl diff -u 3.1/orb.idl orbit2/orb.idl --- 3.1/orb.idl 2009-08-25 02:40:53.290118400 +0200 +++ orbit2/orb.idl 2009-08-25 02:45:23.127542461 +0200 @@ -3,6 +3,20 @@ #ifndef _ORB_IDL_ #define _ORB_IDL_ +// settings for ORBit2 compliance +#ifndef _PRE_3_0_COMPILER_ +#define _PRE_3_0_COMPILER_ +#endif +#ifndef _NO_LOCAL_ +#define _NO_LOCAL_ +#endif +#ifndef _ORBIT2_ +#define _ORBIT2_ +#endif +// end settings for ORBit2 compliance + + + #ifdef _PRE_3_0_COMPILER_ #pragma prefix "omg.org" #else @@ -46,10 +60,13 @@ local interface Current; // Chapter 4, CORBA_Current.idl interface DomainManager; // Chapter 4, CORBA_DomainManager.idl interface Policy; // Chapter 4, CORBA_Policy.idl +#ifndef _ORBIT2_ local interface PollableSet; // Chapter 7, CORBA_Pollable.idl + abstract valuetype CustomMarshal; // Chapter 5, CORBA_valuetype.idl abstract valuetype DataInputStream; // Chapter 5, CORBA_Stream.idl abstract valuetype DataOutputStream; // Chapter 5, CORBA_Stream.idl +#endif // Forward references to Chapter 10, CORBA_InterfaceRepository.idl interface AbstractInterfaceDef; @@ -96,8 +113,10 @@ #include <CORBA_Policy.idl> #include <CORBA_DomainManager.idl> +#ifndef _ORBIT2_ // Chapter 7: Pollable #include <CORBA_Pollable.idl> +#endif // Chapter 10: The Interface Repository #include <CORBA_InterfaceRepository.idl> @@ -106,8 +125,10 @@ // CORBA_TypeCode.idl depends on CORBA_InterfaceRepository.idl #include <CORBA_TypeCode.idl> +#ifndef _ORBIT2_ // Chapter 5: Value Type Semantics #include <CORBA_CustomMarshal.idl> +#endif #include <CORBA_Stream.idl> }; Only in 3.1: PortableInterceptor.idl diff -u 3.1/PortableServer.idl orbit2/PortableServer.idl --- 3.1/PortableServer.idl 2009-08-25 02:40:42.013548036 +0200 +++ orbit2/PortableServer.idl 2009-08-25 02:45:23.143539067 +0200 @@ -38,7 +38,7 @@ native Servant; typedef CORBA::OctetSeq ObjectId; exception ForwardRequest { - Object forward_reference; + CORBA::Object forward_reference; }; // Policy interfaces @@ -118,7 +118,8 @@ void discard_requests( in boolean wait_for_completion) raises(AdapterInactive); void deactivate( in boolean etherealize_objects, - in boolean wait_for_completion); + in boolean wait_for_completion) + raises(AdapterInactive); State get_state(); string get_id(); }; @@ -239,24 +240,24 @@ raises (ObjectNotActive, WrongPolicy); // reference creation operations - Object create_reference ( in CORBA::RepositoryId intf) + CORBA::Object create_reference ( in CORBA::RepositoryId intf) raises (WrongPolicy); - Object create_reference_with_id ( + CORBA::Object create_reference_with_id ( in ObjectId oid, in CORBA::RepositoryId intf); // Identity mapping operations: ObjectId servant_to_id( in Servant p_servant) raises (ServantNotActive, WrongPolicy); - Object servant_to_reference(in Servant p_servant) + CORBA::Object servant_to_reference(in Servant p_servant) raises (ServantNotActive, WrongPolicy); - Servant reference_to_servant(in Object reference) + Servant reference_to_servant(in CORBA::Object reference) raises(ObjectNotActive, WrongAdapter, WrongPolicy); - ObjectId reference_to_id( in Object reference) + ObjectId reference_to_id( in CORBA::Object reference) raises (WrongAdapter, WrongPolicy); Servant id_to_servant( in ObjectId oid) raises (ObjectNotActive, WrongPolicy); - Object id_to_reference( in ObjectId oid) + CORBA::Object id_to_reference( in ObjectId oid) raises (ObjectNotActive, WrongPolicy); readonly attribute CORBA::OctetSeq id; @@ -268,7 +269,7 @@ exception NoContext { }; POA get_POA() raises (NoContext); ObjectId get_object_id() raises (NoContext); - Object get_reference() raises (NoContext); + CORBA::Object get_reference() raises (NoContext); Servant get_servant() raises (NoContext); }; }; diff -u 3.1/pseudo_orb.idl orbit2/pseudo_orb.idl --- 3.1/pseudo_orb.idl 2009-08-25 02:40:59.514419196 +0200 +++ orbit2/pseudo_orb.idl 2009-08-25 02:45:22.979533699 +0200 @@ -69,18 +69,6 @@ // It contains some data definitions needed by Chapter 4 interfaces. // The other reason not to try to rearrange the order is that it's hard. -// The "define" fakes out the compiler to let it compile the "Context" -// interface and references to it even though "context" is a keyword -#define Context CContext - -// The "define" fakes out the compiler to let it compile the "Object" -// interface and references to it even though "Object" is a keyword -#define Object OObject - -// The "define" fakes out the compiler to let it compile the "ValueBase" -// valuetype and references to it even though "ValueBase" is a keyword -#define ValueBase VValueBase - // Forward references, alphabetically interface Context; // Chapter 7, CORBA_Context.idl interface NVList; // Chapter 7, CORBA_NVList.idl @@ -88,16 +76,19 @@ interface ORB; // Chapter 4, CORBA_ORB.idl interface Request; // Chapter 7, CORBA_Request.idl interface ServerRequest; // Chapter 8, CORBA_ServerRequest.idl +#ifndef _ORBIT2_ valuetype ValueBase; // Chapter 4, CORBA_ValueBase.idl - +#endif typedef unsigned long Flags; // Chapter 4: ORB Interface #include <CORBA_Object.idl> #include <CORBA_ORB.idl> +#ifndef _ORBIT2_ // Chapter 5: Value Type Semantics #include <CORBA_ValueBase.idl> +#endif // Chapter 7: Dynamic Invocation Interface #include <CORBA_Request.idl>