Dep/ACE: Upgrade ACE -library to 5.8.3

--HG--
branch : trunk
This commit is contained in:
click
2010-11-04 05:30:29 +01:00
parent 2604250c3c
commit 9b16ee203f
581 changed files with 10265 additions and 14303 deletions

13
dep/acelite/AUTHORS Normal file
View 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
View 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

File diff suppressed because it is too large Load Diff

1670
dep/acelite/NEWS Normal file

File diff suppressed because it is too large Load Diff

222
dep/acelite/README Normal file
View 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

File diff suppressed because it is too large Load Diff

8
dep/acelite/VERSION Normal file
View 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

View File

@@ -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)
{

View File

@@ -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,

View File

@@ -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 */

View File

@@ -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}

View File

@@ -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
{
/*****************************************************************/

View File

@@ -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
{
/*****************************************************************/

View File

@@ -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

View File

@@ -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

View File

@@ -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)

View File

@@ -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

View File

@@ -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"

View File

@@ -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"

View File

@@ -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)

View File

@@ -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__)

View File

@@ -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;
}

View File

@@ -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

View File

@@ -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__ */

View File

@@ -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__ */

View File

@@ -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>

View File

@@ -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;

View File

@@ -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"

View File

@@ -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 */

View File

@@ -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

View File

@@ -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
{

View File

@@ -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.

View File

@@ -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;
}

View File

@@ -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

View File

@@ -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 ()

View File

@@ -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__ */

View File

@@ -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);

View File

@@ -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

View File

@@ -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__)

View File

@@ -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 */
}

View File

@@ -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

View File

@@ -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)

View File

@@ -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,

View File

@@ -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.
*/

View File

@@ -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)

View File

@@ -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

View File

@@ -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 */

View File

@@ -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
*

View File

@@ -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 */

View File

@@ -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

View File

@@ -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"

View File

@@ -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.

View File

@@ -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

View File

@@ -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 */

View File

@@ -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);
}
}

View File

@@ -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

View File

@@ -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"

View File

@@ -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;

View File

@@ -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;

View File

@@ -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;
}

View File

@@ -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)
{

View File

@@ -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:

View File

@@ -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.
*/

View File

@@ -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;
}
}

View File

@@ -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

View File

@@ -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

View File

@@ -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 */

View File

@@ -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;
}

View File

@@ -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;
}

View File

@@ -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"

View File

@@ -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

View File

@@ -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

View File

@@ -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__)

View File

@@ -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

View File

@@ -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)
{

View File

@@ -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
*

View File

@@ -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)

View File

@@ -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)
{

View File

@@ -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);

View File

@@ -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__ */

View File

@@ -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

View File

@@ -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

View File

@@ -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)

View File

@@ -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__ */

View File

@@ -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

View File

@@ -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
/**

View File

@@ -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)

View File

@@ -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)

View File

@@ -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

View File

@@ -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

View File

@@ -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;

View File

@@ -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 $")

View File

@@ -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)

View File

@@ -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

View File

@@ -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_;
};
// ---------------------------------------------------------------------

View File

@@ -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

View File

@@ -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

View File

@@ -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;

View File

@@ -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

View File

@@ -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