=default for generated implementation copy ctor
[ACE_TAO.git] / TAO / examples / Advanced / ch_12 / CHANGES
blob09c580e0afab44623ec3d51580cf93204bf73075
1 Changelog for chapter 8 and 10  example in "Advanced CORBA
2 Programming with C++" by Michi Henning and Steve Vinoski,
3 Copyright 1999, Addison-Wesley, Reading, MA.  The following
4 changes have been made to the book's source code to make the
5 example work with TAO and with various platforms and compilers.
7 _______________________________________________________________________________
8 ESSENTIAL CHANGES:
9   1. Changed filename extensions from .hh and .cc to .h
10      and .cpp, and made all necessary changes in file content.
12   2. a) Commented-out "#include <corba/poaS.h>" in server.h
14      b) Added #include "icp.h" to server.h.
16      c) Unnecessary standard includes of <iostreams.h>, <assert.h>,
17         <fstream.h> and <stdlib.h> must be removed or moved to follow the
18         local includes in server.h, server.cpp, client.cpp, and icp.cpp.
20      d) The following files may need their includes further rearranged
21         to avoid warnings and errors (g++). The following orderings
22         seem to work fine:
23           - server.cpp: "server.h", <algorithm>, "icp.h", <strstream.h>
24           - server.h:   "CCSS.h", "icp.h", <map>, <list>
26   3. Added CORBA_Environment variable to
27      DeviceLocator::preinvoke() and ::postinvoke()
28      in server.h and server.cpp to match the signatures of parent
29      methods in TAO's ServanLocator class.
31   4. removed if 0 code surrounding
32      operator<<(ostream & os, const CCS::Controller::EChange & ec)
33      definition in server.cpp and client.cpp.
35   5. commented-out "delete this;" from method
36      Thermometer_impl::remove() in server.cpp.
37      (Change should soon be reflected in authors' code)
38 _______________________________________________________________________________
39 ADDITIONAL CHANGES:
40   6. Added .in() to _var parameters wherever needed:
41      -client.cpp:
42          4 times in operator<<(ostream, CCS::Thermometer_ptr)
43          6 times in main().  5 are is_nil(), 1 is _narrow()
44          2 additions in main() of .inout to _var parameters to set_temp(..).
46      -server.cpp,
47          2 changes in make_dref()
48          2 changes in Controller_impl::Controller_impl()
49          4 changes in Controller_impl::~Controller_impl()
50          1 change in Controller_impl::create_thermometer
51          2 changes in Controller_impl::create_thermostat()
52          1 change in Controller_impl::list()
53          3 changes in Controller_impl::find
54          7 changes in main()
56   7. created needed file at /tmp/CCS_DB. (location is hard-coded)
57      To run, move CCS_DB from this directory to /tmp on the
58      local machine.
60   8. fixed warnings by commented out unused parameters in
61        -DeviceLocator_impl::postinvoke(..) in server.h
62        -DeviceLocator_impl::preinvoke(..) in server.cpp
64   9. MAX_EQ_SIZE changed from int to unsigned int
65      in class DeviceLocator_impl in server.h.
67   10. added cast to unsigned long in ~ICP_Persist() in icp.cpp:
68       db << (unsigned long)(i->second.type) << endl;
71 ______________________________________________________________________________
72 To Do:
73   - fix error on 2 cases of fstream.close()
74     in server.cpp and icp.cpp