From cc62eb20f678cecc1b9b1dbd572b191347a9e907 Mon Sep 17 00:00:00 2001 From: Niclas Eklund Date: Mon, 21 Dec 2009 14:11:22 +0000 Subject: Removed 011 in documentation files --- .../doc/src/ch_event_domain_service.xml | 6 +- lib/cosNotification/doc/src/ch_example.xml | 2 +- lib/ic/doc/src/c-part.xml | 28 +- lib/ic/doc/src/ch_c_corba_env.xml | 2 +- lib/ic/doc/src/ch_c_mapping.xml | 24 +- lib/ic/doc/src/ch_erl_genserv.xml | 12 +- lib/ic/doc/src/ch_erl_plain.xml | 2 +- lib/ic/doc/src/ch_ic_protocol.xml | 36 +- lib/ic/doc/src/ch_java.xml | 8 +- lib/ic/doc/src/erl-part.xml | 28 +- lib/ic/doc/src/ic_c_protocol.xml | 28 +- lib/ic/doc/src/java-part.xml | 28 +- lib/ic/doc/src/old_notes.xml | 1565 -------------------- lib/orber/doc/src/ch_contents.xml | 4 +- lib/orber/doc/src/ch_example.xml | 2 +- lib/orber/doc/src/ch_idl_to_erlang_mapping.xml | 40 +- lib/orber/doc/src/ch_interceptors.xml | 22 +- lib/orber/doc/src/ch_naming_service.xml | 16 +- lib/orber/doc/src/corba.xml | 5 +- lib/orber/doc/src/orber.xml | 2 +- 20 files changed, 143 insertions(+), 1717 deletions(-) delete mode 100644 lib/ic/doc/src/old_notes.xml diff --git a/lib/cosEventDomain/doc/src/ch_event_domain_service.xml b/lib/cosEventDomain/doc/src/ch_event_domain_service.xml index 62378cac91..39ac915b38 100644 --- a/lib/cosEventDomain/doc/src/ch_event_domain_service.xml +++ b/lib/cosEventDomain/doc/src/ch_event_domain_service.xml @@ -97,9 +97,9 @@ ID2 = 'CosEventDomainAdmin_EventDomain':add_channel(ED, Ch2), %% To connect them, we must first define a connection struct: C1 = #'CosEventDomainAdmin_Connection'{supplier_id=ID1, -\011\011\011\011 consumer_id=ID2, -\011\011\011\011 ctype='STRUCTURED_EVENT', -\011\011\011\011 notification_style='Pull'}, + consumer_id=ID2, + ctype='STRUCTURED_EVENT', + notification_style='Pull'}, %% Connect them: 'CosEventDomainAdmin_EventDomain':add_connection(ED, C1), diff --git a/lib/cosNotification/doc/src/ch_example.xml b/lib/cosNotification/doc/src/ch_example.xml index 8cb12bd241..14c0e5c6fd 100644 --- a/lib/cosNotification/doc/src/ch_example.xml +++ b/lib/cosNotification/doc/src/ch_example.xml @@ -124,7 +124,7 @@ ChFac = cosNotificationApp:start_factory([]), {AdminSupplier, ASID}= 'CosNotifyChannelAdmin_EventChannel':new_for_suppliers(Ch, 'OR_OP'), {AdminConsumer, ACID}= -\011'CosNotifyChannelAdmin_EventChannel':new_for_consumers(Ch,'OR_OP'), + 'CosNotifyChannelAdmin_EventChannel':new_for_consumers(Ch,'OR_OP'), %% Use the corresponding Admin object to get access to wanted Proxies diff --git a/lib/ic/doc/src/c-part.xml b/lib/ic/doc/src/c-part.xml index 91c81c8ef3..cef4399960 100644 --- a/lib/ic/doc/src/c-part.xml +++ b/lib/ic/doc/src/c-part.xml @@ -4,23 +4,21 @@
- 2002 - 2007 - Ericsson AB, All Rights Reserved + 20022009 + Ericsson AB. All Rights Reserved. - The contents of this file are subject to the Erlang Public License, - Version 1.1, (the "License"); you may not use this file except in - compliance with the License. You should have received a copy of the - Erlang Public License along with this software. If not, it can be - retrieved online at http://www.erlang.org/. - - 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 language governing rights and limitations - under the License. - - The Initial Developer of the Original Code is Ericsson AB. + The contents of this file are subject to the Erlang Public License, + Version 1.1, (the "License"); you may not use this file except in + compliance with the License. You should have received a copy of the + Erlang Public License along with this software. If not, it can be + retrieved online at http://www.erlang.org/. + + 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 language governing rights and limitations + under the License. + IDL to C language Mapping diff --git a/lib/ic/doc/src/ch_c_corba_env.xml b/lib/ic/doc/src/ch_c_corba_env.xml index 557eeffdd4..bd4b52ca34 100644 --- a/lib/ic/doc/src/ch_c_corba_env.xml +++ b/lib/ic/doc/src/ch_c_corba_env.xml @@ -281,7 +281,7 @@ typedef struct {

By using the CORBA_Environment_alloc/2 function.

The CORBA_Environment_alloc function is defined as:

-\\011 CORBA_Environment *CORBA_Environment_alloc(int inbufsz, + CORBA_Environment *CORBA_Environment_alloc(int inbufsz, int outbufsz);

where:

diff --git a/lib/ic/doc/src/ch_c_mapping.xml b/lib/ic/doc/src/ch_c_mapping.xml index 58b026ee78..f5a921bfd2 100644 --- a/lib/ic/doc/src/ch_c_mapping.xml +++ b/lib/ic/doc/src/ch_c_mapping.xml @@ -770,24 +770,24 @@ CORBA_Environment* oe_env)

While the erlang::binary idl type has the same C-definition as a generated sequence of octets :

binary; -\011 -\011 }; + // an erlang binary + typedef sequence binary; + + }; ]]>

it provides a way on sending trasparent data between C and Erlang.

The C-definition (ic.h) for an erlang binary is :

-\011 typedef struct { -\011 CORBA_unsigned_long _maximum; -\011 CORBA_unsigned_long _length; -\011 CORBA_octet* _buffer; -\011 } erlang_binary; /* ERLANG BINARY */ + typedef struct { + CORBA_unsigned_long _maximum; + CORBA_unsigned_long _length; + CORBA_octet* _buffer; + } erlang_binary; /* ERLANG BINARY */

The differences (between erlang::binary and ]]>) are :

diff --git a/lib/ic/doc/src/ch_erl_genserv.xml b/lib/ic/doc/src/ch_erl_genserv.xml index 972eff7c17..055b751ba1 100644 --- a/lib/ic/doc/src/ch_erl_genserv.xml +++ b/lib/ic/doc/src/ch_erl_genserv.xml @@ -168,18 +168,18 @@ handle_info(Info, State) -> %% IDL specification produce(State) -> case catch random:uniform() of -\\011{'EXIT',_} -> -\\011 {stop, normal, "random:uniform/0 - EXIT", State}; -\\011RUnif -> + {'EXIT',_} -> + {stop, normal, "random:uniform/0 - EXIT", State}; + RUnif -> {reply, RUnif, State} end. init(State, S1, S2, S3) -> case catch random:seed(S1, S2, S3) of -\\011{'EXIT',_} -> -\\011 {stop, normal, State}; -\\011_ -> + {'EXIT',_} -> + {stop, normal, State}; + _ -> {noreply, State} end. diff --git a/lib/ic/doc/src/ch_erl_plain.xml b/lib/ic/doc/src/ch_erl_plain.xml index 36de46f624..1d6f84b5ea 100644 --- a/lib/ic/doc/src/ch_erl_plain.xml +++ b/lib/ic/doc/src/ch_erl_plain.xml @@ -75,7 +75,7 @@

Main file : "plain.idl"

-\011 + module rmod { interface random { diff --git a/lib/ic/doc/src/ch_ic_protocol.xml b/lib/ic/doc/src/ch_ic_protocol.xml index 678fdc766c..68a01a6a46 100644 --- a/lib/ic/doc/src/ch_ic_protocol.xml +++ b/lib/ic/doc/src/ch_ic_protocol.xml @@ -69,9 +69,9 @@ IDL Operations

An IDL operation is declared as follows:

-\011[oneway] RetType Op(in IType1 I1, in IType2 I2, ..., in ITypeN IN, -\011out OType1 O1, out OType2 O2, ..., out OTypeM OM) -\011N, M = 0, 1, 2, ...\011\011(2.1.1) + [oneway] RetType Op(in IType1 I1, in IType2 I2, ..., in ITypeN IN, + out OType1 O1, out OType2 O2, ..., out OTypeM OM) + N, M = 0, 1, 2, ... (2.1.1)

`Op' is the operation name, RetType is the return type, and ITypei, i = 1, 2, ..., N, and OTypej, j = 1, 2, ..., M, are the `in' types @@ -146,13 +146,13 @@

Call (Request/Reply, i.e. not oneway) - request:\011\011 Op\011\011\011atom()\011\011N = 0\011 -\011\011\011 {Op, I1, I2, ..., IN}\011tuple()\011\011N > 0 -\011\011\011\011\011\011\011\011(3.1.1) + request: Op atom() N = 0 + {Op, I1, I2, ..., IN} tuple() N > 0 + (3.1.1) - reply:\011\011 Ret\011\011\011\011\011M = 0 -\011\011\011 {Ret, O1, O2, ..., OM}\011\011\011M > 0 -\011\011\011\011\011\011\011\011(3.1.2) + reply: Ret M = 0 + {Ret, O1, O2, ..., OM} M > 0 + (3.1.2)

Notice: Even if the RetType of the operation Op is declared to be 'void', a return value 'ok' is returned in the reply message. That @@ -166,9 +166,9 @@ Cast (oneway) - notification:\011Op\011\011\011atom()\011\011N = 0 -\011\011\011{Op, I1, I2, ..., IN}\011tuple()\011\011N > 0 -\011\011\011\011\011\011\011\011(3.2.1) + notification: Op atom() N = 0 + {Op, I1, I2, ..., IN} tuple() N > 0 + (3.2.1)

(There is of course no return message).

@@ -184,9 +184,9 @@ Call - request:\011{'$gen_call', {self(), Ref}, Request}\011\011(4.1.1) + request: {'$gen_call', {self(), Ref}, Request} (4.1.1) - reply:\011{Ref, Reply}\011\011\011\011\011(4.1.2) + reply: {Ref, Reply} (4.1.2)

where Request and Reply are the messages defined in the previous chapter.

@@ -195,7 +195,7 @@
Cast - notification: {'$gen_cast', Notification}\011\011(4.2.1) + notification: {'$gen_cast', Notification} (4.2.1)

where Notification is the message defined in the previous chapter.

@@ -205,7 +205,7 @@ Erlang Distribution Protocol

Messages (of interest here) between Erlang nodes are of the form:

- Len(4), Type(1), CtrlBin(N), MsgBin(M)\011\011\011(5.1) + Len(4), Type(1), CtrlBin(N), MsgBin(M) (5.1)

Type is equal to 112 = PASS_THROUGH.

CtrlBin and MsgBin are Erlang terms in binary form (as if created @@ -215,10 +215,10 @@

CtrlBin (of interest here) contains the SEND and REG_SEND control messages, which are binary forms of the Erlang terms

-\011{2, Cookie, ToPid} ,\011\011\011\011\011(5.2) + {2, Cookie, ToPid} , (5.2)

and

-\011{6, FromPid, Cookie, ToName} ,\011\011\011\011(5.3) + {6, FromPid, Cookie, ToName} , (5.3)

respectively.

The CtrlBin(N) message is read and written by erl_interface code diff --git a/lib/ic/doc/src/ch_java.xml b/lib/ic/doc/src/ch_java.xml index 831850f211..a189daa44b 100644 --- a/lib/ic/doc/src/ch_java.xml +++ b/lib/ic/doc/src/ch_java.xml @@ -711,14 +711,14 @@ public class sHelper { // methods public static s unmarshal(OtpInputStream in) throws java.lang.Exception { -\011: -\011: + : + : }; public static void marshal(OtpOutputStream out, s value) throws java.lang.Exception { -\011: -\011: + : + : }; }; diff --git a/lib/ic/doc/src/erl-part.xml b/lib/ic/doc/src/erl-part.xml index b5041dce7f..8dd7001436 100644 --- a/lib/ic/doc/src/erl-part.xml +++ b/lib/ic/doc/src/erl-part.xml @@ -4,23 +4,21 @@

- 2002 - 2007 - Ericsson AB, All Rights Reserved + 20022009 + Ericsson AB. All Rights Reserved. - The contents of this file are subject to the Erlang Public License, - Version 1.1, (the "License"); you may not use this file except in - compliance with the License. You should have received a copy of the - Erlang Public License along with this software. If not, it can be - retrieved online at http://www.erlang.org/. - - 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 language governing rights and limitations - under the License. - - The Initial Developer of the Original Code is Ericsson AB. + The contents of this file are subject to the Erlang Public License, + Version 1.1, (the "License"); you may not use this file except in + compliance with the License. You should have received a copy of the + Erlang Public License along with this software. If not, it can be + retrieved online at http://www.erlang.org/. + + 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 language governing rights and limitations + under the License. + IDL to Erlang language Mapping diff --git a/lib/ic/doc/src/ic_c_protocol.xml b/lib/ic/doc/src/ic_c_protocol.xml index f895fe0723..26862addf9 100644 --- a/lib/ic/doc/src/ic_c_protocol.xml +++ b/lib/ic/doc/src/ic_c_protocol.xml @@ -4,23 +4,21 @@
- 2004 - 2007 - Ericsson AB, All Rights Reserved + 20042009 + Ericsson AB. All Rights Reserved. - The contents of this file are subject to the Erlang Public License, - Version 1.1, (the "License"); you may not use this file except in - compliance with the License. You should have received a copy of the - Erlang Public License along with this software. If not, it can be - retrieved online at http://www.erlang.org/. - - 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 language governing rights and limitations - under the License. - - The Initial Developer of the Original Code is Ericsson AB. + The contents of this file are subject to the Erlang Public License, + Version 1.1, (the "License"); you may not use this file except in + compliance with the License. You should have received a copy of the + Erlang Public License along with this software. If not, it can be + retrieved online at http://www.erlang.org/. + + 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 language governing rights and limitations + under the License. + IC C Protocol Functions diff --git a/lib/ic/doc/src/java-part.xml b/lib/ic/doc/src/java-part.xml index 69cc0f026c..ab4049ee2a 100644 --- a/lib/ic/doc/src/java-part.xml +++ b/lib/ic/doc/src/java-part.xml @@ -4,23 +4,21 @@
- 2002 - 2007 - Ericsson AB, All Rights Reserved + 20022009 + Ericsson AB. All Rights Reserved. - The contents of this file are subject to the Erlang Public License, - Version 1.1, (the "License"); you may not use this file except in - compliance with the License. You should have received a copy of the - Erlang Public License along with this software. If not, it can be - retrieved online at http://www.erlang.org/. - - 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 language governing rights and limitations - under the License. - - The Initial Developer of the Original Code is Ericsson AB. + The contents of this file are subject to the Erlang Public License, + Version 1.1, (the "License"); you may not use this file except in + compliance with the License. You should have received a copy of the + Erlang Public License along with this software. If not, it can be + retrieved online at http://www.erlang.org/. + + 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 language governing rights and limitations + under the License. + IDL to Java language Mapping diff --git a/lib/ic/doc/src/old_notes.xml b/lib/ic/doc/src/old_notes.xml deleted file mode 100644 index 9ba0262573..0000000000 --- a/lib/ic/doc/src/old_notes.xml +++ /dev/null @@ -1,1565 +0,0 @@ - - - - -
- - 20032009 - Ericsson AB. All Rights Reserved. - - - The contents of this file are subject to the Erlang Public License, - Version 1.1, (the "License"); you may not use this file except in - compliance with the License. You should have received a copy of the - Erlang Public License along with this software. If not, it can be - retrieved online at http://www.erlang.org/. - - 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 language governing rights and limitations - under the License. - - - - IDL Compiler Release Notes - - - - 2003-11-19 - AB -
- -
- IC 4.1.8 - -
- Fixed Bugs and Malfunctions - - -

IDL-files containing result or Result as, - for example, parameter name, caused an exit with reason - bad_match.

-

Own Id: OTP-4532

-
- -

Uninitialized variables were used in ic_init_ref for - C backends.

-

Own Id: OTP-4537

- - Aux Id: seq7666, ETOtr17107

-
- -

CORBA_Environment_alloc() left some fields - uninitialized in the returned pointer to an - CORBA_Environment for C backends.

-

Own Id: OTP-4538

-
- -

The function ic_compare_refs() for C backends - could find two unequal references to be equal.

-

Own Id: OTP-4539

-
-
-
-
- -
- IC 4.1.7 - -
- Fixed Bugs and Malfunctions - - -

Operation names were always scoped in C server backend, - irrespective of the setting of the option - scoped_op_calls.

-

Own Id: OTP-4521

- - Aux Id: seq7643, ETOtr16925

-
-
-
-
- -
- IC 4.1.6 - -
- Improvements and New Features - - -

For C backends generated code checks that the - _length field of bounded sequences (i.e. specified - as ]]>) does not exceed the - specified maximum length. If so, an exception is raised.

-

Own Id: OTP-4471

-
-
-
- -
- Fixed Bugs and Malfunctions - - -

The _maximum field was not set for sequence structs - generated by the C backends.

-

Own Id: OTP-4471

- - Aux Id: seq7600, ETOtr16308

-
- -

There was a memory leak in C backends in case there was a - decoding error in a sequence with elements of basic type.

-

Own Id: OTP-4475

-
- -

For for C backends, IDL structs defined within an - interface were not mapped into C structs in appropriate - include files.

-

Own Id: OTP-4481

- - Aux Id: seq7617

-
- -

If the user, incorrectly, trap exit's but did not use the - 'handle_info' compile option it would cause the server to - terminate. The same problem occurred if someone, - illegally, sent a message to the server. It could also - happen for illegal oneway operations.

-

Own Id: OTP-4488

-
-
-
-
- -
- IC 4.1.5 - -
- Fixed Bugs and Malfunctions - - -

Invalid C code was generated for type short.

-

Own Id: OTP-4450

- - Aux Id: seq7582

-
-
-
-
- -
- IC 4.1.4 -
- Fixed Bugs and Malfunctions - - -

Operation functions inherited by an interface were not - placed in the map table in generated code for the C server - backend. As a result such functions were not found by the - switch function of the interface.

-

Own Id: OTP-4448

- - Aux Id: seq7582

-
-
-
-
- -
- IC 4.1.3.1 - -
- Fixed Bugs and Malfunctions - - -

A non-ANSI compliant construct in libic.a was changed.

-

Own Id: -

-
-
-
-
- -
- IC 4.1.3 - -
- Improvements and New Features - - -

For Erlang and C back-ends an IC version stamp has been - added to generated source code. This stamp i preserved in - compiled target code.

-
- -

For C backends an assert() expression has been - added to generated code. That expression asserts that the - result of a memory allocation size calculation is strictly - positive. An error will result in a printout and an - abort(). The assertion can be inhibited by defining - the macro NDEBUG (according to ANSI C).

-

If the assertion is inhibited, and a size calculation error - is detected, an INTERNAL CORBA exception is set.

-
- -

An internal reorganization of C backend generator code has - been done (addition of module ic_cclient). Several - changes has been done in generated C code:

- - -

The typedef ___generic___ has been replaced by - the typedef ___exec_function___, which has been - made more strict; for backward compatibility the - ___generic___ typedef is now an alias for - ___exec_function___.

-
- -

Function parameters that are arrays, has been changed - to be pointers to array slices, which are equivalent - according to ANSI C.

-
- -

The storage class specifier extern has been - removed from function prototypes in header files.

-
- -

Redundant type casts have been removed from generated code. - Also some local "generic" variables have been renamed.

-
-
-
-
-
- -
- Fixed Bugs and Malfunctions - - -

Module info vsn replaced by app_vsn.

-

Own Id: OTP-4341

-
- -

IC-4.1.2 disabled the definition of float constants - beginning with a zero (e.g. 0.14).

-

Own Id: OTP-4367

-
- -

IC did not handle constant definitions correctly for - char, string, wchar and wstring.

-

Own Id: OTP-4067, OTP-3222

-
- -

IC did not recognize all reserved words defined in the - OMG specification (2.3.1). The new keywords are fixed, abstract, custom, factory, local, native, private, public, supports, truncatable, 'ValueBase' and - valuetype. But for now this is only active for the - erl_corba backend and only incorrect usage of - fixed, since this datatype is now supported, - triggers an error for this backend.

-

Own Id: OTP-4368

-
- -

It was not possible to use wchar or wstring inside a - union body when using the Java backend.

-

Own Id: - OTP-4365

-
- -

The compile options this and handle_info - did not behave as described in the documentation. The - timeout now behaves as, for example, - handle_info.

-

Own Id: OTP-4386, OTP-3231

-
- -

If we typedef a sequence, which contains a struct or a union, - the access function id/0 returned an incorrect IFR Id - if a prefix pragma was used.

-

Own Id: OTP-4387

-
- -

If an IDL file contained a prefix pragma, incorrect - IFR-id's was generated in the IFR-registration operation - oe_register for aliases (typedef) and - attributes.

-

Own Id: OTP-4388, OTP-4392

-
- -

For C back-ends, when encodings/decodings failed, memory - allocated for variable size parameter types was not freed.

-

Own Id: OTP-4391 -

-Aux Id: seq7438, ETOtr14009

-
- -

If an IDL file contained a multiple typedef - (e.g. typedef string str1, str2;), the oe_unregister - operation failed to remove all data, in this case str2, - from the IFR.

-

Own Id: OTP-4393

-
- -

IC did not recognize octet-constants - (e.g. const octet octetmax = 255;).

-

Own Id: OTP-4400

-
- -

Negative 'long long' constants was not accepted - (e.g. const long long MyConstant = -1;).

-

Own Id: OTP-4401

-
-
-
-
- -
- IC 4.1.2 - -
- Fixed Bugs and Malfunctions - - -

Merging of map's (___map___) using the - ___merge___ function does not work.

-

Own Id: OTP-4323

-
- -

Error in generated C decode/encode functions for union's with - discriminator where the union has no value for all discriminator - values. E.g. a union with discriminator boolean where only the - discriminator value TRUE has a corresponding union value. - Here is how such a thing would look in IDL:

-
-\011    union OptXList switch(boolean) {
-\011       case TRUE: integer  val;
-            };
-          
-

Own Id: OTP-4322

-
- -

Scoped op calls ('{scoped_op_calls, true}') does not handle - module/function names beginning with capital letter (e.g. - Megaco should be 'Megaco') for oneway operations (handle_cast).

-

Own Id: OTP-4310

-
- -

A bug is fixed on C-IDL erlang binaries that caused - pointer error when residing inside sequences.

-

Own Id: OTP-4303

-
-
-
-
- -
- IC 4.1.1 - -
- Improvements and New Features - - -

A new option 'multiple_be' is added that allows multiple backend - generation for the same IDL file.

-
-
-
- -
- Fixed Bugs and Malfunctions - - -

A bug is fixed on IDL types that contain underscore '_'.

-

Own Id: OTP-3710

-
- -

A bug is fixed on IDL structs that caused scope confusion - when types and fields of a struct had the same name.

-

Own Id: OTP-2893

-
-
-
-
- -
- IC 4.0.7 - -
- Improvements and New Features - - -

The Erlang binary special type is introduced, that - allows efficient transfer of binaries between Erlang and C.

-

Own Id:OTP-4107

-
-
-
-
- -
- IC 4.0.6 - -
- Fixed Bugs and Malfunctions - - -

A bug is fixed on noc backend which caused generation of erroneous code.

-

Own Id: OTP-3812

-
-
-
-
- -
- IC 4.0.5 - -
- Improvements and New Features - - -

The pragma code option is extended to point - specific functions on NOC backend, not only - interfaces.

-

-
-
-
-
- -
- IC 4.0.4 - -
- Fixed Bugs and Malfunctions - - -

A bug in pragma prefix when including IDL files is fixed. - This caused problems for Erlang-corba IFR registrations.

-

Own Id: OTP-3620

-
-
-
-
- -
- IC 4.0.3 - -
- Improvements and New Features - - -

Limited support on multiple file module definitions.

-

The current version supports multiple file module definitions all - backends except the c oriented backends.

-

Own Id: OTP-3550

-
-
-
-
- -
- IC 4.0.2 -
- Fixed Bugs and Malfunctions - - -

A bug is fixed on Erlang backends.

-

The (recently) introduced generation of files - describing sequence and array files were even - true for included interfaces. In the case of - some Erlang backends this were unnecessary.

-

Own Id: OTP-3485

-
-
-
-
- -
- IC 4.0.1 - -
- Improvements and New Features - - -

New functionality added on Java and Erl_genserv backends.

-

- - -

On the Java client stub :

-

- - -

The Java client have now one more constructor function, - that allows to continue with an already started connection.

-
- -

void __stop() which sends a stop cast call to the server. - While this causes the Erlang server to terminate, it - sets a stop flag to the Java server environment, requesting the - server to terminate.

-
- -

void __reconnect() which closes the current client connection - if open and then connects to the same server.

-
-
-

The Environment variable is now declared as public.

-
- -

On the Java server skeleton :

-

- - -

boolean __isStopped() which returns true if a stop - message where received, false otherwise. The user must check if - this function returns true, and in this case exit the implemented - server loop.

-
-
-

The Environment variable is now declared as protected which - allows the implementation that extends the stub to access it.

-
- -

On the Erlang gen_server stub :

-

- - -

stop(Server) which yields to a cast call to the standard - gen_server stop function. This will always terminate the - Erlang gen_server, while it will set the stop flag for the - Java server stub.

-
-
-
-
-

Own Id: OTP-3433

-
-
-
-
- -
- IC 4.0 - -
- Improvements and New Features - - -

New types handled by IC.

-

The following OMG-IDL types are added in this compiler version :

- - -

long long

-

unsigned long long

-

wchar

-

wstring

-
-
-

Own Id: OTP-3331

-

-
- -

TypeCode as built in type and access code files for array and sequence types.

- - -

As TypeCode is a pseudo-interface, it is now is a built-in type on IC.

-
- -

Access code files which contain information about TypeCode, ID and Name are - now generated for user defined arrays and sequences.

-
-
-

Own Id: OTP-3392

-
-
-
-
- -
- IC 3.8.2 -
- Fixed Bugs and Malfunctions -

A bug is fixed on preprocessor directive expansion.

-

When nested #ifdef - #ifndef directives, a bug caused - improper included file expansion. This is fixed by - repairing the preprocessor expansion function.

-

Own Id: OTP-3472

-
-
- -
- IC 3.8.1 - -
- Improvements and New Features - - -

Build in Erlang types support for java-backends

-

The built-in Erlang types term, port, ref and pid - are needed in Java backends in order to support an - efficient mapping between the two languages. - The new types are also supported by additional - helpers and holders to match with OMGs Java mapping - As a result of this, the following classes are added to - the com.ericsson.otp.ic interface :

- - -

Term,TermHelper,TermHolder which represents the - built-in Erlang type term

-
- -

Ref,RefHelper,RefHolder which represents the - built-in Erlang type ref

-
- -

Port,PortHelper, PortHolder which represents the - built-in Erlang type port

-
- Pid, PidHelper and PidHolder which represents the - built-in Erlang type pid -
-

-

Own Id: OTP-3348

-

-
- -

Compile time preprocessor macro variable definitions

-

The preprocessor lacked possibility to accept user - defined variables other than the one defined in IDL files. - This limited the use of command-ruled IDL specifications. - Now the build-in preprocessor allows the user to set variables - by using the "preproc_flags" option the same way - as using the "gcc" preprocessor.

-

Supported flags :

- - -

"]]> which defines a variable

-
- -

"]]> which undefines a variable

-
-
-

-

Own Id: OTP-3349

-
-
-
- -
- Fixed Bugs and Malfunctions -

A bug on comment type expansion is fixed.

-

The comment type expansion were erroneous when - inherited types (NOC backend). - This is now fixed and the type naming agree with - the scope of the inheritor interface.

-

Own Id: OTP-3346

-
-
- -
- IC 3.8 - -
- Improvements and New Features - - -

The code generated for java backend is optimized - due to use of streams instead for tuple classes - when (un)marshalling message calls. - Support for building clients using asynchronous - client calls and effective multi-threaded servers.

-

Own Id: OTP-3310

-

-
- -

The any type is now supported for java backend.

-

Own Id: OTP-3311

-
-
-
- -
- A bug on C generated constants is fixed -

While the constants are evaluated and behave well when used - inside an IDL specification their C-export were not working properly. - The constant export definitions were not generated well :

- - -

the declared C definition were erroneous ( the name did not always agree - with the scope the constant were declared in ).

-
- -

there were no C- definition generated for the c-server backend when - the constants were declared inside an interface.

-
-
-

Own Id: OTP-3219

-
- -
- Incompatibilities -

Due to optimizations in java backend, the stub initialization and usage - differs than the previous version.

-

Client stub interface changes:

- - -

Client disconnects by calling the __disconnect() function instead - for the old _closeConnection()

-

-
- -

All marshal operation functions have now the interface :

-

_marshal(Environment<, Param |, Params >)]]>

-

instead for

-

_marshal(< Param, | Params, >OtpErlangPid, OtpErlangRef)]]>

-

-
- -

All unmarshal operation functions have now the interface :

-

_< OpName >_unmarshal(Environment<, Param |, Params >)]]>

-

instead for

-

_< OpName >_unmarshal(< Param, | Params, >OtpErlangTuple, OtpErlangRef)]]>

-

-
- -

Call reference extraction is available by the client function :

-

OtpErlangRef __getRef()

-

instead for previous function :

-

OtpErlangRef _getReference(OtpErlangTuple)

-

-
-
-

Server skeleton interface changes:

- - -

The implementation function no longer have to contain the - two (2) contractor functions (with super()). This is due - to the fact that there is only one contractor function for each - skeleton file :

-

ImplBase()]]>

-

-
- -

The parameter for the caller identity extraction function _getCallerPid - is now an Environment variable instead for an OtpErlangTuple.

-

-
- -

There is a new invoke function :

-

OtpOutputStream invoke(OtpInputStream)

-

instead for the old one :

-

OtpErlangTuple invoke(OtpErlangTuple)

-

-
- -

The OtpConnection class function used for receiving messages is now :

-

OtpInputStream receiveBuf()

-

instead for the old one :

-

OtpErlangTuple receive()

-

-
- -

The OtpConnection class function used for sending messages is now :

-

void sendBuf(OtpErlangPid, OtpOutputStream)

-

instead for the old one :

-

void send(OtpErlangPid, OtpErlangTuple)

-

-
-
-
-
- -
- IC 3.7.1 - -
- Improvements and New Features -

Some memory usage optimizations for the compiler were done.

-
- -
- Fixed bugs and malfunctions - - -

A bug is fixed when C backend is used.

-

When C-union with enumerant discriminator, the size - calculation of the discriminator value were erroneous. - This lead to the side effect that only the first case of the - union were allowed. - The error were fixed by fixing the size calculation of - the discriminator.

-

Own Id: OTP-3215

-
-
-
-
- -
- IC 3.7 -
- Fixed Bugs and Malfunctions - - -

A bug is fixed when C backend is used.

-

When unions with enumerant discriminator - were decoded, an error encountered in the - union size calculation.

-

Own Id: OTP-3209

-
-
-
-
- -
- IC 3.6 -
- Fixed Bugs and Malfunctions - - -

A bug is fixed when NOC backend is used.

-

When several functions with the same name - were found in the included file tree, - a compile time failure occurred.

-

Own Id: OTP-3203

-
-
-
-
- -
- IC 3.5 - -
- Improvements and New Features - - -

Noc backend optimization

-

When NOC backend is choosen, the type code - information on the stub functions is reduced - to a single atom "no_tk". - This is the default behavior. The typecode - generation is enabled by the "use_tk" switch.

-

Own Id: OTP-3196

-
-
-
- -
- Fixed Bugs and Malfunctions - - -

General java backend bug fixes

-

Protocol errors on user defined structures and - union types are corrected.

-
-
-
-
- -
- IC 3.4 - -
- Improvements and New Features - - -

Semantic test enhancements.

-

The compiler detects now semantic errors when enumerant - values collide with user defined types on the same name scope.

-

Own Id: OTP-3157

-

-
-
-
- -
- Fixed Bugs and Malfunctions - - -

General java backend bug-fixes

-

Several bugs were fixed on user defined types.

- - -

Union discriminators work better when - all possible case values are defined.

-
- -

A bug on Interface inherited operations is - fixed that cause errors on generated server switch.

-
- -

Type definitions on included files are better generated.

-
-
-

Own Id: OTP-3156

-

-
-
-
-
- -
- IC 3.3 - -
- Improvements and New Features - - -

A new back-end which generates Java code according to the CORBA IDL to Java mapping for - communication with the Erlang distribution protocol has been added to IC. - For the moment there is no support for the Erlang types Pid, Ref, Port and Term - but this will be added later.

-

Own Id: OTP-2779

-

-
-
-
- -
- Fixed Bugs and Malfunctions - - -

Fixed the bug that the c code backends sometimes generated incorrect code for - struct arguments. They shall always be pointers.

-

Own Id: OTP-2732

-

-
- -

The code generation is fixed so the array parameters now follow the - CORBA V2.0 C mapping.

-

Own Id: OTP-2873

-

-
- -

Fixed the problem that the checking of the numbers of out-parameters always was true.

-

Own Id: OTP-2944

-

-
- -

Fixed the bug that some temporary variables was not declared when c code.

-

Own Id: OTP-2950

-

-
-
-
-
- -
- IC 3.2.2 - -
- Improvements and New Features - - -

Unions are now supported to agree with OMG's C mapping.

-

Own Id: OTP-2868

-

-
- -

There is now a possibility to use pre- and postcondition methods on the server side - for IC generated Corba Objects. The compiler option is documented in the ic reference manual - and an example of how the pre- and postcondition methods should be designed and used is - added to ic example directory (an ReadMe.txt file exists with some instructions for - running the example code).

-

Own Id: OTP-3068

-

-
-
-
- -
- Fixed Bugs and Malfunctions - - -

The compiler ignores unknown/non supported pragma directives. A warning is raised - while the generated code will then be the same as if the corresponding - (unknown) pragma directive were missing.

-

Own Id: OTP-3052

-

-
-
-
-
- -
- IC 3.2.1 -
- Fixed Bugs and Malfunctions - - -

Wrong C code was generated for limited strings when they where included - from another IDL specification.

-

Own Id: OTP-3033

-

-
-
-
-
- -
- IC 3.2 -
- Fixed Bugs and Malfunctions - - -

The buffers for in/output used by C-stubs are now expandable. - This fixes buffer overflow problems when messages received/sent - do not fit in buffers.

-

Own Id: OTP-3001

-

-
-
-
- -
- Incompatibilities -

The CORBA_Environment structure has now two new fields, the buffers for in/output - must now be dynamically allocated.

-
-
- -
- IC 3.1.2 -
- Fixed Bugs and Malfunctions - - -

The generated IFR registration function for constants has been fixed - so the parameters are correct.

-

Own Id: OTP-2856

-

-
- -

Error in the C code generation of ONEWAY operations without parameters - The bug was an decoding error in the operation header. The generated code expected one - parameter instead of zero. This is now fixed.

-

Own Id: OTP-2909

-

-
- -

Type problems on floats and booleans fixed.

-

Erroneous code for runtime checks on float was removed and - the internal format of the data representing the boolean value - is upgraded.

-

Own Id: OTP-2925

-

-
- -

The generated code for arrays of typedefined strings were - erroneous in the C-backends due to a failure in the compiler internal type - checking.

-

Own Id: OTP-2936

-

-
- -

The generated code for typedefined nested sequences were erroneous - in the C-backends. Pointer mismatches caused compilation failure.

-

Own Id: OTP-2937

-

-
-
-
- -
- Incompatibilities -

The IDL specifications must be regenerated for C due to changes in the code generation.

-

One must regenerate IDL specifications for Erlang CORBA if there are constants in the - specification due to previous errors in the IFR registration functions (OTP-2856).

-
-
- -
- IC 3.1.1 - -
- Improvements and New Features - - -

Improvements on error report on unsupported types by

-

propagating warning when declaring unions in C -backends

-
-
-
- -
- Fixed Bugs and Malfunctions - - -

A bug is fixed when arrays that contained variable size data - on C-backends

-

The compiler generated erroneous code when IDL - defined arrays that contained variable size data such - as strings, variable size structs or sequences.

-

Own Id: OTP-2900

-

-
- -

A bug is fixed when sequences that contained variable size data - on C_backends

-

The compiler generated erroneous code when IDL - defined arrays that contained variable size data such - as strings, variable size structs or other sequences.

-

Own Id: OTP-2901

-

-
- -

A bug concerning bounded strings on C-backends is fixed.

-

The compiler generated erroneous code for IDL - defined bounded strings. Syntax errors were generated - in special cases of typdedefined strings.

-

Own Id: OTP-2898

-

-
- -

A runtime error when sequences that contained integer types is fixed.

-

When C-clients/server that communicated with Erlang clients/servers, - and the data send by Erlang part were a list of small numbers, - the Erlang runtime compacts the list to a string. This caused a - runtime error when sending sequences of integer types and all had - value less than 256.

-

Own Id: OTP-2899

-

-
- -

An OMG IDL - C mapping problem on enumerant values is fixed.

-

The enumerant values names is now prefixed by the current scope, - as defined in the specification.

-

Own Id: OTP-2902

-

-
- -

A problem when using constants in array declarations is fixed.

-

Array dimensions declared with constants generated erroneous code.

-

Own Id: OTP-2864

-

-
-
-
- -
- Incompatibilities - - -

Changes in C-generation on enumerant values.

-
-
-
-
- -
- IC 3.1 -
- Fixed Bugs and Malfunctions - - -

A bug is fixed on the generated structures.

-

The generated C code for the structures corresponds now - to direct mapping of C-structs.

-

Own Id: OTP-2843

-

-
-
-
- -
- Incompatibilities - - -

Included structures inside a struct are no longer pointers.

-
-
-
-
- -
- IC 3.0 - -
- Improvements and New Features - - -

Interface change for C-backends

-

Major interface change. The new interface is CORBA 2.0 - compliant.

-

Own Id: OTP-2845

-

-
- -

The C-backends functionality is improved

- - -

Due to interface change and some unneeded error - checks,the C-generated code is fairly optimized.

-
-
-
-
-
- -
- Fixed Bugs and Malfunctions - - -

Several serious bugs on decoding and memory allocation are fixed.

-
-
-
- -
- Incompatibilities - - -

Interface change on the C-backends

-

In order to be CORBA 2.0 compatible, the new version - generates fully incompatible C code.

-
-
-
-
- -
- IC 2.5.1 - -
- Improvements and New Features - - -

A new backend is added : C-server

-

This back-ends can be used to create servers, - compatible to c-clients, and Erlang genserver clients. - The code produced is a collection of functions for - encoding and decoding messages and a switch that coordinates - them. These parts can be used to create other servers as well. - All functions are exported to header files.

-

Own Id: OTP-2713

-

-
- -

The C-client functionality is improved

- - -

The static buffer used for input/output is removed along - with the memset function that initiated it. - The new client is at least 20-30 percent faster.

-
- -

The internal structure of the client is changed. - The client functions are now a collection of encoding - and decoding message functions ruled by a specific - call function. While the basic client generated is - a synchronous client, the exported functions - support the implementation of threaded asynchronous - clients.

-
- -

The static buffer used for input/output is remove along - with the memset function that initiated it. - The new client is at least 20-30 percent faster.

-
- -

The code generated is generally improved, warnings are - (almost) eliminated, while no unidentified variable - errors occur.

-
- -

The IDL types unsigned shorts, shorts, floats are supported now.

-
- -

All generated functions are exported in client header files..

-
-
-

Own Id: OTP-2712

-

-
-
-
- -
- Changes in compiler usage and code generation. - - -

A new option is added for the C-server back-end : c_server.

-
- -

A new option is added : scoped_op_calls.

-
-
-
- -
- Fixed Bugs and Malfunctions - - -

A bug oneway operations on erl_corba and erl_genserv that caused - en exit due to internal interface error is fixed.

-
- -

A bug on oneway operations on c_genserv back-end that caused several - variables to be unidentified is fixed.

-
-
-
- -
- Incompatibilities - - -

Interface change on the C-client

-

The client functions are called with two extra variables, a pointer to - an array of char - used for storage and an integer - the array size

-
- -

The IDL type attribute is disabled, due to some implementation problems.

-
-
-
-
- -
- IC 2.1 - -
- Improvements and New Features - - -

The compiler now provides more in depth information (printouts) when errors occur.

-

In some cases the compiler stops compiling - due to an abnormal exit or incompatible input. - In this situation, a "fatal error" may occur but the compiler will - generate information explaining the problem.

-

Own Id: OTP-2565

-

-
-
-
-
- -
- IC 2.0 - -
- Improvements and New Features - - -

The IDL compiler is now a separate application and is longer a part of Orber.

-
- -

Pragma handling implementation.

-

Pragma ID, prefix - and version are implemented to agree with CORBA revision - 2.0. The compiler accepts and applies these on the - behavior of the compiled code.

- In this implementation, - pragmas are accepted by the parser and applied by the use - of ic_pragma functions.

- All IFR-identity handling now - passes through pragma table. As pragma handling in OMG-IDL - is affecting the identity of an ifr-object, all identity - handling and registration is now controlled by pragma - functions. A hash table called "pragmatab" contains vital - identity information used under compilation.

-

-

There two major pragma categories :

- - -

Normal pragmas, are used in the code where - basic definitions and statements appear.

-
- -

Under certain circumstances, ugly pragmas can now - appear inside code, parameter lists, structure - definitions ... etc.

- It is quite challenging to - allow ugly pragmas, but the effects of unlimited ugly - pragma implementation on the parser can be enormous. - Ugly pragmas can cause the parser source code to - become time consuming and user unreadable.

- In order - to allow ugly pragmas but not destroy the current - structure of the parser, the use of ugly pragmas is - limited. Multiple pragma directives are allowed - inside parameter lists, unions, exceptions, - enumerated type, structures... as long as they are do not - appear between two keywords or between keywords and - identifiers.

-
-
-

The pragma effect is the same for both scope and basic - pragma rules.

-

When compiling, an IFR-identity - must be looked up several times but by storing identity aliases inside - the pragma table there this an increase in both speed and - flexibility.

-

Own Id: OTP-2128

-

-
- -

Code for interface inheritance registration for the IFR - registration code .

-

Inherited interfaces can now - be registered as a list of interface descriptions by - entering code for inherited interface registration under - new interface creation. This is achieved by correcting the - function reg2/6 and adding two more functions, - get_base_interfaces/2 and call_fun_str/2

-

Own Id: - OTP-2134

-

-
- -

IFR registration checks for included IDL files.

-

All top level definitions (with respect to the scope) - - modules, interfaces, constants, types or exceptions - found - in an IDL file are either defined inside the compiled IDL - file or inside included files. - By having an extended registration of all top level - definitions it becomes possible to simply produce checks - for those included by the current IDL file. - A function call include_reg_test/1 is added in all - OE_* files that checks for IFR-registration on all included - IDL files. The code for that function is added inside the - OE_* file, while the function is called under OE_*:OE_register/0 - operation.

-

Own Id: OTP-2138

-

-
- -

Exception registration under IFR-operation creation.

-

By entering code for exception registration under operation - creation, the exceptions of an operation can be checked now. - This is done by correcting the function get_exceptions/4 - and adding two more functions, excdef/5 and get_EXC_ID/5 - ( the last two are cooperating with the first one and - all three are defined in the module "ictk" ).

-

Own Id: OTP-2102

-

-
- -

New back-end to IDL compiler : Plain Erlang.

-

The new back-end just translates IDL specifications - to Erlang module calls. No pragmas are allowed.

-

Own Id: OTP-2471

-

-
- -

New back-end to IDL compiler : generic server.

-

A new back-end that translates IDL specifications - to a standard OTP generic server.

-

Own Id: OTP-2482

-

-
- -

New back-end to IDL compiler : c client generation

-

A new back-end that translates IDL specifications - to a C API for accessing servers in Erlang.

-

Own Id: OTP-1511

-

-
- -

All records in generated files reveal own Erlang modules.

-

In Erlang related back-ends, every structure - which generates definition form is a record, - (such as union, struct, exception.... ). These records are - held in a generated Erlang files which - contain functions that reveal record information.

- - The Erlang file which contain these functions is - named after the scope of the record (similar - to the generated module and interface files).

- - Three functions are available :

- - -

tc/0 - returns the record type code,

-
- -

id/0 - returns the record id,

-
- -

name - returns the record name.

-
-
-

Own Id: OTP-2473

-

-
- -

Changes in compiler usage and code generation.

- - -

New compilation flags. - New flag be ( = back-end ) which is - used by the compiler to choose back-end. - Default back-end is set to erl_corba.

-
- -

Stub files have an extra function oe_dependency/0 - indicating file dependency. This - helps the user to determine which IDL files should to - be compiled beside the compiled file.

-
-
-

Own Id: OTP-2474

-

-
- -

The IDL generation for CORBA is changed so standard gen_server return values can be used - from the implementation module. The change is compatible so that old values remain valid.

-

Own Id: OTP-2485

-

-
- -

It's now possible to generate an API to a CORBA object that accepts - timeout values in the calls in the same manner as gen_server. - The option to the compiler is "timeout".

-

Own Id: OTP-2487

-

-
-
-
- -
- Fixed Bugs and Malfunctions - - -

Empty file generation problem is fixed. - When the IDL module definition did not contain - constant definitions, the generated stub file for that module - definition was empty. After checking the module body, - these files will not be generated anymore.

-
-
-
- -
- Incompatibilities - - -

Changes in generated files.

-

Stub-files generated by the compiler had - prefix "OE_" and those used by Orber - had also a register/unregister function - called "OE_register"/"OE_unregister" and - a directive "OE_get_interface" passed - to the gen_server. - This made it difficult/irritating to use, - for example call to the register function - in Orber would appear as shown below:

- - -

'OE_filename':'OE_register'().

-
-
-

This is changed by using the prefix "oe_" - instead for "OE_" for the above. - A registration call in Orber is now written:

- - -

oe_filename:oe_register().

-
-
-

Own Id: OTP-2440

-

-
-
-
-
-
- diff --git a/lib/orber/doc/src/ch_contents.xml b/lib/orber/doc/src/ch_contents.xml index 65383805b3..602955764d 100644 --- a/lib/orber/doc/src/ch_contents.xml +++ b/lib/orber/doc/src/ch_contents.xml @@ -112,8 +112,8 @@ A concise history of Orber.

IDL to Erlang Mapping

The OMG IDL mapping for Erlang, which is necessary to access the functionality of Orber, is described, The mapping structure is - included as the\011basic and the constructed OMG IDL types - references, invocations\011and Erlang characteristics. An example is + included as the basic and the constructed OMG IDL types + references, invocations and Erlang characteristics. An example is also provided.

diff --git a/lib/orber/doc/src/ch_example.xml b/lib/orber/doc/src/ch_example.xml index d4cc5ceddc..f2ccfcc7e1 100644 --- a/lib/orber/doc/src/ch_example.xml +++ b/lib/orber/doc/src/ch_example.xml @@ -45,7 +45,7 @@ Generating Erlang Code

Run the IDL compiler on this file by calling the ic:gen/1 function

-\0111> ic:gen("stack"). + 1> ic:gen("stack").

This will produce the client stub and server skeleton. Among other files a stack API module named StackModule_Stack.erl will be produced. diff --git a/lib/orber/doc/src/ch_idl_to_erlang_mapping.xml b/lib/orber/doc/src/ch_idl_to_erlang_mapping.xml index 0e2b049ab9..6df85a1f8f 100644 --- a/lib/orber/doc/src/ch_idl_to_erlang_mapping.xml +++ b/lib/orber/doc/src/ch_idl_to_erlang_mapping.xml @@ -697,14 +697,14 @@ module DB { module x { struct y_z { -\011... + ... }; interface y { -\011struct z { -\011 ... -\011}; + struct z { + ... + }; }; }; @@ -815,7 +815,7 @@ module m { const float pi = 3.14; interface i { -\011const float pi = 3.1415; + const float pi = 3.1415; }; }; @@ -1036,19 +1036,19 @@ $> erlc +"{be,erl_template}" DB.idl %% Description: %%---------------------------------------------------------------------- logon(State, ID, PW) -> -\011%% Check if the ID/PW is valid and what -\011%% type of user it is (Common or Administrator). -\011OE_Reply + %% Check if the ID/PW is valid and what + %% type of user it is (Common or Administrator). + OE_Reply = case check_user(ID, PW) of -\011 {ok, administrator} -> -\011 'DB_Administrator':oe_create(); -\011 {ok, common} -> -\011 'DB_CommonUser':oe_create(); -\011 error -> -\011 %% Here we should throw an exception - \011 corba:raise(....) + {ok, administrator} -> + 'DB_Administrator':oe_create(); + {ok, common} -> + 'DB_CommonUser':oe_create(); + error -> + %% Here we should throw an exception + corba:raise(....) end, -\011{reply, OE_Reply, State}. + {reply, OE_Reply, State}. %%====================================================================== %% Internal Functions @@ -1064,7 +1064,7 @@ logon(State, ID, PW) -> %% Description: Initiates the server %%---------------------------------------------------------------------- init(_Env) -> -\011{ok, #state{}}. + {ok, #state{}}. %%---------------------------------------------------------------------- @@ -1076,7 +1076,7 @@ init(_Env) -> %% Description: Invoked when the object is terminating. %%---------------------------------------------------------------------- terminate(_Reason, _State) -> -\011ok. + ok. %%---------------------------------------------------------------------- @@ -1090,7 +1090,7 @@ terminate(_Reason, _State) -> %% due to code replacement. %%---------------------------------------------------------------------- code_change(_OldVsn, State, _Extra) -> -\011{ok, State}. + {ok, State}. %%---------------------------------------------------------------------- @@ -1104,7 +1104,7 @@ code_change(_OldVsn, State, _Extra) -> %% Description: Invoked when, for example, the server traps exits. %%---------------------------------------------------------------------- handle_info(_Info, State) -> -\011{noreply, State}. + {noreply, State}. ]]>

Since DB_Administrator inherits from DB_CommonUser, we must implement delete in the DB_Administrator_impl.erl diff --git a/lib/orber/doc/src/ch_interceptors.xml b/lib/orber/doc/src/ch_interceptors.xml index 27b254c4bf..af8c5a45f1 100644 --- a/lib/orber/doc/src/ch_interceptors.xml +++ b/lib/orber/doc/src/ch_interceptors.xml @@ -188,17 +188,17 @@ out_reply_encoded({ObjTable, ChecksumModule}, ObjKey, Ctx, Op, Bin, Extra) -> %% Interceptor functions. -export([new_out_connection/3, -\011 new_in_connection/3, -\011 closed_in_connection/1, -\011 closed_out_connection/1, -\011 in_request_encoded/6, -\011 in_reply_encoded/6, -\011 out_reply_encoded/6, -\011 out_request_encoded/6, -\011 in_request/6, -\011 in_reply/6, -\011 out_reply/6, -\011 out_request/6]). + new_in_connection/3, + closed_in_connection/1, + closed_out_connection/1, + in_request_encoded/6, + in_reply_encoded/6, + out_reply_encoded/6, + out_request_encoded/6, + in_request/6, + in_reply/6, + out_reply/6, + out_request/6]). new_in_connection(Arg, Host, Port) -> %% Since we only use one interceptor we do not care about the diff --git a/lib/orber/doc/src/ch_naming_service.xml b/lib/orber/doc/src/ch_naming_service.xml index 510ccf2543..a5818966fa 100644 --- a/lib/orber/doc/src/ch_naming_service.xml +++ b/lib/orber/doc/src/ch_naming_service.xml @@ -116,7 +116,7 @@ Figure 1: Contextual object relationships using the Naming Service.

In order to use the naming service you have to fetch an initial reference to it. This is done with:

-\011NS = corba:resolve_initial_references("NameService"). +NS = corba:resolve_initial_references("NameService").

NS in the other use-cases refers to this initial reference.

@@ -208,17 +208,17 @@ Sc = corba:string_to_object("corbaname:rir:/NameService#workgroup/services/"). {BList, BIterator} = 'CosNaming_NamingContext':list(Sc, 10). lists:foreach(fun({{Id, Kind},BindingType}) -> case BindingType of -\011nobject -> -\011\011io:format("id: %s, kind: %s, type: object~n", [Id, Kind]); -\011 _ -> -\011\011io:format("id: %s, kind: %s, type: ncontext~n", [Id, Kind]) -\011end end, -\011Blist). + nobject -> + io:format("id: %s, kind: %s, type: object~n", [Id, Kind]); + _ -> + io:format("id: %s, kind: %s, type: ncontext~n", [Id, Kind]) + end end, + Blist). -

Normally a The binding iterator (Like a book mark) indicates which objects have been read from the list.is helpful in situations where you have a large\011number of objects +

Normally a The binding iterator (Like a book mark) indicates which objects have been read from the list.is helpful in situations where you have a large number of objects in a list, as the programmer then can traverse it more easily. In Erlang it is not needed, because lists are easily handled in the language itself.

diff --git a/lib/orber/doc/src/corba.xml b/lib/orber/doc/src/corba.xml index 6c89279733..cae0e09b0b 100644 --- a/lib/orber/doc/src/corba.xml +++ b/lib/orber/doc/src/corba.xml @@ -99,9 +99,8 @@ MAY ONLY be used during testing and development.

Example: -\011 - corba:create('StackModule_Stack', "IDL:StackModule/Stack:1.0", -\011 {10, test}) + + corba:create('StackModule_Stack', "IDL:StackModule/Stack:1.0", {10, test}) diff --git a/lib/orber/doc/src/orber.xml b/lib/orber/doc/src/orber.xml index da5fd05f98..05036667cc 100644 --- a/lib/orber/doc/src/orber.xml +++ b/lib/orber/doc/src/orber.xml @@ -558,7 +558,7 @@

This function installs all the necessary mnesia tables and load default data in some of them. If one or more Orber tables - already exists the installation fails. The function\011 + already exists the installation fails. The function uninstall may be used, if it is safe, i.e., no other application is running Orber.

Preconditions:

-- cgit v1.2.3