mirror of
https://github.com/araxiaonline/TrinityCore2.git
synced 2026-06-13 03:22:40 -04:00
Dep/ACE: Upgrade ACE -library to 5.8.3
--HG-- branch : trunk
This commit is contained in:
13
dep/acelite/AUTHORS
Normal file
13
dep/acelite/AUTHORS
Normal file
@@ -0,0 +1,13 @@
|
||||
Douglas C. Schmidt
|
||||
d.schmidt@vanderbilt.edu
|
||||
|
||||
Professor of Computer Science
|
||||
Associate Chair of Computer Science and Engineering
|
||||
Department of Electrical Engineering and Computer Science
|
||||
Senior Researcher at the Institute for Software Integrated Systems (ISIS)
|
||||
Vanderbilt University
|
||||
Nashville, TN 37203
|
||||
|
||||
www.dre.vanderbilt.edu/~schmidt
|
||||
TEL: (615) 343-8197
|
||||
FAX: (615) 343-7440
|
||||
111
dep/acelite/COPYING
Normal file
111
dep/acelite/COPYING
Normal file
@@ -0,0 +1,111 @@
|
||||
|
||||
_________________________________________________________________
|
||||
|
||||
Copyright and Licensing Information for ACE(TM), TAO(TM), CIAO(TM),
|
||||
DAnCE(TM), and CoSMIC(TM)
|
||||
|
||||
[1]ACE(TM), [2]TAO(TM), [3]CIAO(TM), DAnCE(TM), and [4]CoSMIC(TM)
|
||||
(henceforth referred to as "DOC software") are copyrighted by
|
||||
[5]Douglas C. Schmidt and his [6]research group at [7]Washington
|
||||
University, [8]University of California, Irvine, and [9]Vanderbilt
|
||||
University, Copyright (c) 1993-2009, all rights reserved. Since DOC
|
||||
software is open-source, freely available software, you are free to
|
||||
use, modify, copy, and distribute--perpetually and irrevocably--the
|
||||
DOC software source code and object code produced from the source, as
|
||||
well as copy and distribute modified versions of this software. You
|
||||
must, however, include this copyright statement along with any code
|
||||
built using DOC software that you release. No copyright statement
|
||||
needs to be provided if you just ship binary executables of your
|
||||
software products.
|
||||
|
||||
You can use DOC software in commercial and/or binary software releases
|
||||
and are under no obligation to redistribute any of your source code
|
||||
that is built using DOC software. Note, however, that you may not
|
||||
misappropriate the DOC software code, such as copyrighting it yourself
|
||||
or claiming authorship of the DOC software code, in a way that will
|
||||
prevent DOC software from being distributed freely using an
|
||||
open-source development model. You needn't inform anyone that you're
|
||||
using DOC software in your software, though we encourage you to let
|
||||
[10]us know so we can promote your project in the [11]DOC software
|
||||
success stories.
|
||||
|
||||
The [12]ACE, [13]TAO, [14]CIAO, [15]DAnCE, and [16]CoSMIC web sites
|
||||
are maintained by the [17]DOC Group at the [18]Institute for Software
|
||||
Integrated Systems (ISIS) and the [19]Center for Distributed Object
|
||||
Computing of Washington University, St. Louis for the development of
|
||||
open-source software as part of the open-source software community.
|
||||
Submissions are provided by the submitter ``as is'' with no warranties
|
||||
whatsoever, including any warranty of merchantability, noninfringement
|
||||
of third party intellectual property, or fitness for any particular
|
||||
purpose. In no event shall the submitter be liable for any direct,
|
||||
indirect, special, exemplary, punitive, or consequential damages,
|
||||
including without limitation, lost profits, even if advised of the
|
||||
possibility of such damages. Likewise, DOC software is provided as is
|
||||
with no warranties of any kind, including the warranties of design,
|
||||
merchantability, and fitness for a particular purpose,
|
||||
noninfringement, or arising from a course of dealing, usage or trade
|
||||
practice. Washington University, UC Irvine, Vanderbilt University,
|
||||
their employees, and students shall have no liability with respect to
|
||||
the infringement of copyrights, trade secrets or any patents by DOC
|
||||
software or any part thereof. Moreover, in no event will Washington
|
||||
University, UC Irvine, or Vanderbilt University, their employees, or
|
||||
students be liable for any lost revenue or profits or other special,
|
||||
indirect and consequential damages.
|
||||
|
||||
DOC software is provided with no support and without any obligation on
|
||||
the part of Washington University, UC Irvine, Vanderbilt University,
|
||||
their employees, or students to assist in its use, correction,
|
||||
modification, or enhancement. A [20]number of companies around the
|
||||
world provide commercial support for DOC software, however. DOC
|
||||
software is Y2K-compliant, as long as the underlying OS platform is
|
||||
Y2K-compliant. Likewise, DOC software is compliant with the new US
|
||||
daylight savings rule passed by Congress as "The Energy Policy Act of
|
||||
2005," which established new daylight savings times (DST) rules for
|
||||
the United States that expand DST as of March 2007. Since DOC software
|
||||
obtains time/date and calendaring information from operating systems
|
||||
users will not be affected by the new DST rules as long as they
|
||||
upgrade their operating systems accordingly.
|
||||
|
||||
The names ACE(TM), TAO(TM), CIAO(TM), DAnCE(TM), CoSMIC(TM),
|
||||
Washington University, UC Irvine, and Vanderbilt University, may not
|
||||
be used to endorse or promote products or services derived from this
|
||||
source without express written permission from Washington University,
|
||||
UC Irvine, or Vanderbilt University. This license grants no permission
|
||||
to call products or services derived from this source ACE(TM),
|
||||
TAO(TM), CIAO(TM), DAnCE(TM), or CoSMIC(TM), nor does it grant
|
||||
permission for the name Washington University, UC Irvine, or
|
||||
Vanderbilt University to appear in their names.
|
||||
|
||||
If you have any suggestions, additions, comments, or questions, please
|
||||
let [21]me know.
|
||||
|
||||
[22]Douglas C. Schmidt
|
||||
_________________________________________________________________
|
||||
|
||||
Back to the [23]ACE home page.
|
||||
|
||||
References
|
||||
|
||||
1. http://www.cs.wustl.edu/~schmidt/ACE.html
|
||||
2. http://www.cs.wustl.edu/~schmidt/TAO.html
|
||||
3. http://www.dre.vanderbilt.edu/CIAO/
|
||||
4. http://www.dre.vanderbilt.edu/cosmic/
|
||||
5. http://www.dre.vanderbilt.edu/~schmidt/
|
||||
6. http://www.cs.wustl.edu/~schmidt/ACE-members.html
|
||||
7. http://www.wustl.edu/
|
||||
8. http://www.uci.edu/
|
||||
9. http://www.vanderbilt.edu/
|
||||
10. mailto:doc_group@cs.wustl.edu
|
||||
11. http://www.cs.wustl.edu/~schmidt/ACE-users.html
|
||||
12. http://www.cs.wustl.edu/~schmidt/ACE.html
|
||||
13. http://www.cs.wustl.edu/~schmidt/TAO.html
|
||||
14. http://www.dre.vanderbilt.edu/CIAO/
|
||||
15. http://www.dre.vanderbilt.edu/~schmidt/DOC_ROOT/DAnCE/
|
||||
16. http://www.dre.vanderbilt.edu/cosmic/
|
||||
17. http://www.dre.vanderbilt.edu/
|
||||
18. http://www.isis.vanderbilt.edu/
|
||||
19. http://www.cs.wustl.edu/~schmidt/doc-center.html
|
||||
20. http://www.cs.wustl.edu/~schmidt/commercial-support.html
|
||||
21. mailto:d.schmidt@vanderbilt.edu
|
||||
22. http://www.dre.vanderbilt.edu/~schmidt/
|
||||
23. http://www.cs.wustl.edu/ACE.html
|
||||
3020
dep/acelite/ChangeLog
Normal file
3020
dep/acelite/ChangeLog
Normal file
File diff suppressed because it is too large
Load Diff
1670
dep/acelite/NEWS
Normal file
1670
dep/acelite/NEWS
Normal file
File diff suppressed because it is too large
Load Diff
222
dep/acelite/README
Normal file
222
dep/acelite/README
Normal file
@@ -0,0 +1,222 @@
|
||||
This document is also available at the following URL:
|
||||
|
||||
http://www.cs.wustl.edu/~schmidt/ACE.html
|
||||
|
||||
All software and documentation is available via both anonymous ftp and
|
||||
the World Wide Web.]
|
||||
|
||||
THE ADAPTIVE COMMUNICATION ENVIRONMENT (ACE)
|
||||
|
||||
An Object-Oriented Network Programming Toolkit
|
||||
|
||||
----------------------------------------
|
||||
|
||||
Overview of ACE
|
||||
|
||||
The ADAPTIVE Communication Environment (ACE) is an object-oriented
|
||||
(OO) toolkit that implements fundamental design patterns for
|
||||
communication software. ACE provides a rich set of reusable C++
|
||||
wrappers and frameworks that perform common communication software
|
||||
tasks across a range of OS platforms, including Win32/Win64, most
|
||||
versions of UNIX (e.g., SunOS, HP-UX , AIX, Linux, NetBSD, and FreeBSD),
|
||||
real-time operating systems (e.g., VxWorks, Chorus, LynxOS, and QNX),
|
||||
OpenVMS, and MVS OpenEdition. A single source tree is used for all
|
||||
these platforms and porting ACE to other platforms is relatively easy.
|
||||
|
||||
The communication software components provided by ACE include event
|
||||
demultiplexing and event handler dispatching, service initialization,
|
||||
interprocess communication, shared memory management, message routing,
|
||||
dynamic (re)configuration of distributed services, multi-threading,
|
||||
and concurrency control. There are both C++ and Java versions of ACE
|
||||
available.
|
||||
|
||||
ACE is targeted for developers of high-performance and real-time
|
||||
communication services and applications on UNIX, POSIX, and Win32
|
||||
platforms. ACE simplifies the development of OO network applications
|
||||
and services that utilize interprocess communication, event
|
||||
demultiplexing, explicit dynamic linking, and concurrency. ACE
|
||||
automates system configuration and reconfiguration by dynamically
|
||||
linking services into applications at run-time and executing these
|
||||
services in one or more processes or threads.
|
||||
|
||||
ACE is currently used in commercial projects and products by dozens of
|
||||
companies including Ericsson, Bellcore, Siemens, Motorola, Kodak,
|
||||
Boeing, Lucent, DEC, Lockheed Martin, and SAIC. Commercial support
|
||||
for ACE is available from several companies as listed at
|
||||
http://www.cs.wustl.edu/~schmidt/commercial-support.html
|
||||
|
||||
----------------------------------------
|
||||
|
||||
C++ Wrappers for OS Interfaces
|
||||
|
||||
The lower-level portions of ACE provide a set of portable and
|
||||
type-secure C++ wrappers that encapsulate the following C language OS
|
||||
interfaces:
|
||||
|
||||
. IPC mechanisms
|
||||
-- e.g., Internet- and UNIX-domain sockets, TLI, Named
|
||||
Pipes (for UNIX and Win32) and STREAM pipes;
|
||||
|
||||
. Event demultiplexing
|
||||
-- e.g., select(), poll(), and Win32
|
||||
WaitForMultipleObjects and I/O completion ports;
|
||||
|
||||
. Multi-threading and synchronization
|
||||
-- e.g., Solaris threads, POSIX Pthreads, and Win32
|
||||
threads;
|
||||
|
||||
. Explicit dynamic linking
|
||||
-- e.g., dlopen/dlsym on UNIX and LoadLibrary/GetProc
|
||||
on Win32;
|
||||
|
||||
. Memory-mapped files and shared memory management
|
||||
-- e.g., BSD mmap(), SYSV shared memory, and Win32
|
||||
shared memory;
|
||||
|
||||
. System V IPC
|
||||
-- e.g., shared memory, semaphores, message queues.
|
||||
|
||||
The OS Adaptation Layer shields the upper levels of ACE from platform
|
||||
dependencies associated with the underlying OS interfaces.
|
||||
|
||||
----------------------------------------
|
||||
|
||||
Frameworks and Class Categories
|
||||
|
||||
ACE also contains a higher-level network programming framework that
|
||||
integrates and enhances the lower-level C++ wrappers. This framework
|
||||
supports the dynamic configuration of concurrent distributed services
|
||||
into applications. The framework portion of ACE contains the
|
||||
following class categories:
|
||||
|
||||
. The Reactor
|
||||
-- Supports both Reactive and Proactive I/O;
|
||||
|
||||
. The Service Configurator
|
||||
-- Support dynamic (re)configuration of objects;
|
||||
|
||||
. The ADAPTIVE Service Executive
|
||||
-- A user-level implementation of System V STREAMS,
|
||||
that supports modular integration of
|
||||
hierarchically-related communicaion services;
|
||||
|
||||
. Concurrency
|
||||
-- Various types of higher-level concurrency
|
||||
control and synchronization patterns (such as
|
||||
Polymorphic Futures and Active Objects);
|
||||
|
||||
. Shared Malloc
|
||||
-- Components for managing dynamically allocation
|
||||
of shared and local memory;
|
||||
|
||||
----------------------------------------
|
||||
|
||||
Distributed Services and Components
|
||||
|
||||
Finally, ACE provides a standard library of distributed services that
|
||||
are packaged as components. These service components play two roles
|
||||
in ACE:
|
||||
|
||||
1. They provide reusable components for common distributed
|
||||
system tasks such as logging, naming, locking, and time
|
||||
synchronization.
|
||||
|
||||
2. They illustrate how to utilize ACE features such as the
|
||||
Reactor, Service Configurator, Service Initialization,
|
||||
Concurrency, and IPC components.
|
||||
|
||||
----------------------------------------
|
||||
|
||||
Middleware Applications
|
||||
|
||||
ACE has been used in research and development projects at many
|
||||
universities and companies. For instance, it has been used to build
|
||||
avionics systems at Boeing, telecommunication systems at Bellcore,
|
||||
Ericsson, Motorola, and Lucent; medical imaging systems at Siemens and
|
||||
Kodak; and many academic research projects. Two example middleware
|
||||
applications provided with the ACE release include:
|
||||
|
||||
1. The ACE ORB (TAO) -- TAO is a real-time implementation of
|
||||
CORBA built using the framework components and patterns
|
||||
provided by ACE.
|
||||
|
||||
2. JAWS -- JAWS is a high-performance, adaptive Web server
|
||||
built using the components in ACE.
|
||||
|
||||
----------------------------------------
|
||||
|
||||
OBTAINING ACE
|
||||
|
||||
The current ACE release is provided as a tar file that is around 3 Meg
|
||||
compressed using GNU gzip. ACE may be obtained electronically from
|
||||
http://www.cs.wustl.edu/~schmidt/ACE-obtain.html. This release
|
||||
contains the source code, test drivers, and example applications
|
||||
(including JAWS) for C++ wrapper libraries and the higher-level ACE
|
||||
network programming framework developed as part of the ADAPTIVE
|
||||
project at the University of California, Irvine and at Washington
|
||||
University, St. Louis.
|
||||
|
||||
You can get The ACE ORB (TAO) in a companion release at
|
||||
http://www.cs.wustl.edu/~schmidt/TAO.html.
|
||||
|
||||
----------------------------------------
|
||||
|
||||
ACE DOCUMENTATION AND TUTORIALS
|
||||
|
||||
Many of the C++ wrappers and higher-level components have been
|
||||
described in issues of the C++ Report, as well as in proceedings of
|
||||
many journals, conferences, and workshops.
|
||||
|
||||
A collection of white papers and tutorial handouts are included at
|
||||
ftp://wuarchive.wustl.edu/languages/c++/ACE/ACE-documentation. This
|
||||
directory contains postscript versions of various papers that describe
|
||||
different aspects of ACE.
|
||||
|
||||
I update these papers periodically to reflect changes to the ACE
|
||||
architecture. Therefore, you might want to check the date on the
|
||||
files to make sure that you have read the most recent versions of
|
||||
these papers.
|
||||
|
||||
This material is also available available via the WWW at URL:
|
||||
|
||||
http://www.cs.wustl.edu/~schmidt/ACE.html
|
||||
|
||||
----------------------------------------
|
||||
|
||||
ACE MAILING LIST AND NEWSGROUP
|
||||
|
||||
A mailing list, ace-users@list.isis.vanderbilt.edu, is available for discussing
|
||||
bug fixes, enhancements, and porting issues regarding ACE. Please
|
||||
send mail to me at the ace-users-request@list.isis.vanderbilt.edu
|
||||
if you'd like to join the mailing list. There is also a USENET newsgroup
|
||||
called comp.soft-sys.ace. Please see
|
||||
http://www.cs.wustl.edu/~schmidt/ACE-mail.html for details on how to
|
||||
subscribe to the mailing list.
|
||||
|
||||
----------------------------------------
|
||||
|
||||
BUILDING AND INSTALLING ACE
|
||||
|
||||
Please refer to the http://www.cs.wustl.edu/~schmidt/ACE-install.html
|
||||
file for information on how to build and test the ACE wrappers. The
|
||||
BIBLIOGRAPHY file contains information on where to obtain articles
|
||||
that describe the ACE wrappers and the ADAPTIVE system in more detail.
|
||||
|
||||
The current release has been tested extensively, but if you find any
|
||||
bugs, please report them to the ACE mailing list
|
||||
ace-users@cs.wustl.edu using the $ACE_ROOT/PROBLEM-REPORT-FORM.
|
||||
Please use the same form to submit questions, comments, etc.
|
||||
To ensure that you see responses, please do one of the following:
|
||||
|
||||
1) Subscribe to the ace-users mail list, by sending email with
|
||||
contents "subscribe ace-users" to
|
||||
ace-users-request@list.isis.vanderbilt.edu.
|
||||
|
||||
2) Or, monitor the comp.soft-sys.ace newsgroup for responses.
|
||||
|
||||
----------------------------------------
|
||||
|
||||
ACKNOWLEDGEMENTS
|
||||
|
||||
Please see the file `$ACE_ROOT/THANKS' for a list of the thousands of
|
||||
people who've contributed to ACE and TAO over the years.
|
||||
2369
dep/acelite/THANKS
Normal file
2369
dep/acelite/THANKS
Normal file
File diff suppressed because it is too large
Load Diff
8
dep/acelite/VERSION
Normal file
8
dep/acelite/VERSION
Normal file
@@ -0,0 +1,8 @@
|
||||
This is ACE version 5.8.3, released Wed Oct 27 12:01:05 CEST 2010
|
||||
|
||||
If you have any problems with or questions about ACE, please send
|
||||
e-mail to the ACE mailing list (ace-bugs@list.isis.vanderbilt.edu),
|
||||
using the form found in the file PROBLEM-REPORT-FORM. In order
|
||||
to post to the list you must subscribe to it.
|
||||
|
||||
See http://www.cs.wustl.edu/~schmidt/ACE-mail.html
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id: ACE.cpp 91066 2010-07-12 11:05:04Z johnnyw $
|
||||
// $Id: ACE.cpp 92298 2010-10-21 11:15:17Z johnnyw $
|
||||
|
||||
#include "ace/ACE.h"
|
||||
|
||||
@@ -33,18 +33,12 @@ extern "C" int maxFiles;
|
||||
#include "ace/ACE.inl"
|
||||
#endif /* __ACE_INLINE__ */
|
||||
|
||||
#if defined (ACE_HAS_POLL) && defined (ACE_HAS_LIMITED_SELECT)
|
||||
#if defined (ACE_HAS_POLL)
|
||||
# include "ace/OS_NS_poll.h"
|
||||
#endif /* ACE_HAS_POLL && ACE_HAS_LIMITED_SELECT */
|
||||
|
||||
|
||||
ACE_RCSID (ace,
|
||||
ACE,
|
||||
"$Id: ACE.cpp 91066 2010-07-12 11:05:04Z johnnyw $")
|
||||
|
||||
#endif /* ACE_HAS_POLL */
|
||||
|
||||
// Open versioned namespace, if enabled by the user.
|
||||
ACE_BEGIN_VERSIONED_NAMESPACE_DECL
|
||||
ACE_BEGIN_VERSIONED_NAMESPACE_DECL
|
||||
|
||||
namespace ACE
|
||||
{
|
||||
@@ -94,10 +88,6 @@ ACE::out_of_handles (int error)
|
||||
#elif defined (__OpenBSD__)
|
||||
// OpenBSD appears to return EBADF.
|
||||
error == EBADF ||
|
||||
#elif defined (__sgi) // irix
|
||||
error == ENOTSUP ||
|
||||
#elif defined (DIGITAL_UNIX) // osf1
|
||||
error == ENOTSUP ||
|
||||
#endif /* ACE_WIN32 */
|
||||
error == ENFILE)
|
||||
return 1;
|
||||
@@ -1768,7 +1758,7 @@ ACE::sendv_n_i (ACE_HANDLE handle,
|
||||
{
|
||||
// Try to transfer as much of the remaining data as possible.
|
||||
ssize_t n = ACE_OS::sendv (handle, iov + s, iovcnt - s);
|
||||
|
||||
|
||||
// Check EOF.
|
||||
if (n == 0)
|
||||
return 0;
|
||||
@@ -2175,28 +2165,29 @@ ACE::handle_ready (ACE_HANDLE handle,
|
||||
int write_ready,
|
||||
int exception_ready)
|
||||
{
|
||||
#if defined (ACE_HAS_POLL) && defined (ACE_HAS_LIMITED_SELECT)
|
||||
ACE_UNUSED_ARG (write_ready);
|
||||
#if defined (ACE_HAS_POLL)
|
||||
ACE_UNUSED_ARG (exception_ready);
|
||||
|
||||
struct pollfd fds;
|
||||
|
||||
fds.fd = handle;
|
||||
fds.events = read_ready ? POLLIN : POLLOUT;
|
||||
fds.events = read_ready ? POLLIN : 0;
|
||||
|
||||
if( write_ready )
|
||||
{
|
||||
fds.events |= POLLOUT;
|
||||
}
|
||||
|
||||
fds.revents = 0;
|
||||
|
||||
int result = ACE_OS::poll (&fds, 1, timeout);
|
||||
int const result = ACE_OS::poll (&fds, 1, timeout);
|
||||
#else
|
||||
ACE_Handle_Set handle_set;
|
||||
handle_set.set_bit (handle);
|
||||
|
||||
// Wait for data or for the timeout to elapse.
|
||||
int select_width;
|
||||
# if defined (ACE_WIN32)
|
||||
// This arg is ignored on Windows and causes pointer truncation
|
||||
// warnings on 64-bit compiles.
|
||||
select_width = 0;
|
||||
# else
|
||||
int select_width = 0;
|
||||
#if !defined (ACE_WIN32)
|
||||
select_width = int (handle) + 1;
|
||||
# endif /* ACE_WIN64 */
|
||||
int result = ACE_OS::select (select_width,
|
||||
@@ -2205,8 +2196,7 @@ ACE::handle_ready (ACE_HANDLE handle,
|
||||
exception_ready ? handle_set.fdset () : 0, // exception_fds.
|
||||
timeout);
|
||||
|
||||
#endif /* ACE_HAS_POLL && ACE_HAS_LIMITED_SELECT */
|
||||
|
||||
#endif /* ACE_HAS_POLL */
|
||||
switch (result)
|
||||
{
|
||||
case 0: // Timer expired.
|
||||
@@ -2227,14 +2217,12 @@ ACE::enter_recv_timedwait (ACE_HANDLE handle,
|
||||
const ACE_Time_Value *timeout,
|
||||
int &val)
|
||||
{
|
||||
int result = ACE::handle_read_ready (handle,
|
||||
timeout);
|
||||
int const result = ACE::handle_read_ready (handle, timeout);
|
||||
|
||||
if (result == -1)
|
||||
return -1;
|
||||
|
||||
ACE::record_and_set_non_blocking_mode (handle,
|
||||
val);
|
||||
ACE::record_and_set_non_blocking_mode (handle, val);
|
||||
|
||||
return result;
|
||||
}
|
||||
@@ -2244,21 +2232,18 @@ ACE::enter_send_timedwait (ACE_HANDLE handle,
|
||||
const ACE_Time_Value *timeout,
|
||||
int &val)
|
||||
{
|
||||
int result = ACE::handle_write_ready (handle,
|
||||
timeout);
|
||||
int const result = ACE::handle_write_ready (handle, timeout);
|
||||
|
||||
if (result == -1)
|
||||
return -1;
|
||||
|
||||
ACE::record_and_set_non_blocking_mode (handle,
|
||||
val);
|
||||
ACE::record_and_set_non_blocking_mode (handle, val);
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
void
|
||||
ACE::record_and_set_non_blocking_mode (ACE_HANDLE handle,
|
||||
int &val)
|
||||
ACE::record_and_set_non_blocking_mode (ACE_HANDLE handle, int &val)
|
||||
{
|
||||
// We need to record whether we are already *in* nonblocking mode,
|
||||
// so that we can correctly reset the state when we're done.
|
||||
@@ -2271,11 +2256,9 @@ ACE::record_and_set_non_blocking_mode (ACE_HANDLE handle,
|
||||
}
|
||||
|
||||
void
|
||||
ACE::restore_non_blocking_mode (ACE_HANDLE handle,
|
||||
int val)
|
||||
ACE::restore_non_blocking_mode (ACE_HANDLE handle, int val)
|
||||
{
|
||||
if (ACE_BIT_DISABLED (val,
|
||||
ACE_NONBLOCK))
|
||||
if (ACE_BIT_DISABLED (val, ACE_NONBLOCK))
|
||||
{
|
||||
// Save/restore errno.
|
||||
ACE_Errno_Guard error (errno);
|
||||
@@ -2285,11 +2268,9 @@ ACE::restore_non_blocking_mode (ACE_HANDLE handle,
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Format buffer into printable format. This is useful for debugging.
|
||||
// Portions taken from mdump by J.P. Knight (J.P.Knight@lut.ac.uk)
|
||||
// Modifications by Todd Montgomery.
|
||||
|
||||
/// Format buffer into printable format. This is useful for debugging.
|
||||
/// Portions taken from mdump by J.P. Knight (J.P.Knight@lut.ac.uk)
|
||||
/// Modifications by Todd Montgomery.
|
||||
size_t
|
||||
ACE::format_hexdump (const char *buffer,
|
||||
size_t size,
|
||||
@@ -2436,7 +2417,7 @@ ACE::timestamp (const ACE_Time_Value& time_value,
|
||||
ACE_TEXT ("Fri"),
|
||||
ACE_TEXT ("Sat")
|
||||
};
|
||||
|
||||
|
||||
static const ACE_TCHAR *month_name[] =
|
||||
{
|
||||
ACE_TEXT ("Jan"),
|
||||
@@ -2452,10 +2433,10 @@ ACE::timestamp (const ACE_Time_Value& time_value,
|
||||
ACE_TEXT ("Nov"),
|
||||
ACE_TEXT ("Dec")
|
||||
};
|
||||
|
||||
|
||||
SYSTEMTIME local;
|
||||
::GetLocalTime (&local);
|
||||
|
||||
|
||||
ACE_OS::sprintf (date_and_time,
|
||||
ACE_TEXT ("%3s %3s %2d %04d %02d:%02d:%02d.%06d"),
|
||||
day_of_week_name[local.wDayOfWeek],
|
||||
@@ -2470,8 +2451,8 @@ ACE::timestamp (const ACE_Time_Value& time_value,
|
||||
}
|
||||
#endif /* WIN32 */
|
||||
ACE_TCHAR timebuf[26]; // This magic number is based on the ctime(3c) man page.
|
||||
ACE_Time_Value cur_time =
|
||||
(time_value == ACE_Time_Value::zero) ?
|
||||
ACE_Time_Value cur_time =
|
||||
(time_value == ACE_Time_Value::zero) ?
|
||||
ACE_Time_Value (ACE_OS::gettimeofday ()) : time_value;
|
||||
time_t secs = cur_time.sec ();
|
||||
|
||||
@@ -2534,7 +2515,7 @@ ACE::handle_timed_complete (ACE_HANDLE h,
|
||||
{
|
||||
ACE_TRACE ("ACE::handle_timed_complete");
|
||||
|
||||
#if !defined (ACE_WIN32) && defined (ACE_HAS_POLL) && defined (ACE_HAS_LIMITED_SELECT)
|
||||
#if !defined (ACE_WIN32) && defined (ACE_HAS_POLL)
|
||||
|
||||
struct pollfd fds;
|
||||
|
||||
@@ -2547,7 +2528,7 @@ ACE::handle_timed_complete (ACE_HANDLE h,
|
||||
ACE_Handle_Set wr_handles;
|
||||
rd_handles.set_bit (h);
|
||||
wr_handles.set_bit (h);
|
||||
#endif /* !ACE_WIN32 && ACE_HAS_POLL && ACE_HAS_LIMITED_SELECT */
|
||||
#endif /* !ACE_WIN32 && ACE_HAS_POLL */
|
||||
|
||||
#if defined (ACE_WIN32)
|
||||
// Winsock is different - it sets the exception bit for failed connect,
|
||||
@@ -2567,7 +2548,7 @@ ACE::handle_timed_complete (ACE_HANDLE h,
|
||||
ex_handles,
|
||||
timeout);
|
||||
#else
|
||||
# if defined (ACE_HAS_POLL) && defined (ACE_HAS_LIMITED_SELECT)
|
||||
# if defined (ACE_HAS_POLL)
|
||||
|
||||
int n = ACE_OS::poll (&fds, 1, timeout);
|
||||
|
||||
@@ -2585,7 +2566,7 @@ ACE::handle_timed_complete (ACE_HANDLE h,
|
||||
wr_handles,
|
||||
0,
|
||||
timeout);
|
||||
# endif /* ACE_HAS_POLL && ACE_HAS_LIMITED_SELECT */
|
||||
# endif /* ACE_HAS_POLL */
|
||||
#endif /* ACE_WIN32 */
|
||||
|
||||
// If we failed to connect within the time period allocated by the
|
||||
@@ -2619,18 +2600,18 @@ ACE::handle_timed_complete (ACE_HANDLE h,
|
||||
}
|
||||
#else
|
||||
if (is_tli)
|
||||
# if defined (ACE_HAS_POLL) && defined (ACE_HAS_LIMITED_SELECT)
|
||||
# if defined (ACE_HAS_POLL)
|
||||
need_to_check = (fds.revents & POLLIN) && !(fds.revents & POLLOUT);
|
||||
# else
|
||||
need_to_check = rd_handles.is_set (h) && !wr_handles.is_set (h);
|
||||
# endif /* ACE_HAS_POLL && ACE_HAS_LIMITED_SELECT */
|
||||
# endif /* ACE_HAS_POLL */
|
||||
|
||||
else
|
||||
# if defined (ACE_HAS_POLL) && defined (ACE_HAS_LIMITED_SELECT)
|
||||
# if defined (ACE_HAS_POLL)
|
||||
need_to_check = (fds.revents & POLLIN);
|
||||
# else
|
||||
need_to_check = true;
|
||||
# endif /* ACE_HAS_POLL && ACE_HAS_LIMITED_SELECT */
|
||||
# endif /* ACE_HAS_POLL */
|
||||
#endif /* ACE_WIN32 */
|
||||
|
||||
if (need_to_check)
|
||||
@@ -2692,7 +2673,7 @@ ACE::handle_timed_accept (ACE_HANDLE listener,
|
||||
if (listener == ACE_INVALID_HANDLE)
|
||||
return -1;
|
||||
|
||||
#if defined (ACE_HAS_POLL) && defined (ACE_HAS_LIMITED_SELECT)
|
||||
#if defined (ACE_HAS_POLL)
|
||||
|
||||
struct pollfd fds;
|
||||
|
||||
@@ -2704,29 +2685,25 @@ ACE::handle_timed_accept (ACE_HANDLE listener,
|
||||
// Use the select() implementation rather than poll().
|
||||
ACE_Handle_Set rd_handle;
|
||||
rd_handle.set_bit (listener);
|
||||
#endif /* ACE_HAS_POLL && ACE_HAS_LIMITED_SELECT */
|
||||
#endif /* ACE_HAS_POLL */
|
||||
|
||||
// We need a loop here if <restart> is enabled.
|
||||
|
||||
for (;;)
|
||||
{
|
||||
#if defined (ACE_HAS_POLL) && defined (ACE_HAS_LIMITED_SELECT)
|
||||
#if defined (ACE_HAS_POLL)
|
||||
|
||||
int n = ACE_OS::poll (&fds, 1, timeout);
|
||||
|
||||
#else
|
||||
int select_width;
|
||||
# if defined (ACE_WIN32)
|
||||
// This arg is ignored on Windows and causes pointer truncation
|
||||
// warnings on 64-bit compiles.
|
||||
select_width = 0;
|
||||
# else
|
||||
int select_width = 0;
|
||||
# if !defined (ACE_WIN32)
|
||||
select_width = int (listener) + 1;
|
||||
# endif /* ACE_WIN32 */
|
||||
int n = ACE_OS::select (select_width,
|
||||
rd_handle, 0, 0,
|
||||
timeout);
|
||||
#endif /* ACE_HAS_POLL && ACE_HAS_LIMITED_SELECT */
|
||||
#endif /* ACE_HAS_POLL */
|
||||
|
||||
switch (n)
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
/**
|
||||
* @file ACE.h
|
||||
*
|
||||
* $Id: ACE.h 88193 2009-12-16 09:14:06Z mcorino $
|
||||
* $Id: ACE.h 92060 2010-09-27 18:08:48Z johnnyw $
|
||||
*
|
||||
* This file contains value added ACE functions that extend the
|
||||
* behavior of the UNIX and Win32 OS calls.
|
||||
@@ -90,7 +90,7 @@ namespace ACE
|
||||
|
||||
/// Simple wildcard matching function supporting '*' and '?'
|
||||
/// return true if string s matches pattern.
|
||||
/// If character_classes is true, '[' is treated as a wildcard character
|
||||
/// If @a character_classes is true, '[' is treated as a wildcard character
|
||||
/// as described in the fnmatch() POSIX API. The following POSIX "bracket
|
||||
/// expression" features are not implemented: collating symbols, equivalence
|
||||
/// class expressions, and character class expressions. The POSIX locale is
|
||||
@@ -642,6 +642,14 @@ namespace ACE
|
||||
/// Computes the base 2 logarithm of {num}.
|
||||
ACE_NAMESPACE_INLINE_FUNCTION u_long log2 (u_long num);
|
||||
|
||||
/// Helper to avoid comparing floating point values with ==
|
||||
/// (uses < and > operators).
|
||||
template <typename T>
|
||||
bool is_equal (const T& a, const T& b)
|
||||
{
|
||||
return !((a < b) || (a > b));
|
||||
}
|
||||
|
||||
/// Hex conversion utility.
|
||||
extern ACE_Export ACE_TCHAR nibble2hex (u_int n);
|
||||
|
||||
@@ -666,21 +674,33 @@ namespace ACE
|
||||
const ACE_Time_Value *timeout = 0);
|
||||
|
||||
/// Timed wait for handle to get read ready.
|
||||
/// @retval -1 for error
|
||||
/// @retval 0 for timeout
|
||||
/// @retval 1 the handle is ready
|
||||
ACE_NAMESPACE_INLINE_FUNCTION
|
||||
int handle_read_ready (ACE_HANDLE handle,
|
||||
const ACE_Time_Value *timeout);
|
||||
|
||||
/// Timed wait for handle to get write ready.
|
||||
/// @retval -1 for error
|
||||
/// @retval 0 for timeout
|
||||
/// @retval 1 the handle is ready
|
||||
ACE_NAMESPACE_INLINE_FUNCTION
|
||||
int handle_write_ready (ACE_HANDLE handle,
|
||||
const ACE_Time_Value *timeout);
|
||||
|
||||
/// Timed wait for handle to get exception ready.
|
||||
/// @retval -1 for error
|
||||
/// @retval 0 for timeout
|
||||
/// @retval 1 the handle is ready
|
||||
ACE_NAMESPACE_INLINE_FUNCTION
|
||||
int handle_exception_ready (ACE_HANDLE handle,
|
||||
const ACE_Time_Value *timeout);
|
||||
|
||||
/// Timed wait for handle to get read, write, or exception ready.
|
||||
/// @retval -1 for error
|
||||
/// @retval 0 for timeout
|
||||
/// @retval 1 the handle is ready
|
||||
extern ACE_Export int handle_ready (ACE_HANDLE handle,
|
||||
const ACE_Time_Value *timeout,
|
||||
int read_ready,
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
// -*- C++ -*-
|
||||
//
|
||||
// $Id: ACE.inl 87366 2009-11-05 20:16:30Z olli $
|
||||
// $Id: ACE.inl 91813 2010-09-17 07:52:52Z johnnyw $
|
||||
|
||||
#include "ace/OS_NS_unistd.h"
|
||||
#include "ace/OS_NS_Thread.h"
|
||||
@@ -238,36 +238,21 @@ ACE::recv_i (ACE_HANDLE handle, void *buf, size_t len)
|
||||
}
|
||||
|
||||
ACE_INLINE int
|
||||
ACE::handle_read_ready (ACE_HANDLE handle,
|
||||
const ACE_Time_Value *timeout)
|
||||
ACE::handle_read_ready (ACE_HANDLE handle, const ACE_Time_Value *timeout)
|
||||
{
|
||||
return ACE::handle_ready (handle,
|
||||
timeout,
|
||||
1,
|
||||
0,
|
||||
0);
|
||||
return ACE::handle_ready (handle, timeout, 1, 0, 0);
|
||||
}
|
||||
|
||||
ACE_INLINE int
|
||||
ACE::handle_write_ready (ACE_HANDLE handle,
|
||||
const ACE_Time_Value *timeout)
|
||||
ACE::handle_write_ready (ACE_HANDLE handle, const ACE_Time_Value *timeout)
|
||||
{
|
||||
return ACE::handle_ready (handle,
|
||||
timeout,
|
||||
0,
|
||||
1,
|
||||
0);
|
||||
return ACE::handle_ready (handle, timeout, 0, 1, 0);
|
||||
}
|
||||
|
||||
ACE_INLINE int
|
||||
ACE::handle_exception_ready (ACE_HANDLE handle,
|
||||
const ACE_Time_Value *timeout)
|
||||
ACE::handle_exception_ready (ACE_HANDLE handle, const ACE_Time_Value *timeout)
|
||||
{
|
||||
return ACE::handle_ready (handle,
|
||||
timeout,
|
||||
0,
|
||||
0,
|
||||
1);
|
||||
return ACE::handle_ready (handle, timeout, 0, 0, 1);
|
||||
}
|
||||
|
||||
ACE_INLINE void
|
||||
@@ -287,7 +272,7 @@ ACE::strdelete (wchar_t *s)
|
||||
ACE_INLINE bool
|
||||
ACE::isdotdir (const char *s)
|
||||
{
|
||||
return (s[0] == '.' &&
|
||||
return (s[0] == '.' &&
|
||||
((s[1] == 0) || (s[1] == '.' && s[2] == 0)));
|
||||
}
|
||||
|
||||
@@ -295,7 +280,7 @@ ACE::isdotdir (const char *s)
|
||||
ACE_INLINE bool
|
||||
ACE::isdotdir (const wchar_t *s)
|
||||
{
|
||||
return (s[0] == ACE_TEXT ('.') &&
|
||||
return (s[0] == ACE_TEXT ('.') &&
|
||||
((s[1] == 0) || (s[1] == ACE_TEXT ('.') && s[2] == 0)));
|
||||
}
|
||||
#endif /* ACE_HAS_WCHAR */
|
||||
|
||||
@@ -1,10 +0,0 @@
|
||||
prefix=@prefix@
|
||||
exec_prefix=@exec_prefix@
|
||||
libdir=@libdir@
|
||||
includedir=@includedir@
|
||||
|
||||
Name: ACE
|
||||
Description: ADAPTIVE Communication Environment
|
||||
Version: @VERSION@
|
||||
Libs: -L${libdir} -lACE @LIBS@
|
||||
Cflags: -I${includedir}
|
||||
@@ -1,12 +1,7 @@
|
||||
// $Id: ACE_crc32.cpp 80826 2008-03-04 14:51:23Z wotte $
|
||||
// $Id: ACE_crc32.cpp 91286 2010-08-05 09:04:31Z johnnyw $
|
||||
|
||||
#include "ace/ACE.h"
|
||||
|
||||
ACE_RCSID (ace,
|
||||
ACE_crc32,
|
||||
"$Id: ACE_crc32.cpp 80826 2008-03-04 14:51:23Z wotte $")
|
||||
|
||||
|
||||
namespace
|
||||
{
|
||||
/*****************************************************************/
|
||||
|
||||
@@ -1,11 +1,7 @@
|
||||
// $Id: ACE_crc_ccitt.cpp 80826 2008-03-04 14:51:23Z wotte $
|
||||
// $Id: ACE_crc_ccitt.cpp 91286 2010-08-05 09:04:31Z johnnyw $
|
||||
|
||||
#include "ace/ACE.h"
|
||||
|
||||
ACE_RCSID (ace,
|
||||
ACE_crc_ccitt,
|
||||
"$Id: ACE_crc_ccitt.cpp 80826 2008-03-04 14:51:23Z wotte $")
|
||||
|
||||
namespace
|
||||
{
|
||||
/*****************************************************************/
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
// -*- C++ -*-
|
||||
// $Id: ACE_export.h 80826 2008-03-04 14:51:23Z wotte $
|
||||
// $Id: ACE_export.h 91683 2010-09-09 09:07:49Z johnnyw $
|
||||
// Definition for Win32 Export directives.
|
||||
// This file is generated automatically by
|
||||
// generate_export_file.pl
|
||||
@@ -53,9 +53,7 @@
|
||||
#if defined (__ACE_INLINE__)
|
||||
# if defined (_MSC_VER) || defined (__MINGW32__) || defined (CYGWIN32) || \
|
||||
(defined (__SUNPRO_CC) && __SUNPRO_CC >= 0x560) || \
|
||||
(defined (__HP_aCC) && (__HP_aCC >= 60500)) || \
|
||||
(defined (__sgi) && \
|
||||
defined (_COMPILER_VERSION) && _COMPILER_VERSION <= 730)
|
||||
(defined (__HP_aCC) && (__HP_aCC >= 60500))
|
||||
# define ACE_NAMESPACE_INLINE_FUNCTION inline
|
||||
# else
|
||||
# define ACE_NAMESPACE_INLINE_FUNCTION ACE_NAMESPACE_STORAGE_CLASS inline
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id: ARGV.cpp 81374 2008-04-16 13:07:47Z iliyan $
|
||||
// $Id: ARGV.cpp 91286 2010-08-05 09:04:31Z johnnyw $
|
||||
|
||||
#ifndef ACE_ARGV_CPP
|
||||
#define ACE_ARGV_CPP
|
||||
@@ -12,8 +12,6 @@
|
||||
#include "ace/ARGV.inl"
|
||||
#endif /* __ACE_INLINE__ */
|
||||
|
||||
ACE_RCSID(ace, ARGV, "$Id: ARGV.cpp 81374 2008-04-16 13:07:47Z iliyan $")
|
||||
|
||||
// Open versioned namespace, if enabled by the user.
|
||||
ACE_BEGIN_VERSIONED_NAMESPACE_DECL
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
// $Id: ATM_Acceptor.cpp 84262 2009-01-29 10:34:33Z johnnyw $
|
||||
// $Id: ATM_Acceptor.cpp 91286 2010-08-05 09:04:31Z johnnyw $
|
||||
|
||||
#include "ace/ATM_Acceptor.h"
|
||||
|
||||
ACE_RCSID(ace, ATM_Acceptor, "$Id: ATM_Acceptor.cpp 84262 2009-01-29 10:34:33Z johnnyw $")
|
||||
|
||||
|
||||
#if defined (ACE_HAS_ATM)
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id: ATM_Addr.cpp 84565 2009-02-23 08:20:39Z johnnyw $
|
||||
// $Id: ATM_Addr.cpp 91286 2010-08-05 09:04:31Z johnnyw $
|
||||
|
||||
// Defines the Internet domain address family address format.
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
#include "ace/ATM_Addr.inl"
|
||||
#endif /* __ACE_INLINE__ */
|
||||
|
||||
ACE_RCSID(ace, ATM_Addr, "$Id: ATM_Addr.cpp 84565 2009-02-23 08:20:39Z johnnyw $")
|
||||
|
||||
|
||||
ACE_BEGIN_VERSIONED_NAMESPACE_DECL
|
||||
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
// ATM_Connector.cpp
|
||||
// $Id: ATM_Connector.cpp 80826 2008-03-04 14:51:23Z wotte $
|
||||
// $Id: ATM_Connector.cpp 91286 2010-08-05 09:04:31Z johnnyw $
|
||||
|
||||
#include "ace/ATM_Connector.h"
|
||||
#if defined (ACE_HAS_ATM)
|
||||
|
||||
#include "ace/Handle_Set.h"
|
||||
|
||||
ACE_RCSID(ace, ATM_Connector, "$Id: ATM_Connector.cpp 80826 2008-03-04 14:51:23Z wotte $")
|
||||
|
||||
|
||||
#if !defined (__ACE_INLINE__)
|
||||
#include "ace/ATM_Connector.inl"
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
// $Id: ATM_Params.cpp 80826 2008-03-04 14:51:23Z wotte $
|
||||
// $Id: ATM_Params.cpp 91286 2010-08-05 09:04:31Z johnnyw $
|
||||
|
||||
#include "ace/ATM_Params.h"
|
||||
|
||||
#if defined (ACE_HAS_ATM)
|
||||
|
||||
ACE_RCSID(ace, ATM_Params, "$Id: ATM_Params.cpp 80826 2008-03-04 14:51:23Z wotte $")
|
||||
|
||||
|
||||
#if !defined (__ACE_INLINE__)
|
||||
#include "ace/ATM_Params.inl"
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
// $Id: ATM_QoS.cpp 84262 2009-01-29 10:34:33Z johnnyw $
|
||||
// $Id: ATM_QoS.cpp 91286 2010-08-05 09:04:31Z johnnyw $
|
||||
|
||||
#include "ace/ATM_QoS.h"
|
||||
|
||||
ACE_RCSID(ace, ATM_QoS, "$Id: ATM_QoS.cpp 84262 2009-01-29 10:34:33Z johnnyw $")
|
||||
|
||||
|
||||
#if defined (ACE_HAS_ATM)
|
||||
|
||||
|
||||
@@ -1,9 +1,7 @@
|
||||
// $Id: ATM_Stream.cpp 84262 2009-01-29 10:34:33Z johnnyw $
|
||||
// $Id: ATM_Stream.cpp 91286 2010-08-05 09:04:31Z johnnyw $
|
||||
|
||||
#include "ace/ATM_Stream.h"
|
||||
|
||||
ACE_RCSID (ace, ATM_Stream, "$Id: ATM_Stream.cpp 84262 2009-01-29 10:34:33Z johnnyw $")
|
||||
|
||||
#if defined (ACE_HAS_ATM)
|
||||
|
||||
#if !defined (__ACE_INLINE__)
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
// $Id: Acceptor.cpp 91623 2010-09-06 09:30:59Z sma $
|
||||
|
||||
#ifndef ACE_ACCEPTOR_CPP
|
||||
#define ACE_ACCEPTOR_CPP
|
||||
|
||||
@@ -8,16 +10,10 @@
|
||||
#endif /* ACE_LACKS_PRAGMA_ONCE */
|
||||
|
||||
#include "ace/Acceptor.h"
|
||||
#include "ace/Handle_Set.h"
|
||||
#include "ace/Svc_Handler.h"
|
||||
#include "ace/WFMO_Reactor.h"
|
||||
#include "ace/OS_NS_stdio.h"
|
||||
#include "ace/OS_NS_string.h"
|
||||
#include "ace/OS_NS_sys_select.h"
|
||||
|
||||
ACE_RCSID (ace,
|
||||
Acceptor,
|
||||
"$Id: Acceptor.cpp 84935 2009-03-22 19:21:58Z schmidt $")
|
||||
|
||||
ACE_BEGIN_VERSIONED_NAMESPACE_DECL
|
||||
|
||||
@@ -367,17 +363,9 @@ template <class SVC_HANDLER, ACE_PEER_ACCEPTOR_1> int
|
||||
ACE_Acceptor<SVC_HANDLER, ACE_PEER_ACCEPTOR_2>::handle_input (ACE_HANDLE listener)
|
||||
{
|
||||
ACE_TRACE ("ACE_Acceptor<SVC_HANDLER, ACE_PEER_ACCEPTOR_2>::handle_input");
|
||||
ACE_Handle_Set conn_handle;
|
||||
|
||||
// Default is "timeout (0, 0)," which means "poll."
|
||||
ACE_Time_Value timeout;
|
||||
# if defined (ACE_WIN32)
|
||||
// This arg is ignored on Windows and causes pointer truncation
|
||||
// warnings on 64-bit compiles
|
||||
int select_width = 0;
|
||||
# else
|
||||
int select_width = int (listener) + 1;
|
||||
# endif /* ACE_WIN32 */
|
||||
|
||||
// Accept connections from clients. Note that a loop is used for two
|
||||
// reasons:
|
||||
@@ -389,6 +377,11 @@ ACE_Acceptor<SVC_HANDLER, ACE_PEER_ACCEPTOR_2>::handle_input (ACE_HANDLE listene
|
||||
// 2. It allows the TLI_SAP::ACE_Acceptor class to work correctly (don't
|
||||
// ask -- TLI is *horrible*...).
|
||||
|
||||
// Ensure that errno is preserved in case the ACE::handle_read_ready()
|
||||
// method resets it in the loop bellow. We are actually supposed to
|
||||
// ignore any errors from this loop, hence the return 0 following it.
|
||||
ACE_Errno_Guard error (errno);
|
||||
|
||||
// @@ What should we do if any of the substrategies fail? Right
|
||||
// now, we just print out a diagnostic message if <ACE::debug>
|
||||
// returns > 0 and return 0 (which means that the Acceptor remains
|
||||
@@ -403,9 +396,11 @@ ACE_Acceptor<SVC_HANDLER, ACE_PEER_ACCEPTOR_2>::handle_input (ACE_HANDLE listene
|
||||
if (this->make_svc_handler (svc_handler) == -1)
|
||||
{
|
||||
if (ACE::debug ())
|
||||
ACE_DEBUG ((LM_DEBUG,
|
||||
ACE_TEXT ("%p\n"),
|
||||
ACE_TEXT ("make_svc_handler")));
|
||||
{
|
||||
ACE_DEBUG ((LM_DEBUG,
|
||||
ACE_TEXT ("%p\n"),
|
||||
ACE_TEXT ("make_svc_handler")));
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
// Accept connection into the Svc_Handler.
|
||||
@@ -414,10 +409,18 @@ ACE_Acceptor<SVC_HANDLER, ACE_PEER_ACCEPTOR_2>::handle_input (ACE_HANDLE listene
|
||||
// Note that <accept_svc_handler> closes the <svc_handler>
|
||||
// on failure.
|
||||
if (ACE::debug ())
|
||||
ACE_DEBUG ((LM_DEBUG,
|
||||
ACE_TEXT ("%p\n"),
|
||||
ACE_TEXT ("accept_svc_handler")));
|
||||
return this->handle_accept_error ();
|
||||
{
|
||||
ACE_DEBUG ((LM_DEBUG,
|
||||
ACE_TEXT ("%p\n"),
|
||||
ACE_TEXT ("accept_svc_handler")));
|
||||
}
|
||||
const int ret = this->handle_accept_error ();
|
||||
if (ret == -1)
|
||||
{
|
||||
// Ensure that the errno from the above call propegates.
|
||||
error = errno;
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
// Activate the <svc_handler> using the designated concurrency
|
||||
// strategy (note that this method becomes responsible for
|
||||
@@ -429,23 +432,17 @@ ACE_Acceptor<SVC_HANDLER, ACE_PEER_ACCEPTOR_2>::handle_input (ACE_HANDLE listene
|
||||
// on failure.
|
||||
|
||||
if (ACE::debug ())
|
||||
ACE_DEBUG ((LM_DEBUG,
|
||||
ACE_TEXT ("%p\n"),
|
||||
ACE_TEXT ("activate_svc_handler")));
|
||||
{
|
||||
ACE_DEBUG ((LM_DEBUG,
|
||||
ACE_TEXT ("%p\n"),
|
||||
ACE_TEXT ("activate_svc_handler")));
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
conn_handle.set_bit (listener);
|
||||
}
|
||||
|
||||
// Now, check to see if there is another connection pending and
|
||||
// break out of the loop if there is none.
|
||||
while (this->use_select_
|
||||
&& ACE_OS::select (select_width,
|
||||
conn_handle,
|
||||
0,
|
||||
0,
|
||||
&timeout) == 1);
|
||||
// Now, check to see if there is another connection pending and
|
||||
// break out of the loop if there is none.
|
||||
} while (this->use_select_ &&
|
||||
ACE::handle_read_ready (listener, &timeout) == 1);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
// $Id: Activation_Queue.cpp 91286 2010-08-05 09:04:31Z johnnyw $
|
||||
|
||||
#include "ace/Activation_Queue.h"
|
||||
|
||||
#if !defined (__ACE_INLINE__)
|
||||
@@ -9,10 +11,6 @@
|
||||
#include "ace/Malloc_Base.h"
|
||||
#include "ace/Time_Value.h"
|
||||
|
||||
ACE_RCSID (ace,
|
||||
Activation_Queue,
|
||||
"$Id: Activation_Queue.cpp 84565 2009-02-23 08:20:39Z johnnyw $")
|
||||
|
||||
ACE_BEGIN_VERSIONED_NAMESPACE_DECL
|
||||
|
||||
void
|
||||
|
||||
@@ -1,9 +1,7 @@
|
||||
// $Id: Active_Map_Manager.cpp 80826 2008-03-04 14:51:23Z wotte $
|
||||
// $Id: Active_Map_Manager.cpp 91286 2010-08-05 09:04:31Z johnnyw $
|
||||
|
||||
#include "ace/Active_Map_Manager.h"
|
||||
|
||||
ACE_RCSID(ace, Active_Map_Manager, "$Id: Active_Map_Manager.cpp 80826 2008-03-04 14:51:23Z wotte $")
|
||||
|
||||
#if !defined (__ACE_INLINE__)
|
||||
#include "ace/Active_Map_Manager.inl"
|
||||
#endif /* __ACE_INLINE__ */
|
||||
|
||||
@@ -1,11 +1,7 @@
|
||||
// $Id: Addr.cpp 84619 2009-02-26 12:26:16Z johnnyw $
|
||||
// $Id: Addr.cpp 91286 2010-08-05 09:04:31Z johnnyw $
|
||||
|
||||
#include "ace/Addr.h"
|
||||
|
||||
ACE_RCSID (ace,
|
||||
Addr,
|
||||
"$Id: Addr.cpp 84619 2009-02-26 12:26:16Z johnnyw $")
|
||||
|
||||
#if !defined (__ACE_INLINE__)
|
||||
#include "ace/Addr.inl"
|
||||
#endif /* __ACE_INLINE__ */
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
// $Id: Arg_Shifter.cpp 91286 2010-08-05 09:04:31Z johnnyw $
|
||||
|
||||
#ifndef ACE_ARG_SHIFTER_T_CPP
|
||||
#define ACE_ARG_SHIFTER_T_CPP
|
||||
|
||||
@@ -7,11 +9,6 @@
|
||||
#include "ace/OS_Errno.h"
|
||||
#include "ace/OS_Memory.h"
|
||||
|
||||
ACE_RCSID (ace,
|
||||
Arg_Shifter,
|
||||
"$Id: Arg_Shifter.cpp 83749 2008-11-14 18:39:10Z johnnyw $")
|
||||
|
||||
|
||||
ACE_BEGIN_VERSIONED_NAMESPACE_DECL
|
||||
|
||||
template <typename CHAR_TYPE>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
/**
|
||||
* @file Arg_Shifter.h
|
||||
*
|
||||
* $Id: Arg_Shifter.h 83891 2008-11-28 11:01:50Z johnnyw $
|
||||
* $Id: Arg_Shifter.h 91459 2010-08-25 09:51:01Z mcorino $
|
||||
*
|
||||
* @author Seth Widoff
|
||||
*/
|
||||
@@ -33,13 +33,23 @@ ACE_BEGIN_VERSIONED_NAMESPACE_DECL
|
||||
* @a argv vector, so deeper levels of argument parsing can locate the yet
|
||||
* unprocessed arguments at the beginning of the vector.
|
||||
*
|
||||
* Nomenclature:
|
||||
* argument - a member of the argv array
|
||||
* option - an argument starting with '-'
|
||||
* flag - synonym for "option"
|
||||
* parameter value - an argument not starting with '-'
|
||||
* parameter - synonym for "parameter value"
|
||||
*
|
||||
* The @c ACE_Arg_Shifter copies the pointers of the @a argv vector
|
||||
* into a temporary array. As the @c ACE_Arg_Shifter iterates over
|
||||
* the copied vector, it places known arguments in the rear of the
|
||||
* vector, leaving the unknown ones in the beginning. So, after having
|
||||
* visited all the arguments in the temporary vector, @c ACE_Arg_Shifter
|
||||
* has placed all the unknown arguments in their original order at
|
||||
* the front of original @a argv.
|
||||
* into a temporary array, emptying the original. As the @c ACE_Arg_Shifter
|
||||
* iterates over the temporary array, it places known arguments in the rear
|
||||
* of the original array and places the unknown ones in the beginning of the
|
||||
* original array. It modifies argc to be the number of unknown arguments,
|
||||
* so it looks to the caller as if the original array contains only unknown
|
||||
* arguments. So, after @c ACE_Arg_Shifter has visited all the arguments
|
||||
* in the temporary array, the original @a argv array appears to contain
|
||||
* only the unknown arguments in their original order (but it actually has
|
||||
* all the known arguments, too, beyond argc).
|
||||
*/
|
||||
template <typename CHAR_TYPE>
|
||||
class ACE_Arg_Shifter_T
|
||||
@@ -202,6 +212,9 @@ private:
|
||||
/// The index of <argv_> in which we'll stick the next known
|
||||
/// argument.
|
||||
int front_;
|
||||
/* This is not really the "front" at all. It's the point after
|
||||
* which the unknown arguments end and at which the known arguments begin.
|
||||
*/
|
||||
};
|
||||
|
||||
typedef ACE_Arg_Shifter_T<ACE_TCHAR> ACE_Arg_Shifter;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id: Argv_Type_Converter.cpp 85772 2009-06-23 20:14:18Z mitza $
|
||||
// $Id: Argv_Type_Converter.cpp 91286 2010-08-05 09:04:31Z johnnyw $
|
||||
|
||||
#include "ace/Argv_Type_Converter.h"
|
||||
|
||||
@@ -6,10 +6,6 @@
|
||||
#include "ace/Argv_Type_Converter.inl"
|
||||
#endif /* __ACE_INLINE__ */
|
||||
|
||||
ACE_RCSID (ace,
|
||||
Argv_Type_Converter,
|
||||
"$Id: Argv_Type_Converter.cpp 85772 2009-06-23 20:14:18Z mitza $")
|
||||
|
||||
#include "ace/OS_NS_string.h"
|
||||
#include "ace/OS_Errno.h"
|
||||
|
||||
|
||||
@@ -1,29 +0,0 @@
|
||||
/* -*- C++ -*- */
|
||||
|
||||
//=============================================================================
|
||||
/**
|
||||
* @file Array.h
|
||||
*
|
||||
* $Id: Array.h 80826 2008-03-04 14:51:23Z wotte $
|
||||
*
|
||||
* @deprecated
|
||||
*
|
||||
* @note This file has been deprecated and will soon go away. You
|
||||
* should directly include "Containers_T.h" instead.
|
||||
*
|
||||
* @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
|
||||
*/
|
||||
//=============================================================================
|
||||
|
||||
#ifndef ACE_ARRAY_H
|
||||
#define ACE_ARRAY_H
|
||||
#include /**/ "ace/pre.h"
|
||||
|
||||
#include "ace/Containers_T.h"
|
||||
|
||||
#if !defined (ACE_LACKS_PRAGMA_ONCE)
|
||||
# pragma once
|
||||
#endif /* ACE_LACKS_PRAGMA_ONCE */
|
||||
|
||||
#include /**/ "ace/post.h"
|
||||
#endif /* ACE_ARRAY_H */
|
||||
@@ -1,10 +1,8 @@
|
||||
// $Id: Assert.cpp 80826 2008-03-04 14:51:23Z wotte $
|
||||
// $Id: Assert.cpp 91286 2010-08-05 09:04:31Z johnnyw $
|
||||
|
||||
#include "ace/Assert.h"
|
||||
#include "ace/Log_Msg.h"
|
||||
|
||||
ACE_RCSID(ace, Assert, "$Id: Assert.cpp 80826 2008-03-04 14:51:23Z wotte $")
|
||||
|
||||
ACE_BEGIN_VERSIONED_NAMESPACE_DECL
|
||||
|
||||
// The following ASSERT macro is courtesy of Alexandre Karev
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/* -*- C++ -*- */
|
||||
// $Id: Asynch_Acceptor.cpp 85213 2009-04-29 16:34:20Z shuston $
|
||||
// $Id: Asynch_Acceptor.cpp 91693 2010-09-09 12:57:54Z johnnyw $
|
||||
|
||||
#ifndef ACE_ASYNCH_ACCEPTOR_C
|
||||
#define ACE_ASYNCH_ACCEPTOR_C
|
||||
@@ -10,8 +10,6 @@
|
||||
# pragma once
|
||||
#endif /* ACE_LACKS_PRAGMA_ONCE */
|
||||
|
||||
ACE_RCSID(ace, Asynch_Acceptor, "$Id: Asynch_Acceptor.cpp 85213 2009-04-29 16:34:20Z shuston $")
|
||||
|
||||
#if defined (ACE_HAS_WIN32_OVERLAPPED_IO) || defined (ACE_HAS_AIO_CALLS)
|
||||
// This only works on platforms that support async i/o.
|
||||
|
||||
@@ -447,13 +445,6 @@ ACE_Asynch_Acceptor<HANDLER>::make_handler (void)
|
||||
return handler;
|
||||
}
|
||||
|
||||
/* static */
|
||||
template <class HANDLER> size_t
|
||||
ACE_Asynch_Acceptor<HANDLER>::address_size (void)
|
||||
{
|
||||
return sizeof (sockaddr) + sizeof (sockaddr_in);
|
||||
}
|
||||
|
||||
template <class HANDLER> bool
|
||||
ACE_Asynch_Acceptor<HANDLER>::pass_addresses (void) const
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
/**
|
||||
* @file Asynch_Acceptor.h
|
||||
*
|
||||
* $Id: Asynch_Acceptor.h 80826 2008-03-04 14:51:23Z wotte $
|
||||
* $Id: Asynch_Acceptor.h 91693 2010-09-09 12:57:54Z johnnyw $
|
||||
*
|
||||
* @author Irfan Pyarali (irfan@cs.wustl.edu)
|
||||
*/
|
||||
@@ -211,11 +211,6 @@ public:
|
||||
/// Set bytes to be read with the <accept> call.
|
||||
virtual void bytes_to_read (size_t new_value);
|
||||
|
||||
/// @deprecated address_size() assumes IPv4 use, so is not always valid.
|
||||
/// This method will be removed after ACE 5.5. Internal uses have been
|
||||
/// changes to base needed sizes on the addr_family_ member.
|
||||
static size_t address_size (void);
|
||||
|
||||
protected:
|
||||
|
||||
/// This is called when an outstanding accept completes.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id: Asynch_Connector.cpp 80826 2008-03-04 14:51:23Z wotte $
|
||||
// $Id: Asynch_Connector.cpp 92069 2010-09-28 11:38:59Z johnnyw $
|
||||
|
||||
#ifndef ACE_ASYNCH_CONNECTOR_CPP
|
||||
#define ACE_ASYNCH_CONNECTOR_CPP
|
||||
@@ -221,32 +221,6 @@ ACE_Asynch_Connector<HANDLER>::parse_address (const ACE_Asynch_Connect::Result &
|
||||
remote_address.set (reinterpret_cast<sockaddr_in *> (&remote_addr),
|
||||
remote_size);
|
||||
|
||||
#if 0
|
||||
// @@ Just debugging.
|
||||
char local_address_buf [BUFSIZ];
|
||||
char remote_address_buf [BUFSIZ];
|
||||
|
||||
if (local_address.addr_to_string (local_address_buf,
|
||||
sizeof local_address_buf) == -1)
|
||||
ACE_ERROR ((LM_ERROR,
|
||||
"Error:%m:can't obtain local_address's address string"));
|
||||
|
||||
ACE_DEBUG ((LM_DEBUG,
|
||||
"ACE_Asynch_Connector<HANDLER>::parse_address : "
|
||||
"Local address %s\n",
|
||||
local_address_buf));
|
||||
|
||||
if (remote_address.addr_to_string (remote_address_buf,
|
||||
sizeof remote_address_buf) == -1)
|
||||
ACE_ERROR ((LM_ERROR,
|
||||
"Error:%m:can't obtain remote_address's address string"));
|
||||
|
||||
ACE_DEBUG ((LM_DEBUG,
|
||||
"ACE_Asynch_Connector<HANDLER>::parse_address : "
|
||||
"Remote address %s\n",
|
||||
remote_address_buf));
|
||||
#endif /* 0 */
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
@@ -1,9 +1,7 @@
|
||||
// $Id: Asynch_IO.cpp 82559 2008-08-07 20:23:07Z parsons $
|
||||
// $Id: Asynch_IO.cpp 91286 2010-08-05 09:04:31Z johnnyw $
|
||||
|
||||
#include "ace/Asynch_IO.h"
|
||||
|
||||
ACE_RCSID(ace, Asynch_IO, "$Id: Asynch_IO.cpp 82559 2008-08-07 20:23:07Z parsons $")
|
||||
|
||||
#if defined (ACE_HAS_WIN32_OVERLAPPED_IO) || defined (ACE_HAS_AIO_CALLS)
|
||||
// This only works on platforms with Asynchronous IO
|
||||
|
||||
|
||||
@@ -1,12 +1,10 @@
|
||||
// $Id: Asynch_Pseudo_Task.cpp 80826 2008-03-04 14:51:23Z wotte $
|
||||
// $Id: Asynch_Pseudo_Task.cpp 91286 2010-08-05 09:04:31Z johnnyw $
|
||||
|
||||
#include "ace/Asynch_Pseudo_Task.h"
|
||||
|
||||
#include "ace/OS_NS_errno.h"
|
||||
#include "ace/OS_NS_signal.h"
|
||||
|
||||
ACE_RCSID(ace, Asynch_Pseudo_Task, "$Id: Asynch_Pseudo_Task.cpp 80826 2008-03-04 14:51:23Z wotte $")
|
||||
|
||||
ACE_BEGIN_VERSIONED_NAMESPACE_DECL
|
||||
|
||||
ACE_Asynch_Pseudo_Task::ACE_Asynch_Pseudo_Task ()
|
||||
|
||||
@@ -1,12 +1,8 @@
|
||||
// $Id: Atomic_Op.cpp 89905 2010-04-16 13:04:47Z johnnyw $
|
||||
// $Id: Atomic_Op.cpp 91286 2010-08-05 09:04:31Z johnnyw $
|
||||
|
||||
#include "ace/Atomic_Op.h"
|
||||
#include "ace/OS_NS_unistd.h"
|
||||
|
||||
ACE_RCSID (ace,
|
||||
Atomic_Op,
|
||||
"$Id: Atomic_Op.cpp 89905 2010-04-16 13:04:47Z johnnyw $")
|
||||
|
||||
#if !defined (__ACE_INLINE__)
|
||||
#include "ace/Atomic_Op.inl"
|
||||
#endif /* __ACE_INLINE__ */
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
/**
|
||||
* @file Atomic_Op.h
|
||||
*
|
||||
* $Id: Atomic_Op.h 89936 2010-04-20 13:04:53Z johnnyw $
|
||||
* $Id: Atomic_Op.h 91523 2010-08-27 14:18:02Z johnnyw $
|
||||
*
|
||||
* @author Douglas C. Schmidt <schmidt@uci.edu>
|
||||
*/
|
||||
@@ -142,9 +142,9 @@ public:
|
||||
|
||||
private:
|
||||
|
||||
// This function cannot be supported by this template specialization.
|
||||
// If you need access to an underlying lock, use the ACE_Atomic_Op_Ex
|
||||
// template instead.
|
||||
/// This function cannot be supported by this template specialization.
|
||||
/// If you need access to an underlying lock, use the ACE_Atomic_Op_Ex
|
||||
/// template instead.
|
||||
ACE_Thread_Mutex &mutex (void);
|
||||
|
||||
private:
|
||||
@@ -152,7 +152,7 @@ private:
|
||||
/// Current object decorated by the atomic op.
|
||||
volatile long value_;
|
||||
|
||||
// Pointers to selected atomic op implementations.
|
||||
/// Pointers to selected atomic op implementations.
|
||||
static long (*increment_fn_) (volatile long *);
|
||||
static long (*decrement_fn_) (volatile long *);
|
||||
static long (*exchange_fn_) (volatile long *, long);
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
// -*- C++ -*-
|
||||
//
|
||||
// $Id: Atomic_Op.inl 89905 2010-04-16 13:04:47Z johnnyw $
|
||||
// $Id: Atomic_Op.inl 91813 2010-09-17 07:52:52Z johnnyw $
|
||||
|
||||
#if defined (ACE_HAS_INTRINSIC_INTERLOCKED)
|
||||
# include "ace/os_include/os_intrin.h"
|
||||
@@ -13,7 +13,7 @@
|
||||
|
||||
#if defined (ACE_HAS_SOLARIS_ATOMIC_LIB)
|
||||
# include <atomic.h>
|
||||
#endif
|
||||
#endif
|
||||
|
||||
ACE_BEGIN_VERSIONED_NAMESPACE_DECL
|
||||
|
||||
|
||||
@@ -1,11 +1,7 @@
|
||||
// $Id: Atomic_Op_GCC_T.cpp 89345 2010-03-05 13:04:51Z johnnyw $
|
||||
// $Id: Atomic_Op_GCC_T.cpp 91286 2010-08-05 09:04:31Z johnnyw $
|
||||
|
||||
#include "ace/OS_NS_unistd.h"
|
||||
|
||||
ACE_RCSID (ace,
|
||||
Atomic_Op_GCC,
|
||||
"$Id: Atomic_Op_GCC_T.cpp 89345 2010-03-05 13:04:51Z johnnyw $")
|
||||
|
||||
#if defined (ACE_HAS_GCC_ATOMIC_BUILTINS) && (ACE_HAS_GCC_ATOMIC_BUILTINS == 1)
|
||||
|
||||
#if !defined (__ACE_INLINE__)
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
// $Id: Atomic_Op_T.cpp 92052 2010-09-27 14:20:22Z vzykov $
|
||||
|
||||
#ifndef ACE_ATOMIC_OP_T_CPP
|
||||
#define ACE_ATOMIC_OP_T_CPP
|
||||
|
||||
@@ -20,8 +22,6 @@ ACE_BEGIN_VERSIONED_NAMESPACE_DECL
|
||||
ACE_ALLOC_HOOK_DEFINE(ACE_Atomic_Op_Ex)
|
||||
ACE_ALLOC_HOOK_DEFINE(ACE_Atomic_Op)
|
||||
|
||||
ACE_RCSID(ace, Atomic_Op_T, "$Id: Atomic_Op_T.cpp 85141 2009-04-22 08:48:30Z johnnyw $")
|
||||
|
||||
// *************************************************
|
||||
template <class ACE_LOCK, class TYPE> ACE_LOCK &
|
||||
ACE_Atomic_Op_Ex<ACE_LOCK, TYPE>::mutex (void)
|
||||
@@ -38,7 +38,7 @@ ACE_Atomic_Op_Ex<ACE_LOCK, TYPE>::dump (void) const
|
||||
// ACE_TRACE ("ACE_Atomic_Op_Ex<ACE_LOCK, TYPE>::dump");
|
||||
ACE_DEBUG ((LM_DEBUG, ACE_BEGIN_DUMP, this));
|
||||
this->mutex_.dump ();
|
||||
ACE_DEBUG ((LM_DEBUG, ACE_END_DUMP, this));
|
||||
ACE_DEBUG ((LM_DEBUG, ACE_END_DUMP));
|
||||
#endif /* ACE_HAS_DUMP */
|
||||
}
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
/**
|
||||
* @file Atomic_Op_T.h
|
||||
*
|
||||
* $Id: Atomic_Op_T.h 80826 2008-03-04 14:51:23Z wotte $
|
||||
* $Id: Atomic_Op_T.h 92353 2010-10-25 06:34:35Z johnnyw $
|
||||
*
|
||||
* @author Douglas C. Schmidt <schmidt@uci.edu>
|
||||
*/
|
||||
@@ -220,11 +220,12 @@ public:
|
||||
ACE_Atomic_Op_Ex (ACE_Atomic_Op_Ex<ACE_LOCK, TYPE> const &);
|
||||
|
||||
/**
|
||||
* Returns a reference to the underlying <ACE_LOCK>. This makes it
|
||||
* Returns a reference to the underlying ACE_LOCK. This makes it
|
||||
* possible to acquire the lock explicitly, which can be useful in
|
||||
* some cases if you instantiate the <ACE_Atomic_Op_Ex> with an
|
||||
* ACE_Recursive_Mutex or ACE_Process_Mutex. @note the right
|
||||
* name would be lock_, but HP/C++ will choke on that!
|
||||
* some cases if you instantiate the ACE_Atomic_Op_Ex with an
|
||||
* ACE_Recursive_Mutex or ACE_Process_Mutex.
|
||||
*
|
||||
* @note The right name would be lock_, but HP/C++ will choke on that!
|
||||
*/
|
||||
ACE_LOCK & mutex (void);
|
||||
|
||||
@@ -274,10 +275,10 @@ public:
|
||||
/// Manage copying...
|
||||
ACE_Atomic_Op (ACE_Atomic_Op<ACE_LOCK, TYPE> const & c);
|
||||
|
||||
/// Atomically assign rhs to @c value_.
|
||||
/// Atomically assign @a rhs to @c value_.
|
||||
ACE_Atomic_Op<ACE_LOCK, TYPE> & operator= (arg_type rhs);
|
||||
|
||||
/// Atomically assign <rhs> to @c value_.
|
||||
/// Atomically assign @a rhs to @c value_.
|
||||
ACE_Atomic_Op<ACE_LOCK, TYPE> & operator= (
|
||||
ACE_Atomic_Op<ACE_LOCK, TYPE> const & rhs);
|
||||
|
||||
@@ -296,25 +297,25 @@ public:
|
||||
/// Atomically post-decrement @c value_.
|
||||
TYPE operator-- (int);
|
||||
|
||||
/// Atomically decrement @c value_ by rhs.
|
||||
/// Atomically decrement @c value_ by @a rhs.
|
||||
TYPE operator-= (arg_type rhs);
|
||||
|
||||
/// Atomically compare @c value_ with rhs.
|
||||
/// Atomically compare @c value_ with @a rhs.
|
||||
bool operator== (arg_type rhs) const;
|
||||
|
||||
/// Atomically compare @c value_ with rhs.
|
||||
/// Atomically compare @c value_ with @a rhs.
|
||||
bool operator!= (arg_type rhs) const;
|
||||
|
||||
/// Atomically check if @c value_ greater than or equal to rhs.
|
||||
/// Atomically check if @c value_ greater than or equal to @a rhs.
|
||||
bool operator>= (arg_type rhs) const;
|
||||
|
||||
/// Atomically check if @c value_ greater than rhs.
|
||||
/// Atomically check if @c value_ greater than @a rhs.
|
||||
bool operator> (arg_type rhs) const;
|
||||
|
||||
/// Atomically check if @c value_ less than or equal to rhs.
|
||||
/// Atomically check if @c value_ less than or equal to @a rhs.
|
||||
bool operator<= (arg_type rhs) const;
|
||||
|
||||
/// Atomically check if @c value_ less than rhs.
|
||||
/// Atomically check if @c value_ less than @a rhs.
|
||||
bool operator< (arg_type rhs) const;
|
||||
|
||||
/// Explicitly return @c value_.
|
||||
@@ -323,18 +324,6 @@ public:
|
||||
/// Dump the state of an object.
|
||||
void dump (void) const;
|
||||
|
||||
/**
|
||||
* Returns a reference to the underlying <ACE_LOCK>. This makes it
|
||||
* possible to acquire the lock explicitly, which can be useful in
|
||||
* some cases if you instantiate the ACE_Atomic_Op with an
|
||||
* ACE_Recursive_Mutex or ACE_Process_Mutex.
|
||||
*
|
||||
* @deprecated This member function is deprecated and so may go away in
|
||||
* the future. If you need access to the underlying mutex, consider
|
||||
* using the ACE_Atomic_Op_Ex template instead.
|
||||
*/
|
||||
ACE_LOCK & mutex (void);
|
||||
|
||||
/**
|
||||
* Explicitly return @c value_ (by reference). This gives the user
|
||||
* full, unrestricted access to the underlying value. This method
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
// -*- C++ -*-
|
||||
//
|
||||
// $Id: Atomic_Op_T.inl 80826 2008-03-04 14:51:23Z wotte $
|
||||
// $Id: Atomic_Op_T.inl 91688 2010-09-09 11:21:50Z johnnyw $
|
||||
|
||||
#include "ace/Guard_T.h"
|
||||
|
||||
@@ -322,14 +322,6 @@ ACE_Atomic_Op<ACE_LOCK, TYPE>::dump (void) const
|
||||
#endif /* ACE_HAS_DUMP */
|
||||
return;
|
||||
}
|
||||
|
||||
template <class ACE_LOCK, class TYPE>
|
||||
ACE_INLINE ACE_LOCK &
|
||||
ACE_Atomic_Op<ACE_LOCK, TYPE>::mutex (void)
|
||||
{
|
||||
return this->own_mutex_;
|
||||
}
|
||||
|
||||
template <class ACE_LOCK, class TYPE>
|
||||
ACE_INLINE TYPE &
|
||||
ACE_Atomic_Op<ACE_LOCK, TYPE>::value_i (void)
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id: Auto_Event.cpp 80826 2008-03-04 14:51:23Z wotte $
|
||||
// $Id: Auto_Event.cpp 91368 2010-08-16 13:03:34Z mhengstmengel $
|
||||
|
||||
#include "ace/Auto_Event.h"
|
||||
|
||||
@@ -6,10 +6,6 @@
|
||||
#include "ace/Auto_Event.inl"
|
||||
#endif /* __ACE_INLINE__ */
|
||||
|
||||
ACE_RCSID (ace,
|
||||
Auto_Event,
|
||||
"$Id: Auto_Event.cpp 80826 2008-03-04 14:51:23Z wotte $")
|
||||
|
||||
ACE_BEGIN_VERSIONED_NAMESPACE_DECL
|
||||
|
||||
ACE_Auto_Event::ACE_Auto_Event (int initial_state,
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
/**
|
||||
* @file Auto_Event.h
|
||||
*
|
||||
* $Id: Auto_Event.h 80826 2008-03-04 14:51:23Z wotte $
|
||||
* $Id: Auto_Event.h 91781 2010-09-15 12:49:15Z johnnyw $
|
||||
*
|
||||
* Moved from Synch.h.
|
||||
*
|
||||
@@ -32,7 +32,7 @@ ACE_BEGIN_VERSIONED_NAMESPACE_DECL
|
||||
* @brief Auto Events.
|
||||
*
|
||||
* Specialization of Event mechanism which wakes up one waiting
|
||||
* thread on <signal>. All platforms support process-scope locking
|
||||
* thread on @c signal. All platforms support process-scope locking
|
||||
* support. However, only Win32 platforms support global naming and
|
||||
* system-scope locking support.
|
||||
*/
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
/**
|
||||
* @file Auto_IncDec_T.h
|
||||
*
|
||||
* $Id: Auto_IncDec_T.h 84675 2009-03-02 11:44:35Z johnnyw $
|
||||
* $Id: Auto_IncDec_T.h 92353 2010-10-25 06:34:35Z johnnyw $
|
||||
*
|
||||
* @author Edan Ayal <EdanA@cti2.com>
|
||||
*/
|
||||
@@ -34,14 +34,13 @@ ACE_BEGIN_VERSIONED_NAMESPACE_DECL
|
||||
*
|
||||
* This data structure is meant to be used within a method,
|
||||
* function, or scope. The actual parameter given for the
|
||||
* <ACE_SAFELY_INCREMENTABLE_DECREMENTABLE> template parameter
|
||||
* @c ACE_SAFELY_INCREMENTABLE_DECREMENTABLE template parameter
|
||||
* must provide at least operators ++ and --.
|
||||
*/
|
||||
template <class ACE_SAFELY_INCREMENTABLE_DECREMENTABLE>
|
||||
class ACE_Auto_IncDec
|
||||
class ACE_Auto_IncDec : private ACE_Copy_Disabled
|
||||
{
|
||||
public:
|
||||
|
||||
/// Implicitly increment the counter.
|
||||
ACE_Auto_IncDec (ACE_SAFELY_INCREMENTABLE_DECREMENTABLE &counter);
|
||||
|
||||
@@ -52,16 +51,9 @@ public:
|
||||
void dump (void) const;
|
||||
|
||||
protected:
|
||||
/// Reference to the <ACE_SAFELY_INCREMENTABLE_DECREMENTABLE> counter
|
||||
/// Reference to the @c ACE_SAFELY_INCREMENTABLE_DECREMENTABLE counter
|
||||
/// we're incrementing/decrementing.
|
||||
ACE_SAFELY_INCREMENTABLE_DECREMENTABLE &counter_;
|
||||
|
||||
private:
|
||||
// = Prevent assignment and initialization.
|
||||
ACE_UNIMPLEMENTED_FUNC (void operator= (const
|
||||
ACE_Auto_IncDec<ACE_SAFELY_INCREMENTABLE_DECREMENTABLE> &))
|
||||
ACE_UNIMPLEMENTED_FUNC (ACE_Auto_IncDec (const
|
||||
ACE_Auto_IncDec<ACE_SAFELY_INCREMENTABLE_DECREMENTABLE> &))
|
||||
};
|
||||
|
||||
ACE_END_VERSIONED_NAMESPACE_DECL
|
||||
@@ -72,14 +64,6 @@ ACE_END_VERSIONED_NAMESPACE_DECL
|
||||
|
||||
#if defined (ACE_TEMPLATES_REQUIRE_SOURCE)
|
||||
#include "ace/Auto_IncDec_T.cpp"
|
||||
// On Win32 platforms, this code will be included as template source
|
||||
// code and will not be inlined. Therefore, we first turn off
|
||||
// ACE_INLINE, set it to be nothing, include the code, and then turn
|
||||
// ACE_INLINE back to its original setting. All this nonsense is
|
||||
// necessary, since the generic template code that needs to be
|
||||
// specialized cannot be inlined, else the compiler will ignore the
|
||||
// specialization code. Also, the specialization code *must* be
|
||||
// inlined or the compiler will ignore the specializations.
|
||||
#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
|
||||
|
||||
#if defined (ACE_TEMPLATES_REQUIRE_PRAGMA)
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id: Auto_Ptr.cpp 80826 2008-03-04 14:51:23Z wotte $
|
||||
// $Id: Auto_Ptr.cpp 91286 2010-08-05 09:04:31Z johnnyw $
|
||||
|
||||
#ifndef ACE_AUTO_PTR_CPP
|
||||
#define ACE_AUTO_PTR_CPP
|
||||
@@ -9,7 +9,7 @@
|
||||
#include "ace/Auto_Ptr.inl"
|
||||
#endif /* __ACE_INLINE__ */
|
||||
|
||||
ACE_RCSID(ace, Auto_Ptr, "$Id: Auto_Ptr.cpp 80826 2008-03-04 14:51:23Z wotte $")
|
||||
|
||||
|
||||
ACE_BEGIN_VERSIONED_NAMESPACE_DECL
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id: Barrier.cpp 84282 2009-01-30 15:04:29Z msmit $
|
||||
// $Id: Barrier.cpp 92069 2010-09-28 11:38:59Z johnnyw $
|
||||
|
||||
#include "ace/Barrier.h"
|
||||
|
||||
@@ -15,10 +15,6 @@
|
||||
# include "ace/Log_Msg.h"
|
||||
#endif /* ACE_HAS_DUMP */
|
||||
|
||||
ACE_RCSID (ace,
|
||||
Barrier,
|
||||
"$Id: Barrier.cpp 84282 2009-01-30 15:04:29Z msmit $")
|
||||
|
||||
ACE_BEGIN_VERSIONED_NAMESPACE_DECL
|
||||
|
||||
ACE_ALLOC_HOOK_DEFINE(ACE_Sub_Barrier)
|
||||
@@ -171,26 +167,6 @@ ACE_Thread_Barrier::dump (void) const
|
||||
#endif /* ACE_HAS_DUMP */
|
||||
}
|
||||
|
||||
#if 0
|
||||
ACE_ALLOC_HOOK_DEFINE(ACE_Process_Barrier)
|
||||
|
||||
ACE_Process_Barrier::ACE_Process_Barrier (u_int count,
|
||||
const ACE_TCHAR *name)
|
||||
: ACE_Barrier (count, USYNC_PROCESS, name)
|
||||
{
|
||||
// ACE_TRACE ("ACE_Process_Barrier::ACE_Process_Barrier");
|
||||
}
|
||||
|
||||
void
|
||||
ACE_Process_Barrier::dump (void) const
|
||||
{
|
||||
#if defined (ACE_HAS_DUMP)
|
||||
// ACE_TRACE ("ACE_Process_Barrier::dump");
|
||||
ACE_Barrier::dump ();
|
||||
#endif /* ACE_HAS_DUMP */
|
||||
}
|
||||
#endif /* 0 */
|
||||
|
||||
ACE_END_VERSIONED_NAMESPACE_DECL
|
||||
|
||||
#endif /* ACE_HAS_THREADS */
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
/**
|
||||
* @file Barrier.h
|
||||
*
|
||||
* $Id: Barrier.h 80826 2008-03-04 14:51:23Z wotte $
|
||||
* $Id: Barrier.h 92069 2010-09-28 11:38:59Z johnnyw $
|
||||
*
|
||||
* Moved from Synch.h.
|
||||
*
|
||||
@@ -156,29 +156,6 @@ private:
|
||||
ACE_Barrier (const ACE_Barrier &);
|
||||
};
|
||||
|
||||
#if 0
|
||||
/**
|
||||
* @class ACE_Process_Barrier
|
||||
*
|
||||
* @brief Implements "barrier synchronization" using ACE_Process_Mutexes!
|
||||
*
|
||||
* This class is just a simple wrapper for ACE_Barrier that
|
||||
* selects the USYNC_PROCESS variant for the locks.
|
||||
*/
|
||||
class ACE_Export ACE_Process_Barrier : public ACE_Barrier
|
||||
{
|
||||
public:
|
||||
/// Create a Process_Barrier, passing in the optional @a name.
|
||||
ACE_Process_Barrier (unsigned int count, const ACE_TCHAR *name = 0);
|
||||
|
||||
/// Dump the state of an object.
|
||||
void dump (void) const;
|
||||
|
||||
/// Declare the dynamic allocation hooks.
|
||||
ACE_ALLOC_HOOK_DECLARE;
|
||||
};
|
||||
#endif /* 0 */
|
||||
|
||||
/**
|
||||
* @class ACE_Thread_Barrier
|
||||
*
|
||||
|
||||
@@ -1,11 +1,7 @@
|
||||
// $Id: Base_Thread_Adapter.cpp 84340 2009-02-05 22:28:08Z stallions $
|
||||
// $Id: Base_Thread_Adapter.cpp 91286 2010-08-05 09:04:31Z johnnyw $
|
||||
|
||||
#include "ace/Base_Thread_Adapter.h"
|
||||
|
||||
ACE_RCSID (ace,
|
||||
Base_Thread_Adapter,
|
||||
"$Id: Base_Thread_Adapter.cpp 84340 2009-02-05 22:28:08Z stallions $")
|
||||
|
||||
#if !defined (ACE_HAS_INLINED_OSCALLS)
|
||||
# include "ace/Base_Thread_Adapter.inl"
|
||||
#endif /* ACE_HAS_INLINED_OSCALLS */
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id: Basic_Stats.cpp 80826 2008-03-04 14:51:23Z wotte $
|
||||
// $Id: Basic_Stats.cpp 91286 2010-08-05 09:04:31Z johnnyw $
|
||||
|
||||
#include "ace/Basic_Stats.h"
|
||||
#include "ace/Log_Msg.h"
|
||||
@@ -7,10 +7,6 @@
|
||||
#include "ace/Basic_Stats.inl"
|
||||
#endif /* __ACE_INLINE__ */
|
||||
|
||||
ACE_RCSID(ace,
|
||||
Basic_Stats,
|
||||
"$Id: Basic_Stats.cpp 80826 2008-03-04 14:51:23Z wotte $")
|
||||
|
||||
ACE_BEGIN_VERSIONED_NAMESPACE_DECL
|
||||
|
||||
void
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
// $Id: Basic_Types.cpp 91366 2010-08-16 12:42:35Z mhengstmengel $
|
||||
|
||||
#include "ace/Basic_Types.h"
|
||||
|
||||
#if !defined (__ACE_INLINE__)
|
||||
@@ -5,11 +7,6 @@
|
||||
#endif /* ! __ACE_INLINE__ */
|
||||
|
||||
|
||||
ACE_RCSID (ace,
|
||||
Basic_Types,
|
||||
"$Id: Basic_Types.cpp 80826 2008-03-04 14:51:23Z wotte $")
|
||||
|
||||
|
||||
#if defined (ACE_LACKS_LONGLONG_T) && !defined (ACE_LACKS_UNSIGNEDLONGLONG_T)
|
||||
# include "ace/Log_Msg.h"
|
||||
# include "ace/OS_NS_stdio.h"
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/* -*- C++ -*- */
|
||||
// $Id: Bound_Ptr.inl 82723 2008-09-16 09:35:44Z johnnyw $
|
||||
// $Id: Bound_Ptr.inl 91626 2010-09-07 10:59:20Z johnnyw $
|
||||
|
||||
// Bound_Ptr.i
|
||||
|
||||
@@ -67,7 +67,7 @@ ACE_Bound_Ptr_Counter<ACE_LOCK>::detach_strong (ACE_Bound_Ptr_Counter<ACE_LOCK>*
|
||||
counter->obj_ref_count_ = -1;
|
||||
|
||||
if (--counter->self_ref_count_ == 0)
|
||||
// Since counter contains the lock held by the ACE_Guard, the
|
||||
// Since counter contains the lock held by the guard, the
|
||||
// guard needs to be released before freeing the memory holding
|
||||
// the lock. So save the pointer to free, then release, then
|
||||
// free.
|
||||
@@ -112,7 +112,7 @@ ACE_Bound_Ptr_Counter<ACE_LOCK>::detach_weak (ACE_Bound_Ptr_Counter<ACE_LOCK>* c
|
||||
ACE_GUARD (ACE_LOCK, guard, counter->lock_);
|
||||
|
||||
if (--counter->self_ref_count_ == 0)
|
||||
// Since counter contains the lock held by the ACE_Guard, the
|
||||
// Since counter contains the lock held by the guard, the
|
||||
// guard needs to be released before freeing the memory holding
|
||||
// the lock. So save the pointer to free, then release, then
|
||||
// free.
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
// $Id: CDR_Base.cpp 91685 2010-09-09 09:35:14Z johnnyw $
|
||||
|
||||
#include "ace/CDR_Base.h"
|
||||
|
||||
#if !defined (__ACE_INLINE__)
|
||||
@@ -8,10 +10,6 @@
|
||||
#include "ace/OS_Memory.h"
|
||||
#include "ace/OS_NS_string.h"
|
||||
|
||||
ACE_RCSID (ace,
|
||||
CDR_Base,
|
||||
"$Id: CDR_Base.cpp 86825 2009-09-28 17:45:23Z johnnyw $")
|
||||
|
||||
ACE_BEGIN_VERSIONED_NAMESPACE_DECL
|
||||
|
||||
#if defined (NONNATIVE_LONGDOUBLE)
|
||||
@@ -776,27 +774,4 @@ ACE_CDR::LongDouble::operator ACE_CDR::LongDouble::NativeImpl () const
|
||||
}
|
||||
#endif /* NONNATIVE_LONGDOUBLE */
|
||||
|
||||
#if defined(_UNICOS) && !defined(_CRAYMPP)
|
||||
// placeholders to get things compiling
|
||||
ACE_CDR::Float::Float (void)
|
||||
{
|
||||
}
|
||||
|
||||
ACE_CDR::Float::Float (const float & /* init */)
|
||||
{
|
||||
}
|
||||
|
||||
ACE_CDR::Float &
|
||||
ACE_CDR::Float::operator= (const float & /* rhs */)
|
||||
{
|
||||
return *this;
|
||||
}
|
||||
|
||||
bool
|
||||
ACE_CDR::Float::operator!= (const ACE_CDR::Float & /* rhs */) const
|
||||
{
|
||||
return false;
|
||||
}
|
||||
#endif /* _UNICOS */
|
||||
|
||||
ACE_END_VERSIONED_NAMESPACE_DECL
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
/**
|
||||
* @file CDR_Base.h
|
||||
*
|
||||
* $Id: CDR_Base.h 88488 2010-01-12 14:20:13Z olli $
|
||||
* $Id: CDR_Base.h 91685 2010-09-09 09:35:14Z johnnyw $
|
||||
*
|
||||
* ACE Common Data Representation (CDR) basic types.
|
||||
*
|
||||
@@ -209,7 +209,7 @@ public:
|
||||
|
||||
# if (defined (_MSC_VER)) || (defined (__BORLANDC__))
|
||||
typedef __int64 LongLong;
|
||||
# elif ACE_SIZEOF_LONG == 8 && !defined(_CRAYMPP)
|
||||
# elif ACE_SIZEOF_LONG == 8
|
||||
typedef long LongLong;
|
||||
# elif defined(__TANDEM)
|
||||
typedef long long LongLong;
|
||||
@@ -263,12 +263,6 @@ public:
|
||||
# else /* ACE_SIZEOF_INT != 4 */
|
||||
// Applications will probably have trouble with this.
|
||||
char f[4];
|
||||
# if defined(_UNICOS) && !defined(_CRAYMPP)
|
||||
Float (void);
|
||||
Float (const float &init);
|
||||
Float & operator= (const float &rhs);
|
||||
bool operator!= (const Float &rhs) const;
|
||||
# endif /* _UNICOS */
|
||||
# endif /* ACE_SIZEOF_INT != 4 */
|
||||
};
|
||||
# endif /* ACE_SIZEOF_FLOAT != 4 */
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
// $Id: CDR_Size.cpp 91813 2010-09-17 07:52:52Z johnnyw $
|
||||
|
||||
#include "ace/CDR_Size.h"
|
||||
#include "ace/SString.h"
|
||||
#include "ace/OS_Memory.h"
|
||||
@@ -7,10 +9,6 @@
|
||||
# include "ace/CDR_Size.inl"
|
||||
#endif /* ! __ACE_INLINE__ */
|
||||
|
||||
ACE_RCSID (ace,
|
||||
CDR_Size,
|
||||
"$Id: CDR_Size.cpp 82559 2008-08-07 20:23:07Z parsons $")
|
||||
|
||||
ACE_BEGIN_VERSIONED_NAMESPACE_DECL
|
||||
|
||||
ACE_CDR::Boolean
|
||||
@@ -23,13 +21,13 @@ ACE_SizeCDR::write_wchar (ACE_CDR::WChar x)
|
||||
errno = EACCES;
|
||||
return (this->good_bit_ = false);
|
||||
}
|
||||
|
||||
|
||||
if (static_cast<ACE_CDR::Short> (major_version_) == 1
|
||||
&& static_cast<ACE_CDR::Short> (minor_version_) == 2)
|
||||
{
|
||||
ACE_CDR::Octet len =
|
||||
static_cast<ACE_CDR::Octet> (ACE_OutputCDR::wchar_maxbytes ());
|
||||
|
||||
|
||||
if (this->write_1 (&len))
|
||||
{
|
||||
if (ACE_OutputCDR::wchar_maxbytes () == sizeof(ACE_CDR::WChar))
|
||||
@@ -65,7 +63,7 @@ ACE_SizeCDR::write_wchar (ACE_CDR::WChar x)
|
||||
errno = EINVAL;
|
||||
return (this->good_bit_ = false);
|
||||
}
|
||||
|
||||
|
||||
if (ACE_OutputCDR::wchar_maxbytes () == sizeof (ACE_CDR::WChar))
|
||||
{
|
||||
const void *temp = &x;
|
||||
@@ -76,7 +74,7 @@ ACE_SizeCDR::write_wchar (ACE_CDR::WChar x)
|
||||
ACE_CDR::Short sx = static_cast<ACE_CDR::Short> (x);
|
||||
return this->write_2 (reinterpret_cast<const ACE_CDR::UShort *> (&sx));
|
||||
}
|
||||
|
||||
|
||||
ACE_CDR::Octet ox = static_cast<ACE_CDR::Octet> (x);
|
||||
return this->write_1 (reinterpret_cast<const ACE_CDR::Octet *> (&ox));
|
||||
}
|
||||
@@ -138,9 +136,9 @@ ACE_SizeCDR::write_wstring (ACE_CDR::ULong len,
|
||||
this->write_ulong (
|
||||
ACE_Utils::truncate_cast<ACE_CDR::ULong> (
|
||||
ACE_OutputCDR::wchar_maxbytes () * len));
|
||||
|
||||
|
||||
if (good_ulong)
|
||||
{
|
||||
{
|
||||
return this->write_wchar_array (x, len);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
// $Id: CDR_Stream.cpp 91373 2010-08-17 07:35:27Z mhengstmengel $
|
||||
|
||||
#include "ace/CDR_Stream.h"
|
||||
#include "ace/SString.h"
|
||||
#include "ace/Auto_Ptr.h"
|
||||
@@ -7,10 +9,6 @@
|
||||
# include "ace/CDR_Stream.inl"
|
||||
#endif /* ! __ACE_INLINE__ */
|
||||
|
||||
ACE_RCSID (ace,
|
||||
CDR_Stream,
|
||||
"$Id: CDR_Stream.cpp 88653 2010-01-21 23:19:50Z sowayaa $")
|
||||
|
||||
// ****************************************************************
|
||||
|
||||
ACE_BEGIN_VERSIONED_NAMESPACE_DECL
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
/**
|
||||
* @file CORBA_macros.h
|
||||
*
|
||||
* $Id: CORBA_macros.h 80826 2008-03-04 14:51:23Z wotte $
|
||||
* $Id: CORBA_macros.h 91626 2010-09-07 10:59:20Z johnnyw $
|
||||
*
|
||||
* Writing code that is portable between platforms with or without
|
||||
* native C++ exceptions is hard. The following macros offer some
|
||||
@@ -30,10 +30,6 @@
|
||||
# pragma once
|
||||
# endif /* ACE_LACKS_PRAGMA_ONCE */
|
||||
|
||||
#define ACE_ENV_POLLUTE_NAMES
|
||||
|
||||
#include "ace/Exception_Macros.h"
|
||||
|
||||
// The Windows MFC exception mechanism requires that a caught CException
|
||||
// (including the CMemoryException in use here) be freed using its Delete()
|
||||
// method. Thus, when MFC is in use and we're catching exceptions as a result
|
||||
@@ -47,369 +43,6 @@
|
||||
# define ACE_del_bad_alloc
|
||||
#endif
|
||||
|
||||
#if !defined (ACE_LACKS_DEPRECATED_MACROS)
|
||||
|
||||
// If you wish to you use these macros for emulating exceptions on
|
||||
// platforms which lack native exception support, you need to do the
|
||||
// following:
|
||||
// 1. Define a class Exception. You can name it as you please. This class
|
||||
// should be at the root of the inheritance hierarchy of all the
|
||||
// exceptions used in your application. It should define at a minimum
|
||||
// the following pure virtual methods:
|
||||
// a) _downcast () - Which allows narrowing of the base exception type to a
|
||||
// derived type.
|
||||
// b) _raise() - Which throws an exception of type Exception.
|
||||
//
|
||||
// Classes which derive from these should implement these operations.
|
||||
//
|
||||
// 2. Define a class Environment. You can name it as you please. This class
|
||||
// is an exception holder. This class is always on the stack. It should
|
||||
// support at a minimum the following methods:
|
||||
// a) exception() - Which returns the Exception held in the current
|
||||
// Environment.
|
||||
// b) exception (Exception* foo) - Which replaces/sets the Exception
|
||||
// held in the current Environment with foo.
|
||||
// b) clear() - Which resets a particular instance of Environment.
|
||||
// c) A copy constructor and an assignment operator.
|
||||
//
|
||||
// Note that the above description assumes that you use the following
|
||||
// macros only within a particular domain. For example, if your
|
||||
// application has to interoperate across domains, then you need to define
|
||||
// an exception adapter to translate exceptions from one domain to
|
||||
// exceptions in the other. Please refer to Stroustrup's book on how to do
|
||||
// this. If your use case is this complex, you would be better off with
|
||||
// going with native exceptions rather than emulated exceptions, though
|
||||
// the macros should still work if you defined your adapter class as
|
||||
// ACE_EXCEPTION_TYPE.
|
||||
|
||||
|
||||
// The following macros assume that an environment variable is passed
|
||||
// in/out of each function that can throw an exception. The type of the
|
||||
// environment variable is defined by ACE_ENV_TYPE.
|
||||
|
||||
#if !defined (ACE_ENV_TYPE)
|
||||
# define ACE_ENV_TYPE CORBA::Environment
|
||||
#endif /* ACE_ENV_TYPE */
|
||||
|
||||
// The name of the variable is defined by ACE_TRY_ENV. Below is the name
|
||||
// that we use by default. If you wish to change it you can redefine
|
||||
// ACE_TRY_ENV to change the default name. Also ACE_ADOPT_ENV allows the
|
||||
// use of non-standard name within a scope.
|
||||
|
||||
#if !defined (ACE_TRY_ENV)
|
||||
# define ACE_TRY_ENV _ACE_CORBA_Environment_variable
|
||||
#endif /* ACE_TRY_ENV */
|
||||
|
||||
// The base type of Exception from which all the other exception types are
|
||||
// derived. You can set this to any type as you please. By default, it is
|
||||
// set to CORBA::Exception.
|
||||
|
||||
#if !defined (ACE_EXCEPTION_TYPE)
|
||||
# define ACE_EXCEPTION_TYPE CORBA::Exception
|
||||
#endif /* ACE_EXCEPTION_TYPE */
|
||||
|
||||
// This method is used to get the default value of the Environment
|
||||
// variable. In the case of TAO, this variable is part of the TSS ORB
|
||||
// resources and the method TAO_default_environment() returns the
|
||||
// Environment variable.
|
||||
|
||||
#if !defined (ACE_DEFAULT_GET_ENV_METHOD)
|
||||
# define ACE_DEFAULT_GET_ENV_METHOD TAO_default_environment
|
||||
#endif /* ACE_DEFAULT_GET_ENV_METHOD */
|
||||
|
||||
// This is the exception caught by ACE_CATCHANY.
|
||||
#if !defined (ACE_ANY_EXCEPTION)
|
||||
# define ACE_ANY_EXCEPTION ex
|
||||
#endif /* ACE_ANY_EXCEPTION */
|
||||
|
||||
// Declare a new environment variable on the stack. The type of the
|
||||
// environment variable is determined by ACE_ENV_TYPE.
|
||||
#if defined (ACE_USES_NATIVE_EXCEPTIONS)
|
||||
// Don't instantiate an emulated exception environment at all when
|
||||
// using native C++ exception support. It won't be used.
|
||||
# define ACE_DECLARE_NEW_ENV
|
||||
#else
|
||||
# define ACE_DECLARE_NEW_ENV \
|
||||
ACE_ENV_TYPE ACE_TRY_ENV
|
||||
#endif /* ACE_USES_NATIVE_EXCEPTIONS */
|
||||
|
||||
// Provided for backward compatibility purposes. Don't use it in new code.
|
||||
// Use the definition above along with defining ACE_ENV_TYPE.
|
||||
|
||||
#if defined (ACE_ENV_POLLUTE_NAMES)
|
||||
# define ACE_DECLARE_NEW_CORBA_ENV ACE_DECLARE_NEW_ENV
|
||||
#endif /* ACE_ENV_POLLUTE_NAMES */
|
||||
|
||||
#if defined (ACE_USES_NATIVE_EXCEPTIONS)
|
||||
// -----------------------------------------------------------------
|
||||
|
||||
// Provided for backward compatibility purposes. Don't use it in new code.
|
||||
#if defined (ACE_ENV_POLLUTE_NAMES)
|
||||
# define ACE_ADOPT_CORBA_ENV(ENV)
|
||||
#endif /* ACE_ENV_POLLUTE_NAMES */
|
||||
|
||||
#define ACE_ADOPT_ENV (ENV)
|
||||
|
||||
// No need to check. Native exceptions handle the control flow
|
||||
// automatically when an exception occurs.
|
||||
# define ACE_CHECK
|
||||
|
||||
// Used when the function requires a return value.
|
||||
# define ACE_CHECK_RETURN(RETV)
|
||||
|
||||
// ACE_THROW_INT should not be used by the user.
|
||||
# define ACE_THROW_INT(EXCEPTION) \
|
||||
throw EXCEPTION
|
||||
|
||||
// Throwing an exception is easy. These two macros should _NOT_ be
|
||||
// used within try blocks.
|
||||
# define ACE_THROW(EXCEPTION) \
|
||||
throw EXCEPTION
|
||||
|
||||
// Throwing an exception when the function requires a return value.
|
||||
# define ACE_THROW_RETURN(EXCEPTION,RETV) \
|
||||
throw EXCEPTION
|
||||
|
||||
// For compilers with native exceptions, we can simply use try to try. ;-)
|
||||
// do {} while (0) is required to avoid compilation warnings.
|
||||
# define ACE_TRY \
|
||||
do \
|
||||
{ \
|
||||
try \
|
||||
{
|
||||
# define ACE_TRY_NEW_ENV \
|
||||
do \
|
||||
{ \
|
||||
try \
|
||||
{
|
||||
# define ACE_TRY_EX(LABEL) \
|
||||
do \
|
||||
{ \
|
||||
try \
|
||||
{
|
||||
|
||||
// No need to check for exceptions within try block for compilers with
|
||||
// native exceptions.
|
||||
# define ACE_TRY_CHECK
|
||||
# define ACE_TRY_CHECK_EX(LABEL)
|
||||
|
||||
// Likewise, throwing exceptions within try blocks is easy.
|
||||
# define ACE_TRY_THROW(EXCEPTION) throw EXCEPTION
|
||||
# define ACE_TRY_THROW_EX(EXCEPTION,LABEL) throw EXCEPTION
|
||||
|
||||
// Same thing for catch.
|
||||
# define ACE_CATCH(EXCEPTION,VAR) \
|
||||
} \
|
||||
catch (EXCEPTION & VAR) \
|
||||
{ \
|
||||
ACE_UNUSED_ARG (VAR);
|
||||
|
||||
# define ACE_CATCHANY \
|
||||
ACE_CATCH(ACE_EXCEPTION_TYPE, ACE_ANY_EXCEPTION)
|
||||
|
||||
# define ACE_CATCHALL \
|
||||
} \
|
||||
catch (...) \
|
||||
{
|
||||
|
||||
# if defined (ACE_HAS_DEPRECATED_ACE_RETHROW)
|
||||
# define ACE_RETHROW throw
|
||||
# endif /* ACE_HAS_DEPRECATED_ACE_RETHROW */
|
||||
|
||||
// Rethrowing the exception from catch blocks.
|
||||
# define ACE_RE_THROW throw
|
||||
# define ACE_RE_THROW_EX(LABEL) throw
|
||||
|
||||
// Close the catch block.
|
||||
# define ACE_ENDTRY \
|
||||
} \
|
||||
} while (0)
|
||||
|
||||
#else /* ! ACE_USES_NATIVE_EXCEPTIONS */
|
||||
// -----------------------------------------------------------------
|
||||
|
||||
// When handling compilers without native exceptions, things get a bit
|
||||
// hairy. Exceptions are simulated using ACE_ENV_TYPE. The trick here is to
|
||||
// make sure the flow-of-control can simulate the case when native
|
||||
// exceptions occur...
|
||||
|
||||
#if defined (ACE_ENV_POLLUTE_NAMES)
|
||||
# define ACE_ADOPT_CORBA_ENV(ENV) ACE_ENV_TYPE &ACE_TRY_ENV = ENV
|
||||
#endif /* ACE_ENV_POLLUTE_NAMES */
|
||||
|
||||
# define ACE_ADOPT_ENV(ENV) ACE_ENV_TYPE &ACE_TRY_ENV = ENV
|
||||
|
||||
// Follow every statement that could throw exceptions with ACE_CHECK or
|
||||
// ACE_CHECK_RETURN. These two macros should _NOT_ be used within try
|
||||
// blocks. Use ACE_TRY_CHECK or ACE_TRY_CHECK_EX instead.
|
||||
# define ACE_CHECK \
|
||||
if (ACE_TRY_ENV . exception () != 0) \
|
||||
return
|
||||
// When function requires a return value
|
||||
# define ACE_CHECK_RETURN(RETV) \
|
||||
if (ACE_TRY_ENV . exception () != 0) \
|
||||
return RETV
|
||||
|
||||
// ACE_THROW_INT should not be used by the user.
|
||||
# define ACE_THROW_INT(EXCEPTION) ACE_TRY_ENV.exception (new EXCEPTION)
|
||||
|
||||
// Throwing exceptions will inevitably cause a return from the current
|
||||
// function. These two macros should _NOT_ be used within try blocks. Use
|
||||
// ACE_TRY_THROW or ACE_TRY_THROW_EX instead.
|
||||
# define ACE_THROW(EXCEPTION) \
|
||||
do \
|
||||
{ \
|
||||
ACE_TRY_ENV.exception (new EXCEPTION); \
|
||||
return; \
|
||||
} while (0)
|
||||
|
||||
# define ACE_THROW_RETURN(EXCEPTION,RETV) \
|
||||
do \
|
||||
{ \
|
||||
ACE_TRY_ENV.exception (new EXCEPTION); \
|
||||
return RETV; \
|
||||
} while (0)
|
||||
|
||||
// ACE_TRY sets up flags to control program flow. ACE_TRY_FLAG acts like a
|
||||
// one-shot flip-flop. When an exception occurs (detected using
|
||||
// ACE_TRY_CHECK,) ACE_TRY_FLAG will be reset and the control goes back
|
||||
// into ACE_TRY_LABEL. Since ACE_TRY_FLAG is reset, the try block won't get
|
||||
// executed again and the control proceeds to the following catch blocks.
|
||||
// ACE_EXCEPTION_NOT_CAUGHT flag is used to prevent catching an exception
|
||||
// twice. This macro assumes there's already an ACE_ENV_TYPE variable
|
||||
// ACE_TRY_ENV defined (which should be the case normally)
|
||||
# define ACE_TRY \
|
||||
do { \
|
||||
int ACE_TRY_FLAG = 1; \
|
||||
int ACE_EXCEPTION_NOT_CAUGHT = 1; \
|
||||
ACE_TRY_LABEL: \
|
||||
if (ACE_TRY_FLAG) \
|
||||
do {
|
||||
|
||||
// ACE_TRY_NEW_ENV functions like the macro ACE_TRY but defines a new
|
||||
// ACE_ENV_TYPE variable ACE_TRY_ENV. It is most often used in the outer
|
||||
// most function where no ACE_TRY_ENV is available.
|
||||
# define ACE_TRY_NEW_ENV \
|
||||
do { \
|
||||
ACE_DECLARE_NEW_ENV;\
|
||||
int ACE_TRY_FLAG = 1; \
|
||||
int ACE_EXCEPTION_NOT_CAUGHT = 1; \
|
||||
ACE_TRY_LABEL: \
|
||||
if (ACE_TRY_FLAG) \
|
||||
do {
|
||||
|
||||
// ACE_TRY_EX works exactly like ACE_TRY macro except the label used in the
|
||||
// try block is customizable to avoid name clashing. It should be used when
|
||||
// nested try blocks or multiple try blocks are required, in the same
|
||||
// function.
|
||||
# define ACE_TRY_EX(LABEL) \
|
||||
do { \
|
||||
int ACE_TRY_FLAG = 1; \
|
||||
int ACE_EXCEPTION_NOT_CAUGHT = 1; \
|
||||
ACE_TRY_LABEL ## LABEL: \
|
||||
if (ACE_TRY_FLAG) \
|
||||
do {
|
||||
|
||||
// Check for exceptions within try blocks.
|
||||
# define ACE_TRY_CHECK \
|
||||
{ \
|
||||
if (ACE_TRY_ENV.exception () != 0) \
|
||||
{ \
|
||||
ACE_TRY_FLAG = 0; \
|
||||
goto ACE_TRY_LABEL; \
|
||||
} \
|
||||
}
|
||||
|
||||
// Checking exception within EX try blocks.
|
||||
# define ACE_TRY_CHECK_EX(LABEL) \
|
||||
{ \
|
||||
if (ACE_TRY_ENV.exception () != 0) \
|
||||
{ \
|
||||
ACE_TRY_FLAG = 0; \
|
||||
goto ACE_TRY_LABEL ## LABEL; \
|
||||
} \
|
||||
}
|
||||
|
||||
// Throwing exception within TRY blocks.
|
||||
# define ACE_TRY_THROW(EXCEPTION) \
|
||||
{ \
|
||||
ACE_TRY_ENV.exception (new EXCEPTION); \
|
||||
ACE_TRY_FLAG = 0; \
|
||||
goto ACE_TRY_LABEL; \
|
||||
}
|
||||
|
||||
# define ACE_TRY_THROW_EX(EXCEPTION,LABEL) \
|
||||
{ \
|
||||
ACE_TRY_ENV.exception (new EXCEPTION); \
|
||||
ACE_TRY_FLAG = 0; \
|
||||
goto ACE_TRY_LABEL ## LABEL; \
|
||||
}
|
||||
|
||||
// When exceptions occur or try block finishes execution without exception,
|
||||
// control will continue in the catch block. This macro first checks if
|
||||
// there's any uncaught exception left. If all the conditions are met, we
|
||||
// have caught an exception. It then resets ACE_EXCEPTION_NOT_CAUGHT to
|
||||
// prevent subsequent catch blocks from catching the same exception again,
|
||||
// and extracts out the underlying exception in ACE_TRY_ENV. We also make a
|
||||
// copy of ACE_TRY_ENV in ACE_CAUGHT_ENV, in case we want to rethrow the
|
||||
// exception. ACE_TRY_ENV is cleared out after the exception is caught so
|
||||
// you should not use ACE_TRY_ENV within the catch block(You should use the
|
||||
// exception directly).
|
||||
# define ACE_CATCH(TYPE,VAR) \
|
||||
} while (0); \
|
||||
do \
|
||||
if (ACE_TRY_ENV.exception () != 0 && ACE_EXCEPTION_NOT_CAUGHT && \
|
||||
TYPE::_downcast(ACE_TRY_ENV.exception ()) != 0) \
|
||||
{ \
|
||||
ACE_ENV_TYPE ACE_CAUGHT_ENV = ACE_TRY_ENV;\
|
||||
ACE_EXCEPTION_NOT_CAUGHT = 0; \
|
||||
TYPE &VAR = *TYPE::_downcast (ACE_CAUGHT_ENV.exception ()); \
|
||||
ACE_UNUSED_ARG (VAR); \
|
||||
ACE_TRY_ENV.clear ();
|
||||
|
||||
// ACE_CATCHANY uses ACE_CATCH to catch all exceptions derived from
|
||||
// ACE_EXCEPTION_TYPE
|
||||
# define ACE_CATCHANY ACE_CATCH (ACE_EXCEPTION_TYPE, ACE_ANY_EXCEPTION)
|
||||
|
||||
// Since there's no other exception for compilers without exception
|
||||
// support, we simply catch all ACE_EXCEPTION_TYPE exceptions for
|
||||
// ACE_CATCHALL.
|
||||
# define ACE_CATCHALL ACE_CATCHANY
|
||||
|
||||
# if defined (ACE_HAS_DEPRECATED_ACE_RETHROW)
|
||||
# define ACE_RETHROW \
|
||||
do \
|
||||
ACE_TRY_ENV = ACE_CAUGHT_ENV; \
|
||||
while (0)
|
||||
# endif /* ACE_HAS_DEPRECATED_ACE_RETHROW */
|
||||
|
||||
// Rethrowing exception within catch blocks. Notice that we depend on the
|
||||
// ACE_CHECK/ACE_CHECK_RETURN following the ACE_ENDTRY, or ACE_TRY_CHECK/
|
||||
// ACE_TRY_CHECK_EX following the ACE_ENDTRY when the catch block is within
|
||||
// another try block, to do the "Right Thing[TM]."
|
||||
# define ACE_RE_THROW \
|
||||
do {\
|
||||
ACE_TRY_ENV = ACE_CAUGHT_ENV; \
|
||||
goto ACE_TRY_LABEL; \
|
||||
} while (0)
|
||||
# define ACE_RE_THROW_EX(LABEL) \
|
||||
do {\
|
||||
ACE_TRY_ENV = ACE_CAUGHT_ENV; \
|
||||
goto ACE_TRY_LABEL ## LABEL; \
|
||||
} while (0)
|
||||
|
||||
// Close the try block. Since exceptions may not get caught, and exceptions
|
||||
// can also be rethrown from the catch block, it's always a good idea to
|
||||
// follow ACE_ENDTRY with ACE_CHECK or ACE_TRY_CHECK (depending on the
|
||||
// context.)
|
||||
# define ACE_ENDTRY \
|
||||
} while (0); \
|
||||
} while (0)
|
||||
|
||||
#endif /* ! ACE_USES_NATIVE_EXCEPTIONS */
|
||||
|
||||
#endif /* !ACE_LACKS_DEPRECATED_MACROS */
|
||||
|
||||
// ACE_HAS_EXCEPTIONS is not the same as ACE_NEW_THROWS_EXCEPTIONS.
|
||||
#if defined(ACE_NEW_THROWS_EXCEPTIONS)
|
||||
|
||||
@@ -438,6 +71,7 @@
|
||||
|
||||
#endif /* ACE_NEW_THROWS_EXCEPTIONS */
|
||||
|
||||
// FUZZ: disable check_for_ACE_Guard
|
||||
# define ACE_GUARD_THROW_EX(MUTEX,OBJ,LOCK,EXCEPTION) \
|
||||
ACE_Guard< MUTEX > OBJ (LOCK); \
|
||||
if (OBJ.locked () == 0) throw EXCEPTION;
|
||||
@@ -449,126 +83,7 @@
|
||||
# define ACE_WRITE_GUARD_THROW_EX(MUTEX,OBJ,LOCK,EXCEPTION) \
|
||||
ACE_Write_Guard< MUTEX > OBJ (LOCK); \
|
||||
if (OBJ.locked () == 0) throw EXCEPTION;
|
||||
|
||||
#if !defined (ACE_LACKS_DEPRECATED_MACROS)
|
||||
|
||||
//@{
|
||||
/**
|
||||
* @name Native C++ exceptions portability macros.
|
||||
*
|
||||
* The following macros are used to write code portable between platforms
|
||||
* with and without native C++ exception support. Their main goal is to
|
||||
* hide the presence of the ACE_ENV_TYPE argument, but they collaborate
|
||||
* with the ACE_TRY_* macros to emulate the try/catch blocks.
|
||||
*/
|
||||
|
||||
/// Define a macro to emit code only when ACE_ENV_TYPE is used
|
||||
#if !defined (ACE_USES_NATIVE_EXCEPTIONS) || defined (ACE_ENV_BKWD_COMPAT)
|
||||
# define ACE_ENV_EMIT_CODE(X) X
|
||||
#else
|
||||
# define ACE_ENV_EMIT_CODE(X)
|
||||
#endif /* ACE_USES_NATIVE_EXCEPTIONS && ! ACE_ENV_BKWD_COMPAT */
|
||||
|
||||
/// Another macro to emit code only when ACE_ENV_TYPE is used
|
||||
#if !defined (ACE_USES_NATIVE_EXCEPTIONS) || defined (ACE_ENV_BKWD_COMPAT)
|
||||
# define ACE_ENV_EMIT_CODE2(X,Y) X,Y
|
||||
#else
|
||||
# define ACE_ENV_EMIT_CODE2(X,Y)
|
||||
#endif /* ACE_USES_NATIVE_EXCEPTIONS && ! ACE_ENV_BKWD_COMPAT */
|
||||
|
||||
/// Helper macro
|
||||
#define ACE_ENV_EMIT_DUMMY
|
||||
|
||||
/// Declare a ACE_ENV_TYPE argument as the last argument of a
|
||||
/// function
|
||||
/**
|
||||
* Normally this macro is used as follows:
|
||||
*
|
||||
* <CODE>void my_funct (int x, int y ACE_ENV_ARG_DECL);</CODE>
|
||||
*
|
||||
* Its purpose is to provide developers (and users) with a mechanism to
|
||||
* write code that is portable to platforms with and without native C++
|
||||
* exceptions.
|
||||
*/
|
||||
#define ACE_ENV_ARG_DECL \
|
||||
ACE_ENV_EMIT_CODE2(ACE_ENV_EMIT_DUMMY, \
|
||||
ACE_ENV_TYPE &ACE_TRY_ENV)
|
||||
|
||||
/// Declare a ACE_ENV_TYPE argument with the default value obtained from
|
||||
/// the ORB/application.
|
||||
/**
|
||||
* It is similar to ACE_ENV_ARG_DECL. The name of the default environment
|
||||
* getter method needs to be changed when switching ORBs or when used with
|
||||
* another application.
|
||||
*/
|
||||
#define ACE_ENV_ARG_DECL_WITH_DEFAULTS \
|
||||
ACE_ENV_EMIT_CODE2(ACE_ENV_EMIT_DUMMY, \
|
||||
ACE_ENV_TYPE &ACE_TRY_ENV = \
|
||||
ACE_DEFAULT_GET_ENV_METHOD ())
|
||||
|
||||
/// Declare a ACE_ENV_TYPE argument that is not used by the
|
||||
/// function definition.
|
||||
/**
|
||||
* Similar to ACE_ENV_ARG_DECL, but the formal parameter name is dropped to
|
||||
* avoid warnings about unused parameters
|
||||
*/
|
||||
#define ACE_ENV_ARG_DECL_NOT_USED \
|
||||
ACE_ENV_EMIT_CODE2(ACE_ENV_EMIT_DUMMY, \
|
||||
ACE_ENV_TYPE &)
|
||||
|
||||
/// Declare a ACE_ENV_TYPE argument for methods that do not take any other
|
||||
/// parameters
|
||||
#define ACE_ENV_SINGLE_ARG_DECL \
|
||||
ACE_ENV_EMIT_CODE(ACE_ENV_TYPE &ACE_TRY_ENV)
|
||||
|
||||
/// Declare a ACE_ENV_TYPE argument with a default value for methods that
|
||||
/// do not take any other parameters. The name of the default environment
|
||||
/// getter method needs to be changed when switching ORBs or when used in
|
||||
/// another application.
|
||||
#define ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS \
|
||||
ACE_ENV_EMIT_CODE(ACE_ENV_TYPE &ACE_TRY_ENV = \
|
||||
ACE_DEFAULT_GET_ENV_METHOD ())
|
||||
|
||||
/// Declare a ACE_ENV_TYPE argument for methods which don't use it.
|
||||
#define ACE_ENV_SINGLE_ARG_DECL_NOT_USED \
|
||||
ACE_ENV_EMIT_CODE(ACE_ENV_TYPE &)
|
||||
|
||||
/// Use the ACE_ENV_TYPE argument in a nested call
|
||||
#define ACE_ENV_ARG_PARAMETER \
|
||||
ACE_ENV_EMIT_CODE2(ACE_ENV_EMIT_DUMMY, \
|
||||
ACE_TRY_ENV)
|
||||
|
||||
/// Use the ACE_ENV_TYPE argument in a nested call, assuming that the
|
||||
/// called function takes only the ACE_TRY_ENV argument.
|
||||
#define ACE_ENV_SINGLE_ARG_PARAMETER \
|
||||
ACE_ENV_EMIT_CODE(ACE_TRY_ENV)
|
||||
|
||||
/// Eliminate unused argument warnings about ACE_TRY_ENV
|
||||
#define ACE_ENV_ARG_NOT_USED \
|
||||
ACE_ENV_EMIT_CODE(ACE_UNUSED_ARG(ACE_TRY_ENV))
|
||||
//@}
|
||||
|
||||
#if !defined (ACE_USES_NATIVE_EXCEPTIONS)
|
||||
// This thing can be moved above when we drop ACE_ENV_BKWD_COMPAT.
|
||||
# define ACE_ENV_RAISE(ex) ACE_TRY_ENV.exception (ex)
|
||||
#else
|
||||
# define ACE_ENV_RAISE(ex) (ex)->_raise ()
|
||||
#endif /* ACE_USES_NATIVE_EXCEPTIONS */
|
||||
|
||||
// ============================================================
|
||||
|
||||
// Print out a TAO exception. This is not CORBA compliant.
|
||||
# define ACE_PRINT_TAO_EXCEPTION(EX,INFO) \
|
||||
EX._tao_print_exception (INFO)
|
||||
|
||||
// Print out a CORBA exception. There is not portable way to
|
||||
// dump a CORBA exception. If you are using other ORB implementation,
|
||||
// redefine the macro to get what you want.
|
||||
# if !defined ACE_PRINT_EXCEPTION
|
||||
# define ACE_PRINT_EXCEPTION(EX,INFO) ACE_PRINT_TAO_EXCEPTION(EX,INFO)
|
||||
# endif /* ACE_PRINT_EXCEPTION */
|
||||
|
||||
#endif /* !ACE_LACKS_DEPRECATED_MACROS */
|
||||
// FUZZ: enable check_for_ACE_Guard
|
||||
|
||||
#include /**/ "ace/post.h"
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id: Cache_Map_Manager_T.cpp 80826 2008-03-04 14:51:23Z wotte $
|
||||
// $Id: Cache_Map_Manager_T.cpp 92097 2010-09-30 05:41:49Z msmit $
|
||||
|
||||
#ifndef ACE_CACHE_MAP_MANAGER_T_CPP
|
||||
#define ACE_CACHE_MAP_MANAGER_T_CPP
|
||||
@@ -77,7 +77,7 @@ ACE_Cache_Map_Manager<ACE_T2>::bind (const KEY &key,
|
||||
{
|
||||
|
||||
int result = this->caching_strategy_.notify_bind (bind_result,
|
||||
cache_value.second ());
|
||||
cache_value.second);
|
||||
|
||||
if (result == -1)
|
||||
{
|
||||
@@ -285,7 +285,7 @@ ACE_Cache_Map_Manager<ACE_T2>::find (const KEY &key,
|
||||
{
|
||||
|
||||
int result = this->caching_strategy_.notify_find (find_result,
|
||||
cache_value.second ());
|
||||
cache_value.second);
|
||||
|
||||
// Unless the find and notification operations go thru, this
|
||||
// method is not successful.
|
||||
@@ -301,7 +301,7 @@ ACE_Cache_Map_Manager<ACE_T2>::find (const KEY &key,
|
||||
if (rebind_result == -1)
|
||||
find_result = -1;
|
||||
else
|
||||
value = cache_value.first ();
|
||||
value = cache_value.first;
|
||||
|
||||
}
|
||||
|
||||
@@ -361,7 +361,7 @@ ACE_Cache_Map_Manager<ACE_T2>::unbind (const KEY &key)
|
||||
{
|
||||
|
||||
int result = this->caching_strategy_.notify_unbind (unbind_result,
|
||||
cache_value.second ());
|
||||
cache_value.second);
|
||||
|
||||
if (result == -1)
|
||||
unbind_result = -1;
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
/**
|
||||
* @file Cache_Map_Manager_T.h
|
||||
*
|
||||
* $Id: Cache_Map_Manager_T.h 80826 2008-03-04 14:51:23Z wotte $
|
||||
* $Id: Cache_Map_Manager_T.h 92097 2010-09-30 05:41:49Z msmit $
|
||||
*
|
||||
* @author Kirthika Parameswaran <kirthika@cs.wustl.edu>
|
||||
*/
|
||||
@@ -91,7 +91,7 @@ public:
|
||||
* are used by the strategy and is transparent to the user of this
|
||||
* class.
|
||||
*/
|
||||
typedef ACE_Pair<VALUE, ATTRIBUTES> CACHE_VALUE;
|
||||
typedef std::pair<VALUE, ATTRIBUTES> CACHE_VALUE;
|
||||
|
||||
// = Initialization and termination methods.
|
||||
|
||||
@@ -251,10 +251,10 @@ public:
|
||||
|
||||
// = Traits.
|
||||
/// The actual value mapped to the key in the cache. The <attributes>
|
||||
/// are used by the strategy and is transperant to the cache user.
|
||||
/// are used by the strategy and is transparent to the cache user.
|
||||
typedef ACE_Reference_Pair<KEY, VALUE>
|
||||
value_type;
|
||||
typedef ACE_Pair <VALUE, ATTRIBUTES>
|
||||
typedef std::pair <VALUE, ATTRIBUTES>
|
||||
CACHE_VALUE;
|
||||
|
||||
// = Initialisation and termination methods.
|
||||
@@ -274,7 +274,7 @@ public:
|
||||
(const ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION,
|
||||
CACHING_STRATEGY, ATTRIBUTES> &rhs);
|
||||
|
||||
/// Comparision operators.
|
||||
/// Comparison operators.
|
||||
bool operator== (const ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> &rhs) const;
|
||||
bool operator!= (const ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> &rhs) const;
|
||||
|
||||
@@ -327,9 +327,9 @@ public:
|
||||
|
||||
// = Traits.
|
||||
/// The actual value mapped to the key in the cache. The <attributes>
|
||||
/// are used by the strategy and is transperant to the cache user.
|
||||
/// are used by the strategy and is transparent to the cache user.
|
||||
typedef ACE_Reference_Pair<KEY, VALUE> value_type;
|
||||
typedef ACE_Pair <VALUE, ATTRIBUTES> CACHE_VALUE;
|
||||
typedef std::pair <VALUE, ATTRIBUTES> CACHE_VALUE;
|
||||
|
||||
// = Initialisation and termination methods.
|
||||
|
||||
@@ -348,7 +348,7 @@ public:
|
||||
(const ACE_Cache_Map_Reverse_Iterator<KEY, VALUE, REVERSE_IMPLEMENTATION,
|
||||
CACHING_STRATEGY, ATTRIBUTES> &rhs);
|
||||
|
||||
/// Comparision operators.
|
||||
/// Comparison operators.
|
||||
bool operator== (const ACE_Cache_Map_Reverse_Iterator<KEY, VALUE, REVERSE_IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> &rhs) const;
|
||||
bool operator!= (const ACE_Cache_Map_Reverse_Iterator<KEY, VALUE, REVERSE_IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES> &rhs) const;
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
// -*- C++ -*-
|
||||
//
|
||||
//$Id: Cache_Map_Manager_T.inl 80826 2008-03-04 14:51:23Z wotte $
|
||||
//$Id: Cache_Map_Manager_T.inl 92097 2010-09-30 05:41:49Z msmit $
|
||||
|
||||
ACE_BEGIN_VERSIONED_NAMESPACE_DECL
|
||||
|
||||
@@ -89,7 +89,7 @@ template <class KEY, class VALUE, class IMPLEMENTATION, class CACHING_STRATEGY,
|
||||
ACE_Cache_Map_Iterator<KEY, VALUE, IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES>::operator* (void) const
|
||||
{
|
||||
value_type retn ((*this->iterator_implementation_).ext_id_,
|
||||
(*this->iterator_implementation_).int_id_.first ());
|
||||
(*this->iterator_implementation_).int_id_.first);
|
||||
return retn;
|
||||
}
|
||||
|
||||
@@ -183,7 +183,7 @@ template <class KEY, class VALUE, class REVERSE_IMPLEMENTATION, class CACHING_ST
|
||||
ACE_Cache_Map_Reverse_Iterator<KEY, VALUE, REVERSE_IMPLEMENTATION, CACHING_STRATEGY, ATTRIBUTES>::operator* (void) const
|
||||
{
|
||||
value_type retv ((*this->reverse_iterator_implementation_).ext_id_,
|
||||
(*this->reverse_iterator_implementation_).int_id_.first ());
|
||||
(*this->reverse_iterator_implementation_).int_id_.first);
|
||||
return retv;
|
||||
}
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
//$Id: Cached_Connect_Strategy_T.cpp 82771 2008-09-17 18:47:48Z johnnyw $
|
||||
//$Id: Cached_Connect_Strategy_T.cpp 92097 2010-09-30 05:41:49Z msmit $
|
||||
|
||||
#ifndef ACE_CACHED_CONNECT_STRATEGY_T_CPP
|
||||
#define ACE_CACHED_CONNECT_STRATEGY_T_CPP
|
||||
@@ -14,7 +14,6 @@
|
||||
#include "ace/Service_Types.h"
|
||||
#include "ace/Thread_Manager.h"
|
||||
#include "ace/WFMO_Reactor.h"
|
||||
#include "ace/Pair_T.h"
|
||||
|
||||
#define ACE_T1 class SVC_HANDLER, ACE_PEER_CONNECTOR_1, class CACHING_STRATEGY, class ATTRIBUTES, class MUTEX
|
||||
#define ACE_T2 SVC_HANDLER, ACE_PEER_CONNECTOR_2, CACHING_STRATEGY, ATTRIBUTES, MUTEX
|
||||
@@ -54,7 +53,7 @@ ACE_Cached_Connect_Strategy_Ex<ACE_T2>::check_hint_i
|
||||
bool reuse_addr,
|
||||
int flags,
|
||||
int perms,
|
||||
ACE_Hash_Map_Entry<ACE_Refcounted_Hash_Recyclable<ACE_PEER_CONNECTOR_ADDR>, ACE_Pair<SVC_HANDLER *, ATTRIBUTES> > *&entry,
|
||||
ACE_Hash_Map_Entry<ACE_Refcounted_Hash_Recyclable<ACE_PEER_CONNECTOR_ADDR>, std::pair<SVC_HANDLER *, ATTRIBUTES> > *&entry,
|
||||
int &found)
|
||||
{
|
||||
ACE_UNUSED_ARG (remote_addr);
|
||||
@@ -77,8 +76,8 @@ ACE_Cached_Connect_Strategy_Ex<ACE_T2>::check_hint_i
|
||||
if (possible_entry->ext_id_.decrement () == 0)
|
||||
{
|
||||
// If refcount goes to zero, close down the svc_handler
|
||||
possible_entry->int_id_.first ()->recycler (0, 0);
|
||||
possible_entry->int_id_.first ()->close ();
|
||||
possible_entry->int_id_.first->recycler (0, 0);
|
||||
possible_entry->int_id_.first->close ();
|
||||
this->purge_i (possible_entry);
|
||||
}
|
||||
|
||||
@@ -111,7 +110,7 @@ ACE_Cached_Connect_Strategy_Ex<ACE_T2>::check_hint_i
|
||||
int find_result = 0;
|
||||
|
||||
int result = this->caching_strategy ().notify_find (find_result,
|
||||
possible_entry->int_id_.second ());
|
||||
possible_entry->int_id_.second);
|
||||
|
||||
if (result == -1)
|
||||
return result;
|
||||
@@ -144,7 +143,7 @@ ACE_Cached_Connect_Strategy_Ex<ACE_T2>::find_or_create_svc_handler_i
|
||||
bool reuse_addr,
|
||||
int flags,
|
||||
int perms,
|
||||
ACE_Hash_Map_Entry<ACE_Refcounted_Hash_Recyclable<ACE_PEER_CONNECTOR_ADDR>, ACE_Pair<SVC_HANDLER *, ATTRIBUTES> > *&entry,
|
||||
ACE_Hash_Map_Entry<ACE_Refcounted_Hash_Recyclable<ACE_PEER_CONNECTOR_ADDR>, std::pair<SVC_HANDLER *, ATTRIBUTES> > *&entry,
|
||||
int &found)
|
||||
{
|
||||
REFCOUNTED_HASH_RECYCLABLE_ADDRESS search_addr (remote_addr);
|
||||
@@ -155,7 +154,7 @@ ACE_Cached_Connect_Strategy_Ex<ACE_T2>::find_or_create_svc_handler_i
|
||||
{
|
||||
// We found a cached svc_handler.
|
||||
// Get the cached <svc_handler>
|
||||
sh = entry->int_id_.first ();
|
||||
sh = entry->int_id_.first;
|
||||
|
||||
// Is the connection clean?
|
||||
int state_result =
|
||||
@@ -450,8 +449,8 @@ ACE_Cached_Connect_Strategy_Ex<ACE_T2>::cleanup_hint_i (const void *recycling_ac
|
||||
if (entry->ext_id_.recycle_state () == ACE_RECYCLABLE_CLOSED &&
|
||||
refcount == 0)
|
||||
{
|
||||
entry->int_id_.first ()->recycler (0, 0);
|
||||
entry->int_id_.first ()->close ();
|
||||
entry->int_id_.first->recycler (0, 0);
|
||||
entry->int_id_.first->close ();
|
||||
this->purge_i (entry);
|
||||
}
|
||||
|
||||
@@ -472,10 +471,10 @@ ACE_Cached_Connect_Strategy_Ex<ACE_T2>::caching_strategy (void)
|
||||
|
||||
template <ACE_T1> int
|
||||
ACE_Cached_Connect_Strategy_Ex<ACE_T2>::find (ACE_Refcounted_Hash_Recyclable<ACE_PEER_CONNECTOR_ADDR> &search_addr,
|
||||
ACE_Hash_Map_Entry<ACE_Refcounted_Hash_Recyclable<ACE_PEER_CONNECTOR_ADDR>, ACE_Pair<SVC_HANDLER *, ATTRIBUTES> > *&entry)
|
||||
ACE_Hash_Map_Entry<ACE_Refcounted_Hash_Recyclable<ACE_PEER_CONNECTOR_ADDR>, std::pair<SVC_HANDLER *, ATTRIBUTES> > *&entry)
|
||||
{
|
||||
typedef ACE_Hash_Map_Bucket_Iterator<REFCOUNTED_HASH_RECYCLABLE_ADDRESS,
|
||||
ACE_Pair<SVC_HANDLER *, ATTRIBUTES>,
|
||||
std::pair<SVC_HANDLER *, ATTRIBUTES>,
|
||||
ACE_Hash<REFCOUNTED_HASH_RECYCLABLE_ADDRESS>,
|
||||
ACE_Equal_To<REFCOUNTED_HASH_RECYCLABLE_ADDRESS>,
|
||||
ACE_Null_Mutex>
|
||||
@@ -512,7 +511,7 @@ ACE_Cached_Connect_Strategy_Ex<ACE_T2>::find (ACE_Refcounted_Hash_Recyclable<ACE
|
||||
int find_result = 0;
|
||||
|
||||
int result = this->caching_strategy ().notify_find (find_result,
|
||||
entry->int_id_.second ());
|
||||
entry->int_id_.second);
|
||||
|
||||
if (result == -1)
|
||||
return result;
|
||||
@@ -591,7 +590,7 @@ ACE_Bounded_Cached_Connect_Strategy<ACE_T2>::find_or_create_svc_handler_i
|
||||
int flags,
|
||||
int perms,
|
||||
ACE_Hash_Map_Entry<ACE_Refcounted_Hash_Recyclable<ACE_PEER_CONNECTOR_ADDR>,
|
||||
ACE_Pair<SVC_HANDLER *, ATTRIBUTES> > *&entry,
|
||||
std::pair<SVC_HANDLER *, ATTRIBUTES> > *&entry,
|
||||
int &found)
|
||||
{
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
/**
|
||||
* @file Cached_Connect_Strategy_T.h
|
||||
*
|
||||
* $Id: Cached_Connect_Strategy_T.h 91077 2010-07-13 14:33:08Z johnnyw $
|
||||
* $Id: Cached_Connect_Strategy_T.h 92097 2010-09-30 05:41:49Z msmit $
|
||||
*
|
||||
* @author Kirthika Parameswaran <kirthika@cs.wustl.edu>
|
||||
*/
|
||||
@@ -90,9 +90,9 @@ public:
|
||||
typedef typename CONNECTION_CACHE::mapped_type VALUE;
|
||||
|
||||
typedef ACE_Recyclable_Handler_Cleanup_Strategy<REFCOUNTED_HASH_RECYCLABLE_ADDRESS,
|
||||
ACE_Pair<SVC_HANDLER *, ATTRIBUTES>,
|
||||
std::pair<SVC_HANDLER *, ATTRIBUTES>,
|
||||
ACE_Hash_Map_Manager_Ex<REFCOUNTED_HASH_RECYCLABLE_ADDRESS,
|
||||
ACE_Pair<SVC_HANDLER *, ATTRIBUTES>,
|
||||
std::pair<SVC_HANDLER *, ATTRIBUTES>,
|
||||
ACE_Hash<REFCOUNTED_HASH_RECYCLABLE_ADDRESS>,
|
||||
ACE_Equal_To<REFCOUNTED_HASH_RECYCLABLE_ADDRESS>,
|
||||
MUTEX> >
|
||||
@@ -108,7 +108,7 @@ protected:
|
||||
|
||||
/// Find an idle handle.
|
||||
int find (ACE_Refcounted_Hash_Recyclable<ACE_PEER_CONNECTOR_ADDR> &search_addr,
|
||||
ACE_Hash_Map_Entry<ACE_Refcounted_Hash_Recyclable<ACE_PEER_CONNECTOR_ADDR>, ACE_Pair<SVC_HANDLER *, ATTRIBUTES> > *&entry);
|
||||
ACE_Hash_Map_Entry<ACE_Refcounted_Hash_Recyclable<ACE_PEER_CONNECTOR_ADDR>, std::pair<SVC_HANDLER *, ATTRIBUTES> > *&entry);
|
||||
|
||||
/// Remove from cache (non-locking version).
|
||||
virtual int purge_i (const void *recycling_act);
|
||||
@@ -133,7 +133,7 @@ protected:
|
||||
bool reuse_addr,
|
||||
int flags,
|
||||
int perms,
|
||||
ACE_Hash_Map_Entry<ACE_Refcounted_Hash_Recyclable<ACE_PEER_CONNECTOR_ADDR>, ACE_Pair<SVC_HANDLER *, ATTRIBUTES> > *&entry,
|
||||
ACE_Hash_Map_Entry<ACE_Refcounted_Hash_Recyclable<ACE_PEER_CONNECTOR_ADDR>, std::pair<SVC_HANDLER *, ATTRIBUTES> > *&entry,
|
||||
int &found);
|
||||
|
||||
virtual int find_or_create_svc_handler_i (SVC_HANDLER *&sh,
|
||||
@@ -143,7 +143,7 @@ protected:
|
||||
bool reuse_addr,
|
||||
int flags,
|
||||
int perms,
|
||||
ACE_Hash_Map_Entry<ACE_Refcounted_Hash_Recyclable<ACE_PEER_CONNECTOR_ADDR>, ACE_Pair<SVC_HANDLER *, ATTRIBUTES> > *&entry,
|
||||
ACE_Hash_Map_Entry<ACE_Refcounted_Hash_Recyclable<ACE_PEER_CONNECTOR_ADDR>, std::pair<SVC_HANDLER *, ATTRIBUTES> > *&entry,
|
||||
int &found);
|
||||
|
||||
virtual int connect_svc_handler_i (SVC_HANDLER *&sh,
|
||||
@@ -240,7 +240,7 @@ protected:
|
||||
int flags,
|
||||
int perms,
|
||||
ACE_Hash_Map_Entry<ACE_Refcounted_Hash_Recyclable<ACE_PEER_CONNECTOR_ADDR>,
|
||||
ACE_Pair<SVC_HANDLER *, ATTRIBUTES> > *&entry,
|
||||
std::pair<SVC_HANDLER *, ATTRIBUTES> > *&entry,
|
||||
int &found);
|
||||
|
||||
protected:
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
/**
|
||||
* @file Caching_Strategies_T.h
|
||||
*
|
||||
* $Id: Caching_Strategies_T.h 80826 2008-03-04 14:51:23Z wotte $
|
||||
* $Id: Caching_Strategies_T.h 92097 2010-09-30 05:41:49Z msmit $
|
||||
*
|
||||
* @author Kirthika Parameswaran <kirthika@cs.wustl.edu>
|
||||
*/
|
||||
@@ -191,7 +191,7 @@ private:
|
||||
* The ATTRIBUTES are the deciding factor for purging of entries
|
||||
* and should logically be included with the VALUE. Some ways of
|
||||
* doing this are: As being a member of the VALUE or VALUE being
|
||||
* ACE_Pair<x, ATTRIBUTES>. The CACHING_UTILITY is the
|
||||
* std::pair<x, ATTRIBUTES>. The CACHING_UTILITY is the
|
||||
* class which can be plugged in and which decides the entries
|
||||
* to purge.
|
||||
*/
|
||||
@@ -291,7 +291,7 @@ private:
|
||||
* The ATTRIBUTES are the deciding factor for purging of entries
|
||||
* and should logically be included with the VALUE. Some ways of
|
||||
* doing this are: As being a member of the VALUE or VALUE being
|
||||
* ACE_Pair<x, ATTRIBUTES>. The CACHING_UTILITY is the
|
||||
* std::pair<x, ATTRIBUTES>. The CACHING_UTILITY is the
|
||||
* class which can be plugged in and which decides the entries
|
||||
* to purge.
|
||||
*/
|
||||
@@ -384,7 +384,7 @@ private:
|
||||
* The ATTRIBUTES are the deciding factor for purging of entries
|
||||
* and should logically be included with the VALUE. Some ways of
|
||||
* doing this are: As being a member of the VALUE or VALUE being
|
||||
* ACE_Pair<x, ATTRIBUTES>. The CACHING_UTILITY is the
|
||||
* std::pair<x, ATTRIBUTES>. The CACHING_UTILITY is the
|
||||
* class which can be plugged in and which decides the entries
|
||||
* to purge.
|
||||
*/
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id: Caching_Utility_T.cpp 80826 2008-03-04 14:51:23Z wotte $
|
||||
// $Id: Caching_Utility_T.cpp 92264 2010-10-19 18:12:46Z olli $
|
||||
|
||||
#ifndef ACE_CACHING_UTILITY_T_CPP
|
||||
#define ACE_CACHING_UTILITY_T_CPP
|
||||
@@ -9,6 +9,7 @@
|
||||
#pragma once
|
||||
#endif /* ACE_LACKS_PRAGMA_ONCE */
|
||||
|
||||
#include "ace/ACE.h"
|
||||
#include "ace/Min_Max.h"
|
||||
#include "ace/OS_Memory.h"
|
||||
#include "ace/Recyclable.h"
|
||||
@@ -19,7 +20,7 @@ ACE_BEGIN_VERSIONED_NAMESPACE_DECL
|
||||
|
||||
template <class KEY, class VALUE, class CONTAINER, class ITERATOR, class ATTRIBUTES>
|
||||
ACE_Pair_Caching_Utility<KEY, VALUE, CONTAINER, ITERATOR, ATTRIBUTES>::ACE_Pair_Caching_Utility (ACE_Cleanup_Strategy<KEY, VALUE, CONTAINER> *cleanup_strategy,
|
||||
int delete_cleanup_strategy)
|
||||
bool delete_cleanup_strategy)
|
||||
: cleanup_strategy_ (cleanup_strategy),
|
||||
delete_cleanup_strategy_ (delete_cleanup_strategy)
|
||||
{
|
||||
@@ -27,7 +28,7 @@ ACE_Pair_Caching_Utility<KEY, VALUE, CONTAINER, ITERATOR, ATTRIBUTES>::ACE_Pair_
|
||||
{
|
||||
ACE_NEW (this->cleanup_strategy_,
|
||||
CLEANUP_STRATEGY);
|
||||
this->delete_cleanup_strategy_ = 1;
|
||||
this->delete_cleanup_strategy_ = true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -43,7 +44,7 @@ ACE_Pair_Caching_Utility<KEY, VALUE, CONTAINER, ITERATOR, ATTRIBUTES>::clear_cac
|
||||
double purge_percent)
|
||||
{
|
||||
// Check that the purge_percent is non-zero.
|
||||
if (purge_percent == 0)
|
||||
if (ACE::is_equal (purge_percent, 0.0))
|
||||
return 0;
|
||||
|
||||
// Get the number of entries in the container.
|
||||
@@ -94,7 +95,7 @@ ACE_Pair_Caching_Utility<KEY, VALUE, CONTAINER, ITERATOR, ATTRIBUTES>::minimum (
|
||||
// Starting values.
|
||||
ITERATOR iter = container.begin ();
|
||||
ITERATOR end = container.end ();
|
||||
ATTRIBUTES min = (*iter).int_id_.second ();
|
||||
ATTRIBUTES min = (*iter).int_id_.second;
|
||||
key_to_remove = &(*iter).ext_id_;
|
||||
value_to_remove = &(*iter).int_id_;
|
||||
|
||||
@@ -104,10 +105,10 @@ ACE_Pair_Caching_Utility<KEY, VALUE, CONTAINER, ITERATOR, ATTRIBUTES>::minimum (
|
||||
iter != end;
|
||||
++iter)
|
||||
{
|
||||
if (min > (*iter).int_id_.second ())
|
||||
if (min > (*iter).int_id_.second)
|
||||
{
|
||||
// Ah! an item with lower ATTTRIBUTES...
|
||||
min = (*iter).int_id_.second ();
|
||||
min = (*iter).int_id_.second;
|
||||
key_to_remove = &(*iter).ext_id_;
|
||||
value_to_remove = &(*iter).int_id_;
|
||||
}
|
||||
@@ -118,7 +119,7 @@ ACE_Pair_Caching_Utility<KEY, VALUE, CONTAINER, ITERATOR, ATTRIBUTES>::minimum (
|
||||
|
||||
template <class KEY, class VALUE, class CONTAINER, class ITERATOR, class ATTRIBUTES>
|
||||
ACE_Recyclable_Handler_Caching_Utility<KEY, VALUE, CONTAINER, ITERATOR, ATTRIBUTES>::ACE_Recyclable_Handler_Caching_Utility (ACE_Cleanup_Strategy<KEY, VALUE, CONTAINER> *cleanup_strategy,
|
||||
int delete_cleanup_strategy)
|
||||
bool delete_cleanup_strategy)
|
||||
: cleanup_strategy_ (cleanup_strategy),
|
||||
delete_cleanup_strategy_ (delete_cleanup_strategy)
|
||||
{
|
||||
@@ -126,7 +127,7 @@ ACE_Recyclable_Handler_Caching_Utility<KEY, VALUE, CONTAINER, ITERATOR, ATTRIBUT
|
||||
{
|
||||
ACE_NEW (this->cleanup_strategy_,
|
||||
CLEANUP_STRATEGY);
|
||||
this->delete_cleanup_strategy_ = 1;
|
||||
this->delete_cleanup_strategy_ = true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -142,7 +143,7 @@ ACE_Recyclable_Handler_Caching_Utility<KEY, VALUE, CONTAINER, ITERATOR, ATTRIBUT
|
||||
double purge_percent)
|
||||
{
|
||||
// Check that the purge_percent is non-zero.
|
||||
if (purge_percent == 0)
|
||||
if (ACE::is_equal (purge_percent, 0.0))
|
||||
return 0;
|
||||
|
||||
// Get the number of entries in the container.
|
||||
@@ -194,7 +195,7 @@ ACE_Recyclable_Handler_Caching_Utility<KEY, VALUE, CONTAINER, ITERATOR, ATTRIBUT
|
||||
// Starting values.
|
||||
ITERATOR end = container.end ();
|
||||
ITERATOR iter = container.begin ();
|
||||
ATTRIBUTES min = (*iter).int_id_.second ();
|
||||
ATTRIBUTES min = (*iter).int_id_.second;
|
||||
key_to_remove = 0;
|
||||
value_to_remove = 0;
|
||||
// Found the minimum entry to be purged?
|
||||
@@ -214,7 +215,7 @@ ACE_Recyclable_Handler_Caching_Utility<KEY, VALUE, CONTAINER, ITERATOR, ATTRIBUT
|
||||
{
|
||||
if (found == 0)
|
||||
{
|
||||
min = (*iter).int_id_.second ();
|
||||
min = (*iter).int_id_.second;
|
||||
key_to_remove = &(*iter).ext_id_;
|
||||
value_to_remove = &(*iter).int_id_;
|
||||
found = 1;
|
||||
@@ -222,9 +223,9 @@ ACE_Recyclable_Handler_Caching_Utility<KEY, VALUE, CONTAINER, ITERATOR, ATTRIBUT
|
||||
else
|
||||
{
|
||||
// Ah! an entry with lower ATTTRIBUTES...
|
||||
if (min > (*iter).int_id_.second ())
|
||||
if (min > (*iter).int_id_.second)
|
||||
{
|
||||
min = (*iter).int_id_.second ();
|
||||
min = (*iter).int_id_.second;
|
||||
key_to_remove = &(*iter).ext_id_;
|
||||
value_to_remove = &(*iter).int_id_;
|
||||
}
|
||||
@@ -237,7 +238,7 @@ ACE_Recyclable_Handler_Caching_Utility<KEY, VALUE, CONTAINER, ITERATOR, ATTRIBUT
|
||||
|
||||
template <class KEY, class VALUE, class CONTAINER, class ITERATOR, class ATTRIBUTES>
|
||||
ACE_Refcounted_Recyclable_Handler_Caching_Utility<KEY, VALUE, CONTAINER, ITERATOR, ATTRIBUTES>::ACE_Refcounted_Recyclable_Handler_Caching_Utility (ACE_Cleanup_Strategy<KEY, VALUE, CONTAINER> *cleanup_strategy,
|
||||
int delete_cleanup_strategy)
|
||||
bool delete_cleanup_strategy)
|
||||
: cleanup_strategy_ (cleanup_strategy),
|
||||
delete_cleanup_strategy_ (delete_cleanup_strategy),
|
||||
marked_as_closed_entries_ (0)
|
||||
@@ -246,7 +247,7 @@ ACE_Refcounted_Recyclable_Handler_Caching_Utility<KEY, VALUE, CONTAINER, ITERATO
|
||||
{
|
||||
ACE_NEW (this->cleanup_strategy_,
|
||||
CLEANUP_STRATEGY);
|
||||
this->delete_cleanup_strategy_ = 1;
|
||||
this->delete_cleanup_strategy_ = true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -262,7 +263,7 @@ ACE_Refcounted_Recyclable_Handler_Caching_Utility<KEY, VALUE, CONTAINER, ITERATO
|
||||
double purge_percent)
|
||||
{
|
||||
// Check that the purge_percent is non-zero.
|
||||
if (purge_percent == 0)
|
||||
if (ACE::is_equal (purge_percent, 0.0))
|
||||
return 0;
|
||||
|
||||
// Get the number of entries in the container which can be considered for purging.
|
||||
@@ -362,7 +363,7 @@ ACE_Refcounted_Recyclable_Handler_Caching_Utility<KEY, VALUE, CONTAINER, ITERATO
|
||||
|
||||
template <class KEY, class VALUE, class CONTAINER, class ITERATOR, class ATTRIBUTES>
|
||||
ACE_Handler_Caching_Utility<KEY, VALUE, CONTAINER, ITERATOR, ATTRIBUTES>::ACE_Handler_Caching_Utility (ACE_Cleanup_Strategy<KEY, VALUE, CONTAINER> *cleanup_strategy,
|
||||
int delete_cleanup_strategy)
|
||||
bool delete_cleanup_strategy)
|
||||
: cleanup_strategy_ (cleanup_strategy),
|
||||
delete_cleanup_strategy_ (delete_cleanup_strategy)
|
||||
{
|
||||
@@ -370,7 +371,7 @@ ACE_Handler_Caching_Utility<KEY, VALUE, CONTAINER, ITERATOR, ATTRIBUTES>::ACE_Ha
|
||||
{
|
||||
ACE_NEW (this->cleanup_strategy_,
|
||||
CLEANUP_STRATEGY);
|
||||
this->delete_cleanup_strategy_ = 1;
|
||||
this->delete_cleanup_strategy_ = true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -386,7 +387,7 @@ ACE_Handler_Caching_Utility<KEY, VALUE, CONTAINER, ITERATOR, ATTRIBUTES>::clear_
|
||||
double purge_percent)
|
||||
{
|
||||
// Check that the purge_percent is non-zero.
|
||||
if (purge_percent == 0)
|
||||
if (ACE::is_equal (purge_percent, 0.0))
|
||||
return 0;
|
||||
|
||||
// Get the number of entries in the container.
|
||||
@@ -455,7 +456,7 @@ ACE_Handler_Caching_Utility<KEY, VALUE, CONTAINER, ITERATOR, ATTRIBUTES>::minimu
|
||||
|
||||
template <class KEY, class VALUE, class CONTAINER, class ITERATOR, class ATTRIBUTES>
|
||||
ACE_Null_Caching_Utility<KEY, VALUE, CONTAINER, ITERATOR, ATTRIBUTES>::ACE_Null_Caching_Utility (ACE_Cleanup_Strategy<KEY, VALUE, CONTAINER> *cleanup_strategy,
|
||||
int delete_cleanup_strategy)
|
||||
bool delete_cleanup_strategy)
|
||||
: cleanup_strategy_ (cleanup_strategy),
|
||||
delete_cleanup_strategy_ (delete_cleanup_strategy)
|
||||
{
|
||||
@@ -463,7 +464,7 @@ ACE_Null_Caching_Utility<KEY, VALUE, CONTAINER, ITERATOR, ATTRIBUTES>::ACE_Null_
|
||||
{
|
||||
ACE_NEW (this->cleanup_strategy_,
|
||||
CLEANUP_STRATEGY);
|
||||
this->delete_cleanup_strategy_ = 1;
|
||||
this->delete_cleanup_strategy_ = true;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
/**
|
||||
* @file Caching_Utility_T.h
|
||||
*
|
||||
* $Id: Caching_Utility_T.h 80826 2008-03-04 14:51:23Z wotte $
|
||||
* $Id: Caching_Utility_T.h 92085 2010-09-29 12:23:13Z johnnyw $
|
||||
*
|
||||
* @author Kirthika Parameswaran <kirthika@cs.wustl.edu>
|
||||
*/
|
||||
@@ -23,9 +23,7 @@
|
||||
|
||||
#include "ace/Global_Macros.h"
|
||||
#include "ace/Cleanup_Strategies_T.h"
|
||||
|
||||
// For linkers that cant grok long names.
|
||||
#define ACE_Pair_Caching_Utility APUTIL
|
||||
#include "ace/Copy_Disabled.h"
|
||||
|
||||
ACE_BEGIN_VERSIONED_NAMESPACE_DECL
|
||||
|
||||
@@ -44,7 +42,7 @@ ACE_BEGIN_VERSIONED_NAMESPACE_DECL
|
||||
* entries to be cleaned up will be delegated.
|
||||
*/
|
||||
template <class KEY, class VALUE, class CONTAINER, class ITERATOR, class ATTRIBUTES>
|
||||
class ACE_Pair_Caching_Utility
|
||||
class ACE_Pair_Caching_Utility : private ACE_Copy_Disabled
|
||||
{
|
||||
public:
|
||||
|
||||
@@ -52,7 +50,7 @@ public:
|
||||
|
||||
/// Constructor.
|
||||
ACE_Pair_Caching_Utility (ACE_Cleanup_Strategy<KEY, VALUE, CONTAINER> *cleanup_strategy = 0,
|
||||
int delete_cleanup_strategy = 0);
|
||||
bool delete_cleanup_strategy = false);
|
||||
|
||||
/// Destructor.
|
||||
~ACE_Pair_Caching_Utility (void);
|
||||
@@ -61,8 +59,7 @@ public:
|
||||
* Purge entries from the @a container. The Cleanup_Strategy will do the
|
||||
* actual job of cleanup once the entries to be cleaned up are decided.
|
||||
*/
|
||||
int clear_cache (CONTAINER &container,
|
||||
double purge_percent);
|
||||
int clear_cache (CONTAINER &container, double purge_percent);
|
||||
|
||||
protected:
|
||||
|
||||
@@ -76,15 +73,9 @@ protected:
|
||||
CLEANUP_STRATEGY *cleanup_strategy_;
|
||||
|
||||
/// Whether the cleanup_strategy should be destroyed or not.
|
||||
int delete_cleanup_strategy_;
|
||||
|
||||
ACE_UNIMPLEMENTED_FUNC (void operator= (const ACE_Pair_Caching_Utility<KEY,VALUE,CONTAINER,ITERATOR,ATTRIBUTES> &))
|
||||
ACE_UNIMPLEMENTED_FUNC (ACE_Pair_Caching_Utility (const ACE_Pair_Caching_Utility<KEY,VALUE,CONTAINER,ITERATOR,ATTRIBUTES> &))
|
||||
bool delete_cleanup_strategy_;
|
||||
};
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
#define ACE_Recyclable_Handler_Caching_Utility ARHUTIL
|
||||
|
||||
/**
|
||||
* @class ACE_Recyclable_Handler_Caching_Utility
|
||||
*
|
||||
@@ -100,7 +91,7 @@ protected:
|
||||
* be cleaned up will be delegated.
|
||||
*/
|
||||
template <class KEY, class VALUE, class CONTAINER, class ITERATOR, class ATTRIBUTES>
|
||||
class ACE_Recyclable_Handler_Caching_Utility
|
||||
class ACE_Recyclable_Handler_Caching_Utility : private ACE_Copy_Disabled
|
||||
{
|
||||
|
||||
public:
|
||||
@@ -110,7 +101,7 @@ public:
|
||||
|
||||
/// Constructor.
|
||||
ACE_Recyclable_Handler_Caching_Utility (ACE_Cleanup_Strategy<KEY, VALUE, CONTAINER> *cleanup_strategy = 0,
|
||||
int delete_cleanup_strategy = 0);
|
||||
bool delete_cleanup_strategy = false);
|
||||
|
||||
/// Destructor.
|
||||
~ACE_Recyclable_Handler_Caching_Utility (void);
|
||||
@@ -134,16 +125,9 @@ protected:
|
||||
CLEANUP_STRATEGY_BASE *cleanup_strategy_;
|
||||
|
||||
/// Whether the cleanup_strategy should be destroyed or not.
|
||||
int delete_cleanup_strategy_;
|
||||
|
||||
private:
|
||||
ACE_UNIMPLEMENTED_FUNC (void operator= (const ACE_Recyclable_Handler_Caching_Utility<KEY,VALUE,CONTAINER,ITERATOR,ATTRIBUTES> &))
|
||||
ACE_UNIMPLEMENTED_FUNC (ACE_Recyclable_Handler_Caching_Utility (const ACE_Recyclable_Handler_Caching_Utility<KEY,VALUE,CONTAINER,ITERATOR,ATTRIBUTES> &))
|
||||
bool delete_cleanup_strategy_;
|
||||
};
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
#define ACE_Refcounted_Recyclable_Handler_Caching_Utility ARRHUTIL
|
||||
|
||||
/**
|
||||
* @class ACE_Refcounted_Recyclable_Handler_Caching_Utility
|
||||
*
|
||||
@@ -160,17 +144,15 @@ private:
|
||||
* delegated.
|
||||
*/
|
||||
template <class KEY, class VALUE, class CONTAINER, class ITERATOR, class ATTRIBUTES>
|
||||
class ACE_Refcounted_Recyclable_Handler_Caching_Utility
|
||||
class ACE_Refcounted_Recyclable_Handler_Caching_Utility : private ACE_Copy_Disabled
|
||||
{
|
||||
|
||||
public:
|
||||
|
||||
typedef ACE_Refcounted_Recyclable_Handler_Cleanup_Strategy<KEY, VALUE, CONTAINER> CLEANUP_STRATEGY;
|
||||
typedef ACE_Cleanup_Strategy<KEY, VALUE, CONTAINER> CLEANUP_STRATEGY_BASE;
|
||||
|
||||
/// Constructor.
|
||||
ACE_Refcounted_Recyclable_Handler_Caching_Utility (ACE_Cleanup_Strategy<KEY, VALUE, CONTAINER> *cleanup_strategy = 0,
|
||||
int delete_cleanup_strategy = 0);
|
||||
bool delete_cleanup_strategy = false);
|
||||
|
||||
/// Destructor.
|
||||
~ACE_Refcounted_Recyclable_Handler_Caching_Utility (void);
|
||||
@@ -194,7 +176,7 @@ protected:
|
||||
CLEANUP_STRATEGY_BASE *cleanup_strategy_;
|
||||
|
||||
/// Whether the cleanup_strategy should be destroyed or not.
|
||||
int delete_cleanup_strategy_;
|
||||
bool delete_cleanup_strategy_;
|
||||
|
||||
/**
|
||||
* This figure denotes the number of entries are there in the
|
||||
@@ -202,14 +184,8 @@ protected:
|
||||
* not have been unbound from the container.
|
||||
*/
|
||||
size_t marked_as_closed_entries_;
|
||||
|
||||
private:
|
||||
ACE_UNIMPLEMENTED_FUNC (void operator= (const ACE_Refcounted_Recyclable_Handler_Caching_Utility<KEY,VALUE,CONTAINER,ITERATOR,ATTRIBUTES> &))
|
||||
ACE_UNIMPLEMENTED_FUNC (ACE_Refcounted_Recyclable_Handler_Caching_Utility (const ACE_Refcounted_Recyclable_Handler_Caching_Utility<KEY,VALUE,CONTAINER,ITERATOR,ATTRIBUTES> &))
|
||||
};
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
/**
|
||||
* @class ACE_Handler_Caching_Utility
|
||||
*
|
||||
@@ -225,7 +201,7 @@ private:
|
||||
* class to which the entries to be cleaned up will be delegated.
|
||||
*/
|
||||
template <class KEY, class VALUE, class CONTAINER, class ITERATOR, class ATTRIBUTES>
|
||||
class ACE_Handler_Caching_Utility
|
||||
class ACE_Handler_Caching_Utility : private ACE_Copy_Disabled
|
||||
{
|
||||
public:
|
||||
|
||||
@@ -234,7 +210,7 @@ public:
|
||||
|
||||
/// Constructor.
|
||||
ACE_Handler_Caching_Utility (ACE_Cleanup_Strategy<KEY, VALUE, CONTAINER> *cleanup_strategy = 0,
|
||||
int delete_cleanup_strategy = 0);
|
||||
bool delete_cleanup_strategy = false);
|
||||
|
||||
/// Destructor.
|
||||
~ACE_Handler_Caching_Utility (void);
|
||||
@@ -264,15 +240,9 @@ protected:
|
||||
CLEANUP_STRATEGY_BASE *cleanup_strategy_;
|
||||
|
||||
/// Whether the cleanup_strategy should be destroyed or not.
|
||||
int delete_cleanup_strategy_;
|
||||
|
||||
private:
|
||||
ACE_UNIMPLEMENTED_FUNC (void operator= (const ACE_Handler_Caching_Utility<KEY,VALUE,CONTAINER,ITERATOR,ATTRIBUTES> &))
|
||||
ACE_UNIMPLEMENTED_FUNC (ACE_Handler_Caching_Utility (const ACE_Handler_Caching_Utility<KEY,VALUE,CONTAINER,ITERATOR,ATTRIBUTES> &))
|
||||
bool delete_cleanup_strategy_;
|
||||
};
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
#define ACE_Null_Caching_Utility ANUTIL
|
||||
/**
|
||||
* @class ACE_Null_Caching_Utility
|
||||
*
|
||||
@@ -286,7 +256,7 @@ private:
|
||||
* be cleaned up will be delegated.
|
||||
*/
|
||||
template <class KEY, class VALUE, class CONTAINER, class ITERATOR, class ATTRIBUTES>
|
||||
class ACE_Null_Caching_Utility
|
||||
class ACE_Null_Caching_Utility : private ACE_Copy_Disabled
|
||||
{
|
||||
public:
|
||||
|
||||
@@ -295,7 +265,7 @@ public:
|
||||
|
||||
/// Constructor.
|
||||
ACE_Null_Caching_Utility (ACE_Cleanup_Strategy<KEY, VALUE, CONTAINER> *cleanup_strategy = 0,
|
||||
int delete_cleanup_strategy = 0);
|
||||
bool delete_cleanup_strategy = false);
|
||||
|
||||
/// Destructor.
|
||||
~ACE_Null_Caching_Utility (void);
|
||||
@@ -325,11 +295,7 @@ protected:
|
||||
CLEANUP_STRATEGY_BASE *cleanup_strategy_;
|
||||
|
||||
/// Whether the cleanup_strategy should be destroyed or not.
|
||||
int delete_cleanup_strategy_;
|
||||
|
||||
private:
|
||||
ACE_UNIMPLEMENTED_FUNC (void operator= (const ACE_Null_Caching_Utility<KEY,VALUE,CONTAINER,ITERATOR,ATTRIBUTES> &))
|
||||
ACE_UNIMPLEMENTED_FUNC (ACE_Null_Caching_Utility (const ACE_Null_Caching_Utility<KEY,VALUE,CONTAINER,ITERATOR,ATTRIBUTES> &))
|
||||
bool delete_cleanup_strategy_;
|
||||
};
|
||||
|
||||
ACE_END_VERSIONED_NAMESPACE_DECL
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
// $Id: Capabilities.cpp 91287 2010-08-05 10:30:49Z johnnyw $
|
||||
|
||||
#include "ace/Capabilities.h"
|
||||
#include "ace/OS_NS_ctype.h"
|
||||
#include "ace/OS_Memory.h"
|
||||
@@ -9,11 +11,6 @@
|
||||
|
||||
#include "ace/OS_NS_stdio.h"
|
||||
|
||||
ACE_RCSID (ace,
|
||||
Capabilities,
|
||||
"$Id: Capabilities.cpp 80826 2008-03-04 14:51:23Z wotte $")
|
||||
|
||||
|
||||
#define ACE_ESC ((ACE_TCHAR)0x1b)
|
||||
|
||||
ACE_BEGIN_VERSIONED_NAMESPACE_DECL
|
||||
|
||||
@@ -1,11 +1,7 @@
|
||||
// $Id: Cleanup.cpp 84201 2009-01-20 06:26:02Z johnnyw $
|
||||
// $Id: Cleanup.cpp 91368 2010-08-16 13:03:34Z mhengstmengel $
|
||||
|
||||
#include "ace/Cleanup.h"
|
||||
|
||||
ACE_RCSID (ace,
|
||||
Cleanup,
|
||||
"$Id: Cleanup.cpp 84201 2009-01-20 06:26:02Z johnnyw $")
|
||||
|
||||
#if !defined (ACE_HAS_INLINED_OSCALLS)
|
||||
# include "ace/Cleanup.inl"
|
||||
#endif /* ACE_HAS_INLINED_OSCALLS */
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
//$Id: Cleanup_Strategies_T.cpp 80826 2008-03-04 14:51:23Z wotte $
|
||||
//$Id: Cleanup_Strategies_T.cpp 92097 2010-09-30 05:41:49Z msmit $
|
||||
|
||||
#ifndef ACE_CLEANUP_STRATEGIES_T_CPP
|
||||
#define ACE_CLEANUP_STRATEGIES_T_CPP
|
||||
@@ -39,9 +39,9 @@ ACE_Recyclable_Handler_Cleanup_Strategy<KEY, VALUE, CONTAINER>::cleanup (
|
||||
if (container.unbind (*key, value) == -1)
|
||||
return -1;
|
||||
|
||||
value.first ()->recycler (0, 0);
|
||||
value.first->recycler (0, 0);
|
||||
|
||||
value.first ()->close ();
|
||||
value.first->close ();
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -1,12 +1,10 @@
|
||||
// $Id: Codecs.cpp 91813 2010-09-17 07:52:52Z johnnyw $
|
||||
|
||||
#include "ace/Codecs.h"
|
||||
#include "ace/Log_Msg.h"
|
||||
#include "ace/OS_Memory.h"
|
||||
#include "ace/OS_NS_ctype.h"
|
||||
|
||||
ACE_RCSID (ace,
|
||||
Codecs,
|
||||
"$Id: Codecs.cpp 80826 2008-03-04 14:51:23Z wotte $")
|
||||
|
||||
namespace
|
||||
{
|
||||
// Just in case ...
|
||||
@@ -71,7 +69,7 @@ ACE_Base64::encode (const ACE_Byte* input,
|
||||
result[pos++] = alphabet[bits & 0x3f];
|
||||
cols += 4;
|
||||
if (cols == max_columns) {
|
||||
if (is_chunked)
|
||||
if (is_chunked)
|
||||
result[pos++] = '\n';
|
||||
cols = 0;
|
||||
}
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
/**
|
||||
* @file Codeset_IBM1047.cpp
|
||||
*
|
||||
* $Id: Codeset_IBM1047.cpp 81661 2008-05-09 12:05:34Z johnnyw $
|
||||
* $Id: Codeset_IBM1047.cpp 91286 2010-08-05 09:04:31Z johnnyw $
|
||||
*
|
||||
* Defines the arrays required to convert between ISO8859 (aka
|
||||
* Latin/1) and IBM1047 (aka EBCDIC).
|
||||
@@ -18,10 +18,6 @@
|
||||
|
||||
#if defined (ACE_HAS_EBCDIC)
|
||||
|
||||
ACE_RCSID (ace,
|
||||
Codeset_IBM1047,
|
||||
"$Id: Codeset_IBM1047.cpp 81661 2008-05-09 12:05:34Z johnnyw $")
|
||||
|
||||
#include "ace/OS_Memory.h"
|
||||
#include "ace/OS_NS_string.h"
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
/**
|
||||
* @file Codeset_Registry.cpp
|
||||
*
|
||||
* $Id: Codeset_Registry.cpp 80826 2008-03-04 14:51:23Z wotte $
|
||||
* $Id: Codeset_Registry.cpp 91286 2010-08-05 09:04:31Z johnnyw $
|
||||
*
|
||||
* emulated codset regstry functions
|
||||
*
|
||||
@@ -15,16 +15,12 @@
|
||||
#include "ace/OS_Memory.h"
|
||||
#include "ace/OS_NS_string.h"
|
||||
|
||||
// $Id: Codeset_Registry.cpp 80826 2008-03-04 14:51:23Z wotte $
|
||||
// $Id: Codeset_Registry.cpp 91286 2010-08-05 09:04:31Z johnnyw $
|
||||
|
||||
#if !defined (__ACE_INLINE__)
|
||||
#include "ace/Codeset_Registry.inl"
|
||||
#endif /* __ACE_INLINE__ */
|
||||
|
||||
ACE_RCSID (ace,
|
||||
Codeset_Registry,
|
||||
"$Id: Codeset_Registry.cpp 80826 2008-03-04 14:51:23Z wotte $")
|
||||
|
||||
ACE_BEGIN_VERSIONED_NAMESPACE_DECL
|
||||
|
||||
int
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
/**
|
||||
* @file Condition_Thread_Mutex.cpp
|
||||
*
|
||||
* $Id: Condition_Thread_Mutex.cpp 80826 2008-03-04 14:51:23Z wotte $
|
||||
* $Id: Condition_Thread_Mutex.cpp 91286 2010-08-05 09:04:31Z johnnyw $
|
||||
*
|
||||
* Originally in Synch.cpp
|
||||
*
|
||||
@@ -19,7 +19,7 @@
|
||||
|
||||
#include "ace/Log_Msg.h"
|
||||
|
||||
ACE_RCSID(ace, Condition_Thread_Mutex, "$Id: Condition_Thread_Mutex.cpp 80826 2008-03-04 14:51:23Z wotte $")
|
||||
|
||||
|
||||
ACE_BEGIN_VERSIONED_NAMESPACE_DECL
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
/**
|
||||
* @file Condition_Thread_Mutex.h
|
||||
*
|
||||
* $Id: Condition_Thread_Mutex.h 80826 2008-03-04 14:51:23Z wotte $
|
||||
* $Id: Condition_Thread_Mutex.h 92069 2010-09-28 11:38:59Z johnnyw $
|
||||
*
|
||||
* Moved from Synch.h.
|
||||
*
|
||||
@@ -154,30 +154,6 @@ private:
|
||||
ACE_Condition_Thread_Mutex (const ACE_Condition_Thread_Mutex &);
|
||||
};
|
||||
|
||||
#if 0
|
||||
// The following class is commented out since there doesn't
|
||||
// appear to be a portable and robust means of implementing this
|
||||
// functionality across platforms. If you know of a portable and
|
||||
// robust way to implement this functionality please let us know.
|
||||
|
||||
/**
|
||||
* @class ACE_Process_Condition
|
||||
*
|
||||
* @brief ACE_Condition variable wrapper that works across processes.
|
||||
*/
|
||||
class ACE_Export ACE_Process_Condition
|
||||
{
|
||||
public:
|
||||
ACE_Process_Condition (MUTEX &m, const ACE_TCHAR *name = 0, void *arg = 0);
|
||||
|
||||
/// Dump the state of an object.
|
||||
void dump (void) const;
|
||||
|
||||
// ACE_ALLOC_HOOK_DECLARE;
|
||||
// Declare the dynamic allocation hooks.
|
||||
};
|
||||
#endif /* 0 */
|
||||
|
||||
ACE_END_VERSIONED_NAMESPACE_DECL
|
||||
|
||||
#if defined (__ACE_INLINE__)
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
// -*- C++ -*-
|
||||
//
|
||||
// $Id: Condition_Thread_Mutex.inl 80826 2008-03-04 14:51:23Z wotte $
|
||||
// $Id: Condition_Thread_Mutex.inl 92069 2010-09-28 11:38:59Z johnnyw $
|
||||
|
||||
ACE_BEGIN_VERSIONED_NAMESPACE_DECL
|
||||
|
||||
@@ -50,25 +50,4 @@ ACE_Condition_Thread_Mutex::mutex (void)
|
||||
return this->mutex_;
|
||||
}
|
||||
|
||||
#if 0
|
||||
template <class MUTEX> void
|
||||
ACE_Process_Condition<MUTEX>::dump (void) const
|
||||
{
|
||||
#if defined (ACE_HAS_DUMP)
|
||||
// ACE_TRACE ("ACE_Process_Condition<MUTEX>::dump");
|
||||
|
||||
ACE_Condition<MUTEX>::dump ();
|
||||
#endif /* ACE_HAS_DUMP */
|
||||
}
|
||||
|
||||
template <class MUTEX>
|
||||
ACE_Process_Condition<MUTEX>::ACE_Process_Condition (MUTEX &m,
|
||||
const ACE_TCHAR *name,
|
||||
void *arg)
|
||||
: ACE_Condition<MUTEX> (m, USYNC_PROCESS, name, arg)
|
||||
{
|
||||
// ACE_TRACE ("ACE_Process_Condition<MUTEX>::ACE_Process_Condition");
|
||||
}
|
||||
#endif /* 0 */
|
||||
|
||||
ACE_END_VERSIONED_NAMESPACE_DECL
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id: Configuration.cpp 86348 2009-08-04 14:45:29Z shuston $
|
||||
// $Id: Configuration.cpp 91688 2010-09-09 11:21:50Z johnnyw $
|
||||
#include "ace/Configuration.h"
|
||||
#include "ace/Auto_Ptr.h"
|
||||
#include "ace/SString.h"
|
||||
@@ -6,10 +6,6 @@
|
||||
#include "ace/OS_NS_strings.h"
|
||||
#include "ace/Tokenizer_T.h"
|
||||
|
||||
// Can remove this when import_config and export_config are removed from
|
||||
// ACE_Configuration. They're deprecated at ACE 5.2.
|
||||
#include "ace/Configuration_Import_Export.h"
|
||||
|
||||
#if !defined (ACE_LACKS_ACCESS)
|
||||
# include "ace/OS_NS_unistd.h"
|
||||
#endif /* ACE_LACKS_ACCESS */
|
||||
@@ -135,22 +131,6 @@ ACE_Configuration::expand_path (const ACE_Configuration_Section_Key& key,
|
||||
|
||||
}
|
||||
|
||||
// import_config and export_config are here for backward compatibility,
|
||||
// and have been deprecated.
|
||||
int
|
||||
ACE_Configuration::export_config (const ACE_TCHAR* filename)
|
||||
{
|
||||
ACE_Registry_ImpExp exporter (*this);
|
||||
return exporter.export_config (filename);
|
||||
}
|
||||
|
||||
int
|
||||
ACE_Configuration::import_config (const ACE_TCHAR* filename)
|
||||
{
|
||||
ACE_Registry_ImpExp importer (*this);
|
||||
return importer.import_config (filename);
|
||||
}
|
||||
|
||||
int
|
||||
ACE_Configuration::validate_name (const ACE_TCHAR* name, int allow_path)
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
/**
|
||||
* @file Configuration.h
|
||||
*
|
||||
* $Id: Configuration.h 86348 2009-08-04 14:45:29Z shuston $
|
||||
* $Id: Configuration.h 91688 2010-09-09 11:21:50Z johnnyw $
|
||||
*
|
||||
* @author Chris Hafey <chafey@stentor.com>
|
||||
*
|
||||
@@ -359,22 +359,6 @@ public:
|
||||
ACE_Configuration_Section_Key& key_out,
|
||||
int create = 1);
|
||||
|
||||
/**
|
||||
* @deprecated Exports the configuration database to filename.
|
||||
* If @a filename is already present, it is overwritten. This function is
|
||||
* deprecated and will be removed in a future version of ACE. Please use
|
||||
* either ACE_Registry_ImpExp or ACE_Ini_ImpExp instead.
|
||||
*/
|
||||
int export_config (const ACE_TCHAR* filename);
|
||||
|
||||
/**
|
||||
* @deprecated Imports the configuration database from filename. Any
|
||||
* existing data is not removed. This function is deprecated and will be
|
||||
* removed in a future version of ACE. Please use ACE_Registry_ImpExp
|
||||
* or ACE_Ini_ImpExp instead.
|
||||
*/
|
||||
int import_config (const ACE_TCHAR* filename);
|
||||
|
||||
/**
|
||||
* Determine if the contents of this object is the same as the
|
||||
* contents of the object on the right hand side.
|
||||
@@ -619,9 +603,6 @@ typedef ACE_Hash_Map_Manager_Ex<ACE_Configuration_ExtId,
|
||||
ACE_Null_Mutex>
|
||||
SUBSECTION_HASH;
|
||||
|
||||
/// @deprecated Deprecated typedef. Use the SUBSECTION_HASH::ENTRY trait instead.
|
||||
typedef SUBSECTION_HASH::ENTRY SUBSECTION_ENTRY;
|
||||
|
||||
/**
|
||||
* @class ACE_Configuration_Value_IntId
|
||||
*
|
||||
|
||||
@@ -1,9 +1,7 @@
|
||||
// $Id: Connection_Recycling_Strategy.cpp 91287 2010-08-05 10:30:49Z johnnyw $
|
||||
|
||||
#include "ace/Connection_Recycling_Strategy.h"
|
||||
|
||||
|
||||
ACE_RCSID(ace, Connection_Recycling_Strategy, "$Id: Connection_Recycling_Strategy.cpp 80826 2008-03-04 14:51:23Z wotte $")
|
||||
|
||||
|
||||
ACE_BEGIN_VERSIONED_NAMESPACE_DECL
|
||||
|
||||
ACE_Connection_Recycling_Strategy::~ACE_Connection_Recycling_Strategy (void)
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id: Connector.cpp 89510 2010-03-17 12:21:14Z vzykov $
|
||||
// $Id: Connector.cpp 91527 2010-08-27 15:03:31Z shuston $
|
||||
|
||||
#ifndef ACE_CONNECTOR_CPP
|
||||
#define ACE_CONNECTOR_CPP
|
||||
@@ -121,9 +121,9 @@ ACE_NonBlocking_Connect_Handler<SVC_HANDLER>::close (SVC_HANDLER *&sh)
|
||||
return false;
|
||||
|
||||
// Remove from Reactor.
|
||||
if (this->reactor ()->remove_handler (
|
||||
if (-1 == this->reactor ()->remove_handler (
|
||||
h,
|
||||
ACE_Event_Handler::ALL_EVENTS_MASK) == -1)
|
||||
ACE_Event_Handler::ALL_EVENTS_MASK | ACE_Event_Handler::DONT_CALL))
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -173,6 +173,20 @@ ACE_NonBlocking_Connect_Handler<SVC_HANDLER>::handle_input (ACE_HANDLE)
|
||||
return retval;
|
||||
}
|
||||
|
||||
template <class SVC_HANDLER> int
|
||||
ACE_NonBlocking_Connect_Handler<SVC_HANDLER>::handle_close (ACE_HANDLE handle,
|
||||
ACE_Reactor_Mask m)
|
||||
{
|
||||
// epoll on Linux will, at least sometimes, return EPOLLERR when a connect
|
||||
// fails, triggering a total removal from the reactor. This is different from
|
||||
// select()-based systems which select the fd for read on a connect failure.
|
||||
// So just call handle_input() to rejoin common handling for a failed
|
||||
// connect.
|
||||
if (m == ACE_Event_Handler::ALL_EVENTS_MASK)
|
||||
return this->handle_input (handle);
|
||||
return -1;
|
||||
}
|
||||
|
||||
template <class SVC_HANDLER> int
|
||||
ACE_NonBlocking_Connect_Handler<SVC_HANDLER>::handle_output (ACE_HANDLE handle)
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
/**
|
||||
* @file Connector.h
|
||||
*
|
||||
* $Id: Connector.h 91058 2010-07-12 08:20:09Z johnnyw $
|
||||
* $Id: Connector.h 91527 2010-08-27 15:03:31Z shuston $
|
||||
*
|
||||
* @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
|
||||
*/
|
||||
@@ -102,6 +102,9 @@ public:
|
||||
/// Called by ACE_Reactor when asynchronous connections fail.
|
||||
virtual int handle_input (ACE_HANDLE);
|
||||
|
||||
/// Called by ACE_Dev_Poll_Reactor when asynchronous connections fail.
|
||||
virtual int handle_close (ACE_HANDLE, ACE_Reactor_Mask);
|
||||
|
||||
/// Called by ACE_Reactor when asynchronous connections succeed.
|
||||
virtual int handle_output (ACE_HANDLE);
|
||||
|
||||
|
||||
@@ -1,11 +1,7 @@
|
||||
// $Id: Containers.cpp 80826 2008-03-04 14:51:23Z wotte $
|
||||
// $Id: Containers.cpp 91286 2010-08-05 09:04:31Z johnnyw $
|
||||
|
||||
#include "ace/Containers.h"
|
||||
|
||||
ACE_RCSID (ace,
|
||||
Containers,
|
||||
"$Id: Containers.cpp 80826 2008-03-04 14:51:23Z wotte $")
|
||||
|
||||
#if !defined (__ACE_INLINE__)
|
||||
#include "ace/Containers.inl"
|
||||
#endif /* __ACE_INLINE__ */
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id: Containers_T.cpp 82588 2008-08-11 13:37:41Z johnnyw $
|
||||
// $Id: Containers_T.cpp 92069 2010-09-28 11:38:59Z johnnyw $
|
||||
|
||||
#ifndef ACE_CONTAINERS_T_CPP
|
||||
#define ACE_CONTAINERS_T_CPP
|
||||
@@ -796,35 +796,6 @@ ACE_Double_Linked_List<T>::dump (void) const
|
||||
#endif /* ACE_HAS_DUMP */
|
||||
}
|
||||
|
||||
#if 0
|
||||
template <class T> T *
|
||||
ACE_Double_Linked_List<T>::find (const T &item)
|
||||
{
|
||||
for (ACE_Double_Linked_List_Iterator<T> iter (*this);
|
||||
!iter.done ();
|
||||
iter.advance ())
|
||||
{
|
||||
T *temp = iter.next ();
|
||||
|
||||
if (*temp == item)
|
||||
return temp;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
template <class T> int
|
||||
ACE_Double_Linked_List<T>::remove (const T &item)
|
||||
{
|
||||
T *temp = this->find (item);
|
||||
|
||||
if (temp != 0)
|
||||
return this->remove (temp);
|
||||
else
|
||||
return -1;
|
||||
}
|
||||
#endif /* 0 */
|
||||
|
||||
template <class T> int
|
||||
ACE_Double_Linked_List<T>::remove (T *n)
|
||||
{
|
||||
@@ -1621,7 +1592,7 @@ template <class T> int
|
||||
ACE_Ordered_MultiSet<T>::find (const T &item,
|
||||
ITERATOR &iter) const
|
||||
{
|
||||
// search an occurance of item, using iterator's current position as a hint
|
||||
// search an occurrence of item, using iterator's current position as a hint
|
||||
ACE_DNode<T> *node = iter.current_;
|
||||
int const result = locate (item, node, node);
|
||||
|
||||
@@ -1779,7 +1750,7 @@ ACE_Ordered_MultiSet<T>::locate (const T &item, ACE_DNode<T> *start_position,
|
||||
return 0;
|
||||
}
|
||||
|
||||
// Looks for first occurance of <item> in the ordered set, using the
|
||||
// Looks for first occurrence of <item> in the ordered set, using the
|
||||
// passed starting position as a hint: if there is such an instance,
|
||||
// it updates the new_position pointer to point to one such node and
|
||||
// returns 0; if there is no such node, then if there is a node before
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
/**
|
||||
* @file Containers_T.h
|
||||
*
|
||||
* $Id: Containers_T.h 88975 2010-02-12 19:19:38Z johnnyw $
|
||||
* $Id: Containers_T.h 91995 2010-09-24 12:45:24Z johnnyw $
|
||||
*
|
||||
* @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
|
||||
*/
|
||||
@@ -1920,7 +1920,7 @@ private:
|
||||
ACE_DNode<T> **new_position);
|
||||
|
||||
/**
|
||||
* Looks for first occurance of @a item in the ordered set, using the
|
||||
* Looks for first occurrence of @a item in the ordered set, using the
|
||||
* passed starting position as a hint: if there is such an instance, it
|
||||
* updates the new_position pointer to point to this node and returns 0;
|
||||
* if there is no such node, then if there is a node before where the
|
||||
@@ -1994,7 +1994,7 @@ public:
|
||||
// Define a "trait"
|
||||
typedef T TYPE;
|
||||
typedef ACE_Array_Iterator<T> ITERATOR;
|
||||
|
||||
|
||||
/// Dynamically create an uninitialized array.
|
||||
/**
|
||||
* Initialize an empty array of the specified size using the provided
|
||||
|
||||
@@ -1,19 +1,13 @@
|
||||
/**
|
||||
* @file Copy_Disabled.cpp
|
||||
*
|
||||
* $Id: Copy_Disabled.cpp 80826 2008-03-04 14:51:23Z wotte $
|
||||
* $Id: Copy_Disabled.cpp 91286 2010-08-05 09:04:31Z johnnyw $
|
||||
*
|
||||
* @author Carlos O'Ryan <coryan@uci.edu>
|
||||
*/
|
||||
|
||||
#include "ace/Copy_Disabled.h"
|
||||
|
||||
|
||||
ACE_RCSID (ace,
|
||||
Copy_Disabled,
|
||||
"$Id: Copy_Disabled.cpp 80826 2008-03-04 14:51:23Z wotte $")
|
||||
|
||||
|
||||
ACE_BEGIN_VERSIONED_NAMESPACE_DECL
|
||||
|
||||
ACE_Copy_Disabled::ACE_Copy_Disabled (void)
|
||||
|
||||
@@ -1,10 +1,8 @@
|
||||
// $Id: Countdown_Time.cpp 91287 2010-08-05 10:30:49Z johnnyw $
|
||||
|
||||
#include "ace/Countdown_Time.h"
|
||||
#include "ace/OS_NS_sys_time.h"
|
||||
|
||||
ACE_RCSID (ace,
|
||||
Countdown_Time,
|
||||
"$Id: Countdown_Time.cpp 85382 2009-05-19 06:52:56Z johnnyw $")
|
||||
|
||||
#if !defined (__ACE_INLINE__)
|
||||
#include "ace/Countdown_Time.inl"
|
||||
#endif /* __ACE_INLINE__ */
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id: DEV.cpp 80826 2008-03-04 14:51:23Z wotte $
|
||||
// $Id: DEV.cpp 91286 2010-08-05 09:04:31Z johnnyw $
|
||||
|
||||
#include "ace/DEV.h"
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
#include "ace/DEV.inl"
|
||||
#endif /* __ACE_INLINE__ */
|
||||
|
||||
ACE_RCSID(ace, DEV, "$Id: DEV.cpp 80826 2008-03-04 14:51:23Z wotte $")
|
||||
|
||||
|
||||
ACE_BEGIN_VERSIONED_NAMESPACE_DECL
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
/**
|
||||
* @file DEV.h
|
||||
*
|
||||
* $Id: DEV.h 80826 2008-03-04 14:51:23Z wotte $
|
||||
* $Id: DEV.h 91685 2010-09-09 09:35:14Z johnnyw $
|
||||
*
|
||||
* @author Gerhard Lenzer
|
||||
*/
|
||||
@@ -23,19 +23,6 @@
|
||||
|
||||
#include "ace/DEV_Addr.h"
|
||||
|
||||
// The following is necessary since many C++ compilers don't support
|
||||
// typedef'd types inside of classes used as formal template
|
||||
// arguments... ;-(. Luckily, using the C++ preprocessor I can hide
|
||||
// most of this nastiness!
|
||||
|
||||
#if defined (ACE_HAS_TEMPLATE_TYPEDEFS)
|
||||
#define ACE_DEV_CONNECTOR ACE_DEV_Connector
|
||||
#define ACE_DEV_STREAM ACE_DEV_IO
|
||||
#else /* TEMPLATES are broken (must be a cfront-based compiler...) */
|
||||
#define ACE_DEV_CONNECTOR ACE_DEV_Connector, ACE_DEV_Addr
|
||||
#define ACE_DEV_STREAM ACE_DEV_IO, ACE_DEV_Addr
|
||||
#endif /* ACE_TEMPLATE_TYPEDEFS */
|
||||
|
||||
ACE_BEGIN_VERSIONED_NAMESPACE_DECL
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id: DEV_Addr.cpp 80826 2008-03-04 14:51:23Z wotte $
|
||||
// $Id: DEV_Addr.cpp 91368 2010-08-16 13:03:34Z mhengstmengel $
|
||||
|
||||
#include "ace/DEV_Addr.h"
|
||||
#if !defined (__ACE_INLINE__)
|
||||
@@ -8,10 +8,6 @@
|
||||
#include "ace/Log_Msg.h"
|
||||
#include "ace/OS_NS_string.h"
|
||||
|
||||
ACE_RCSID (ace,
|
||||
DEV_Addr,
|
||||
"$Id: DEV_Addr.cpp 80826 2008-03-04 14:51:23Z wotte $")
|
||||
|
||||
ACE_BEGIN_VERSIONED_NAMESPACE_DECL
|
||||
|
||||
ACE_ALLOC_HOOK_DEFINE(ACE_DEV_Addr)
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id: DEV_Connector.cpp 80826 2008-03-04 14:51:23Z wotte $
|
||||
// $Id: DEV_Connector.cpp 91286 2010-08-05 09:04:31Z johnnyw $
|
||||
|
||||
#include "ace/DEV_Connector.h"
|
||||
|
||||
@@ -8,12 +8,6 @@
|
||||
#include "ace/DEV_Connector.inl"
|
||||
#endif /* __ACE_INLINE__ */
|
||||
|
||||
|
||||
ACE_RCSID (ace,
|
||||
DEV_Connector,
|
||||
"$Id: DEV_Connector.cpp 80826 2008-03-04 14:51:23Z wotte $")
|
||||
|
||||
|
||||
ACE_BEGIN_VERSIONED_NAMESPACE_DECL
|
||||
|
||||
ACE_ALLOC_HOOK_DEFINE(ACE_DEV_Connector)
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id: DEV_IO.cpp 80826 2008-03-04 14:51:23Z wotte $
|
||||
// $Id: DEV_IO.cpp 91286 2010-08-05 09:04:31Z johnnyw $
|
||||
|
||||
#include "ace/DEV_IO.h"
|
||||
#include "ace/Log_Msg.h"
|
||||
@@ -7,7 +7,7 @@
|
||||
#include "ace/DEV_IO.inl"
|
||||
#endif /* __ACE_INLINE__ */
|
||||
|
||||
ACE_RCSID(ace, DEV_IO, "$Id: DEV_IO.cpp 80826 2008-03-04 14:51:23Z wotte $")
|
||||
|
||||
|
||||
|
||||
ACE_BEGIN_VERSIONED_NAMESPACE_DECL
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id: DLL.cpp 80826 2008-03-04 14:51:23Z wotte $
|
||||
// $Id: DLL.cpp 91286 2010-08-05 09:04:31Z johnnyw $
|
||||
|
||||
#include "ace/DLL.h"
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
|
||||
#include <algorithm>
|
||||
|
||||
ACE_RCSID(ace, DLL, "$Id: DLL.cpp 80826 2008-03-04 14:51:23Z wotte $")
|
||||
|
||||
|
||||
ACE_BEGIN_VERSIONED_NAMESPACE_DECL
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id: DLL_Manager.cpp 90712 2010-06-18 20:01:29Z shuston $
|
||||
// $Id: DLL_Manager.cpp 91286 2010-08-05 09:04:31Z johnnyw $
|
||||
|
||||
#include "ace/DLL_Manager.h"
|
||||
|
||||
@@ -14,13 +14,7 @@
|
||||
#include "ace/OS_NS_dlfcn.h"
|
||||
#include "ace/OS_NS_string.h"
|
||||
|
||||
ACE_RCSID (ace,
|
||||
DLL_Manager,
|
||||
"DLL_Manager.cpp,v 4.23 2003/11/05 23:30:46 shuston Exp")
|
||||
|
||||
/******************************************************************/
|
||||
|
||||
ACE_BEGIN_VERSIONED_NAMESPACE_DECL
|
||||
ACE_BEGIN_VERSIONED_NAMESPACE_DECL
|
||||
|
||||
sig_atomic_t ACE_DLL_Handle::open_called_ = 0;
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
// Date_Time.cpp
|
||||
// $Id: Date_Time.cpp 80826 2008-03-04 14:51:23Z wotte $
|
||||
// $Id: Date_Time.cpp 91286 2010-08-05 09:04:31Z johnnyw $
|
||||
|
||||
#include "ace/Date_Time.h"
|
||||
|
||||
@@ -7,4 +7,4 @@
|
||||
#include "ace/Date_Time.inl"
|
||||
#endif /* __ACE_INLINE__ */
|
||||
|
||||
ACE_RCSID(ace, Date_Time, "$Id: Date_Time.cpp 80826 2008-03-04 14:51:23Z wotte $")
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
/**
|
||||
* @file Default_Constants.h
|
||||
*
|
||||
* $Id: Default_Constants.h 87487 2009-11-12 07:54:39Z johnnyw $
|
||||
* $Id: Default_Constants.h 91688 2010-09-09 11:21:50Z johnnyw $
|
||||
*
|
||||
* @author Douglas C. Schmidt <schmidt@cs.wustl.edu>
|
||||
* @author Jesper S. M|ller<stophph@diku.dk>
|
||||
@@ -556,21 +556,6 @@
|
||||
# define ACE_DEFAULT_GLOBALNAME_A "globalnames"
|
||||
#endif /* ACE_DEFAULT_GLOBALNAME_A */
|
||||
|
||||
// ACE_DEFAULT_NAMESPACE_DIR is for legacy mode apps. A better
|
||||
// way of doing this is something like ACE_Lib_Find::get_temp_dir, since
|
||||
// this directory may not exist
|
||||
#if defined (ACE_LEGACY_MODE)
|
||||
# if defined (ACE_WIN32)
|
||||
# define ACE_DEFAULT_NAMESPACE_DIR_A "C:\\temp"
|
||||
# else /* ACE_WIN32 */
|
||||
# define ACE_DEFAULT_NAMESPACE_DIR_A "/tmp"
|
||||
# endif /* ACE_WIN32 */
|
||||
# if defined (ACE_HAS_WCHAR)
|
||||
# define ACE_DEFAULT_NAMESPACE_DIR_W ACE_TEXT_WIDE(ACE_DEFAULT_NAMESPACE_DIR_A)
|
||||
# endif /* ACE_HAS_WCHAR */
|
||||
# define ACE_DEFAULT_NAMESPACE_DIR ACE_TEXT(ACE_DEFAULT_NAMESPACE_DIR_A)
|
||||
#endif /* ACE_LEGACY_MODE */
|
||||
|
||||
#if defined (ACE_HAS_WCHAR)
|
||||
# define ACE_DEFAULT_LOCALNAME_W ACE_TEXT_WIDE(ACE_DEFAULT_LOCALNAME_A)
|
||||
# define ACE_DEFAULT_GLOBALNAME_W ACE_TEXT_WIDE(ACE_DEFAULT_GLOBALNAME_A)
|
||||
|
||||
@@ -1,14 +1,10 @@
|
||||
// $Id: Dev_Poll_Reactor.cpp 90177 2010-05-19 11:44:22Z vzykov $
|
||||
// $Id: Dev_Poll_Reactor.cpp 92199 2010-10-11 11:58:35Z johnnyw $
|
||||
|
||||
#include "ace/OS_NS_errno.h"
|
||||
#include "ace/Dev_Poll_Reactor.h"
|
||||
#include "ace/Signal.h"
|
||||
#include "ace/Sig_Handler.h"
|
||||
|
||||
ACE_RCSID (ace,
|
||||
Dev_Poll_Reactor,
|
||||
"$Id: Dev_Poll_Reactor.cpp 90177 2010-05-19 11:44:22Z vzykov $")
|
||||
|
||||
#if defined (ACE_HAS_EVENT_POLL) || defined (ACE_HAS_DEV_POLL)
|
||||
|
||||
# include "ace/OS_NS_unistd.h"
|
||||
@@ -53,7 +49,6 @@ ACE_Dev_Poll_Reactor_Notify::ACE_Dev_Poll_Reactor_Notify (void)
|
||||
#if defined (ACE_HAS_REACTOR_NOTIFICATION_QUEUE)
|
||||
, notification_queue_ ()
|
||||
#endif /* ACE_HAS_REACTOR_NOTIFICATION_QUEUE */
|
||||
, dispatching_ (false)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -135,11 +130,11 @@ ACE_Dev_Poll_Reactor_Notify::notify (ACE_Event_Handler *eh,
|
||||
ACE_UNUSED_ARG (timeout);
|
||||
ACE_Dev_Poll_Handler_Guard eh_guard (eh);
|
||||
|
||||
// When using the queue, the push call indicates whether or not a pipe
|
||||
// write is needed. If it's not, don't waste pipe space.
|
||||
int push_result = this->notification_queue_.push_new_notification (buffer);
|
||||
if (-1 == push_result || 1 == push_result)
|
||||
return -1 == push_result ? -1 : 0; // Also decrement eh's reference count
|
||||
// When using the queue, always try to write to the notify pipe. If it
|
||||
// fills up, ignore it safely because the already-written bytes will
|
||||
// eventually cause the notify handler to be dispatched.
|
||||
if (-1 == this->notification_queue_.push_new_notification (buffer))
|
||||
return -1; // Also decrement eh's reference count
|
||||
|
||||
// The notification has been queued, so it will be delivered at some
|
||||
// point (and may have been already); release the refcnt guard.
|
||||
@@ -223,12 +218,20 @@ ACE_Dev_Poll_Reactor_Notify::read_notify_pipe (ACE_HANDLE handle,
|
||||
|
||||
bool more_messages_queued = false;
|
||||
ACE_Notification_Buffer next;
|
||||
int result = notification_queue_.pop_next_notification (buffer,
|
||||
int result = 1;
|
||||
while (result == 1)
|
||||
{
|
||||
result = notification_queue_.pop_next_notification (buffer,
|
||||
more_messages_queued,
|
||||
next);
|
||||
|
||||
if (result <= 0) // Nothing dequeued or error
|
||||
return result;
|
||||
if (result <= 0) // Nothing dequeued or error
|
||||
return result;
|
||||
|
||||
// If it's just a wake-up, toss it and see if there's anything else.
|
||||
if (buffer.eh_ != 0)
|
||||
break;
|
||||
}
|
||||
|
||||
// If there are more messages, ensure there's a byte in the pipe
|
||||
// in case the notification limit stops dequeuing notifies before
|
||||
@@ -272,45 +275,10 @@ ACE_Dev_Poll_Reactor_Notify::read_notify_pipe (ACE_HANDLE handle,
|
||||
|
||||
|
||||
int
|
||||
ACE_Dev_Poll_Reactor_Notify::handle_input (ACE_HANDLE handle)
|
||||
ACE_Dev_Poll_Reactor_Notify::handle_input (ACE_HANDLE /*handle*/)
|
||||
{
|
||||
ACE_TRACE ("ACE_Dev_Poll_Reactor_Notify::handle_input");
|
||||
|
||||
{
|
||||
ACE_MT (ACE_GUARD_RETURN (ACE_SYNCH_MUTEX, mon, this->dispatching_lock_, -1));
|
||||
if (this->dispatching_)
|
||||
return 0;
|
||||
this->dispatching_ = true;
|
||||
}
|
||||
|
||||
int number_dispatched = 0;
|
||||
int result = 0;
|
||||
ACE_Notification_Buffer buffer;
|
||||
|
||||
while ((result = this->read_notify_pipe (handle, buffer)) > 0)
|
||||
{
|
||||
// Dispatch the buffer
|
||||
// NOTE: We count only if we made any dispatches ie. upcalls.
|
||||
if (this->dispatch_notify (buffer) > 0)
|
||||
++number_dispatched;
|
||||
|
||||
// Bail out if we've reached the <notify_threshold_>. Note that
|
||||
// by default <notify_threshold_> is -1, so we'll loop until all
|
||||
// the available notifications have been dispatched.
|
||||
if (number_dispatched == this->max_notify_iterations_)
|
||||
break;
|
||||
}
|
||||
|
||||
if (result == -1)
|
||||
{
|
||||
// Reassign number_dispatched to -1 if things have gone
|
||||
// seriously wrong.
|
||||
number_dispatched = -1;
|
||||
}
|
||||
|
||||
this->dispatching_ = false;
|
||||
|
||||
return number_dispatched;
|
||||
ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT ("SHOULD NOT BE HERE.\n")), -1);
|
||||
}
|
||||
|
||||
ACE_HANDLE
|
||||
@@ -426,6 +394,15 @@ ACE_Dev_Poll_Reactor_Notify::dump (void) const
|
||||
#endif /* ACE_HAS_DUMP */
|
||||
}
|
||||
|
||||
int
|
||||
ACE_Dev_Poll_Reactor_Notify::dequeue_one (ACE_Notification_Buffer &nb)
|
||||
{
|
||||
nb.eh_ = 0;
|
||||
nb.mask_ = 0;
|
||||
return this->read_notify_pipe (this->notify_handle (), nb);
|
||||
}
|
||||
|
||||
|
||||
// -----------------------------------------------------------------
|
||||
|
||||
ACE_Dev_Poll_Reactor::Handler_Repository::Handler_Repository (void)
|
||||
@@ -1020,7 +997,7 @@ ACE_Dev_Poll_Reactor::handle_events (ACE_Time_Value *max_wait_time)
|
||||
//
|
||||
// The destructor of this object will automatically compute how much
|
||||
// time elapsed since this method was called.
|
||||
ACE_MT (ACE_Countdown_Time countdown (max_wait_time));
|
||||
ACE_Countdown_Time countdown (max_wait_time);
|
||||
|
||||
Token_Guard guard (this->token_);
|
||||
int const result = guard.acquire_quietly (max_wait_time);
|
||||
@@ -1309,6 +1286,22 @@ ACE_Dev_Poll_Reactor::dispatch_io_event (Token_Guard &guard)
|
||||
#endif /* ACE_HAS_DEV_POLL */
|
||||
|
||||
int status = 0; // gets callback status, below.
|
||||
|
||||
// Dispatch notifies directly. The notify dispatcher locates a
|
||||
// notification then releases the token prior to dispatching it.
|
||||
// NOTE: If notify_handler_->dispatch_one() returns a fail condition
|
||||
// it has not releases the guard. Else, it has.
|
||||
if (eh == this->notify_handler_)
|
||||
{
|
||||
ACE_Notification_Buffer b;
|
||||
status =
|
||||
dynamic_cast<ACE_Dev_Poll_Reactor_Notify *>(notify_handler_)->dequeue_one (b);
|
||||
if (status == -1)
|
||||
return status;
|
||||
guard.release_token ();
|
||||
return notify_handler_->dispatch_notify (b);
|
||||
}
|
||||
|
||||
{
|
||||
// Modify the reference count in an exception-safe way.
|
||||
// Note that eh could be the notify handler. It's not strictly
|
||||
@@ -1327,9 +1320,6 @@ ACE_Dev_Poll_Reactor::dispatch_io_event (Token_Guard &guard)
|
||||
// back with either 0 or < 0.
|
||||
status = this->upcall (eh, callback, handle);
|
||||
|
||||
if (eh == this->notify_handler_)
|
||||
return status;
|
||||
|
||||
// If the callback returned 0, epoll-based needs to resume the
|
||||
// suspended handler but dev/poll doesn't.
|
||||
// The epoll case is optimized to not acquire the token in order
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
/**
|
||||
* @file Dev_Poll_Reactor.h
|
||||
*
|
||||
* $Id: Dev_Poll_Reactor.h 91066 2010-07-12 11:05:04Z johnnyw $
|
||||
* $Id: Dev_Poll_Reactor.h 91462 2010-08-25 20:29:17Z shuston $
|
||||
*
|
||||
* @c /dev/poll (or Linux @c sys_epoll) based Reactor implementation.
|
||||
*
|
||||
@@ -160,6 +160,14 @@ public:
|
||||
/// Dump the state of an object.
|
||||
virtual void dump (void) const;
|
||||
|
||||
/// Method called by ACE_Dev_Poll_Reactor to obtain one notification.
|
||||
/// THIS METHOD MUST BE CALLED WITH THE REACTOR TOKEN HELD!
|
||||
///
|
||||
/// @return -1 on error, else 0 and @arg nb has the notify to
|
||||
/// dispatch. Note that the contained event handler may be
|
||||
/// 0 if there were only wake-ups (no handlers to dispatch).
|
||||
int dequeue_one (ACE_Notification_Buffer &nb);
|
||||
|
||||
protected:
|
||||
|
||||
/**
|
||||
@@ -199,11 +207,6 @@ protected:
|
||||
*/
|
||||
ACE_Notification_Queue notification_queue_;
|
||||
#endif /* ACE_HAS_REACTOR_NOTIFICATION_QUEUE */
|
||||
|
||||
/// Lock and flag to say whether we're already dispatching notifies.
|
||||
/// Purpose is to only dispatch notifies from one thread at a time.
|
||||
ACE_SYNCH_MUTEX dispatching_lock_;
|
||||
volatile bool dispatching_;
|
||||
};
|
||||
|
||||
// ---------------------------------------------------------------------
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id: Dirent_Selector.cpp 80826 2008-03-04 14:51:23Z wotte $
|
||||
// $Id: Dirent_Selector.cpp 91286 2010-08-05 09:04:31Z johnnyw $
|
||||
|
||||
#include "ace/Dirent_Selector.h"
|
||||
|
||||
@@ -9,10 +9,6 @@
|
||||
#include "ace/OS_NS_dirent.h"
|
||||
#include "ace/OS_NS_stdlib.h"
|
||||
|
||||
ACE_RCSID (ace,
|
||||
Dirent_Selector,
|
||||
"$Id: Dirent_Selector.cpp 80826 2008-03-04 14:51:23Z wotte $")
|
||||
|
||||
ACE_BEGIN_VERSIONED_NAMESPACE_DECL
|
||||
|
||||
// Construction/Destruction
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id: Dump.cpp 80826 2008-03-04 14:51:23Z wotte $
|
||||
// $Id: Dump.cpp 91286 2010-08-05 09:04:31Z johnnyw $
|
||||
|
||||
#include "ace/Dump.h"
|
||||
#include "ace/Guard_T.h"
|
||||
@@ -6,7 +6,7 @@
|
||||
#include "ace/Object_Manager.h"
|
||||
#include "ace/Log_Msg.h"
|
||||
|
||||
ACE_RCSID(ace, Dump, "$Id: Dump.cpp 80826 2008-03-04 14:51:23Z wotte $")
|
||||
|
||||
|
||||
ACE_BEGIN_VERSIONED_NAMESPACE_DECL
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
/**
|
||||
* @file Dump_T.h
|
||||
*
|
||||
* $Id: Dump_T.h 91064 2010-07-12 10:11:24Z johnnyw $
|
||||
* $Id: Dump_T.h 91626 2010-09-07 10:59:20Z johnnyw $
|
||||
*
|
||||
* @author Doug Schmidt
|
||||
*/
|
||||
@@ -44,7 +44,7 @@ public:
|
||||
ACE_Dumpable_Adapter (const Concrete *t);
|
||||
~ACE_Dumpable_Adapter (void);
|
||||
|
||||
/// Concrete dump method (simply delegates to the <dump> method of
|
||||
/// Concrete dump method (simply delegates to the dump() method of
|
||||
/// <class Concrete>).
|
||||
virtual void dump (void) const;
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id: Dynamic.cpp 80826 2008-03-04 14:51:23Z wotte $
|
||||
// $Id: Dynamic.cpp 91286 2010-08-05 09:04:31Z johnnyw $
|
||||
|
||||
#include "ace/Dynamic.h"
|
||||
#include "ace/Singleton.h"
|
||||
@@ -10,7 +10,7 @@
|
||||
#include "ace/Dynamic.inl"
|
||||
#endif /* __ACE_INLINE__ */
|
||||
|
||||
ACE_RCSID(ace, Dynamic, "$Id: Dynamic.cpp 80826 2008-03-04 14:51:23Z wotte $")
|
||||
|
||||
|
||||
ACE_BEGIN_VERSIONED_NAMESPACE_DECL
|
||||
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
// $Id: Dynamic_Message_Strategy.cpp 91287 2010-08-05 10:30:49Z johnnyw $
|
||||
|
||||
#include "ace/Dynamic_Message_Strategy.h"
|
||||
|
||||
#if !defined (__ACE_INLINE__)
|
||||
@@ -9,10 +11,6 @@
|
||||
#include "ace/Malloc_Base.h"
|
||||
#include "ace/OS_NS_string.h"
|
||||
|
||||
ACE_RCSID (ace,
|
||||
Dynamic_Message_Strategy,
|
||||
"$Id: Dynamic_Message_Strategy.cpp 84565 2009-02-23 08:20:39Z johnnyw $")
|
||||
|
||||
ACE_BEGIN_VERSIONED_NAMESPACE_DECL
|
||||
|
||||
// ctor
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user