diff --git a/Foundation/Foundation_vs80.sln b/Foundation/Foundation_vs80.sln
index 921e24084..5c0f89978 100644
--- a/Foundation/Foundation_vs80.sln
+++ b/Foundation/Foundation_vs80.sln
@@ -1,12 +1,15 @@
Microsoft Visual Studio Solution File, Format Version 9.00
# Visual Studio 2005
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Foundation", "Foundation_vs80.vcproj", "{8164D41D-B053-405B-826C-CF37AC0EF176}"
+ ProjectSection(ProjectDependencies) = postProject
+ {AA986945-F3B6-4381-94BB-14DD49202B40} = {AA986945-F3B6-4381-94BB-14DD49202B40}
+ EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "TestSuite", "testsuite\TestSuite_vs80.vcproj", "{F1EE93DF-347F-4CB3-B191-C4E63F38E972}"
ProjectSection(ProjectDependencies) = postProject
- {0955EB03-544B-4BD4-9C10-89CF38078F5F} = {0955EB03-544B-4BD4-9C10-89CF38078F5F}
- {8164D41D-B053-405B-826C-CF37AC0EF176} = {8164D41D-B053-405B-826C-CF37AC0EF176}
{6C41E55D-C0FC-4E01-AA8D-B7DA40E31D3A} = {6C41E55D-C0FC-4E01-AA8D-B7DA40E31D3A}
+ {8164D41D-B053-405B-826C-CF37AC0EF176} = {8164D41D-B053-405B-826C-CF37AC0EF176}
+ {0955EB03-544B-4BD4-9C10-89CF38078F5F} = {0955EB03-544B-4BD4-9C10-89CF38078F5F}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "TestLibrary", "testsuite\TestLibrary_vs80.vcproj", "{0955EB03-544B-4BD4-9C10-89CF38078F5F}"
diff --git a/Foundation/Foundation_vs80.vcproj b/Foundation/Foundation_vs80.vcproj
index 739c23054..dd00102bb 100644
--- a/Foundation/Foundation_vs80.vcproj
+++ b/Foundation/Foundation_vs80.vcproj
@@ -4741,90 +4741,6 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Foundation/Makefile b/Foundation/Makefile
index cb14c8456..cce3f6c9c 100644
--- a/Foundation/Makefile
+++ b/Foundation/Makefile
@@ -10,9 +10,9 @@ include $(POCO_BASE)/build/rules/global
objects = ArchiveStrategy ASCIIEncoding AsyncChannel Base64Decoder Base64Encoder \
BinaryReader BinaryWriter Bugcheck ByteOrder Channel Checksum Configurable ConsoleChannel \
- IOChannel IOChannelConfig IOChannelStream \
CountingStream DateTime LocalDateTime DateTimeFormat DateTimeFormatter DateTimeParser \
Debugger DeflatingStream DigestEngine DigestStream DirectoryIterator \
+ DynamicAny DynamicAnyHolder DynamicStruct \
Environment Event EventArgs ErrorHandler Exception FPEnvironment File Glob \
FileChannel Formatter FormattingChannel HexBinaryDecoder LineEndingConverter \
HexBinaryEncoder InflatingStream Latin1Encoding Latin9Encoding LogFile Logger \
@@ -30,9 +30,8 @@ objects = ArchiveStrategy ASCIIEncoding AsyncChannel Base64Decoder Base64Encoder
ThreadPool ActiveDispatcher Timer Timespan Timestamp Timezone Token URI \
FileStreamFactory URIStreamFactory URIStreamOpener UTF16Encoding Windows1252Encoding \
UTF8Encoding UnicodeConverter UUID UUIDGenerator Void Format \
- Pipe PipeImpl PipeStream DynamicAny DynamicAnyHolder DynamicStruct SharedMemory \
- FileStream Unicode UTF8String AsyncIOCommand AsyncIOEvent AsyncIOChannel AsyncStreamChannel \
- adler32 compress crc32 deflate gzio infback inffast inflate inftrees trees zutil \
+ Pipe PipeImpl PipeStream SharedMemory FileStream Unicode UTF8String \
+ adler32 compress crc32 deflate gzio infback inffast inflate inftrees trees zutil \
pcre_chartables pcre_compile pcre_globals pcre_maketables pcre_study \
pcre_tables pcre_try_flipped pcre_ucp_searchfuncs pcre_valid_utf8 \
pcre_exec pcre_ord2utf8 pcre_newline pcre_fullinfo pcre_xclass
diff --git a/Foundation/include/Poco/ActiveIOChannel.h b/Foundation/include/Poco/ActiveIOChannel.h
deleted file mode 100644
index e5791f8b7..000000000
--- a/Foundation/include/Poco/ActiveIOChannel.h
+++ /dev/null
@@ -1,89 +0,0 @@
-//
-// ActiveIOChannel.h
-//
-// $Id: //poco/Main/Data/include/Poco/ActiveIOChannel.h#1 $
-//
-// Library: Foundation
-// Package: Foundation
-// Module: ActiveIOChannel
-//
-// Definition of the ActiveIOChannel class.
-//
-// Copyright (c) 2006, Applied Informatics Software Engineering GmbH.
-// and Contributors.
-//
-// Permission is hereby granted, free of charge, to any person or organization
-// obtaining a copy of the software and accompanying documentation covered by
-// this license (the "Software") to use, reproduce, display, distribute,
-// execute, and transmit the Software, and to prepare derivative works of the
-// Software, and to permit third-parties to whom the Software is furnished to
-// do so, all subject to the following:
-//
-// The copyright notices in the Software and this entire statement, including
-// the above license grant, this restriction and the following disclaimer,
-// must be included in all copies of the Software, in whole or in part, and
-// all derivative works of the Software, unless such copies or derivative
-// works are solely in the form of machine-executable object code generated by
-// a source language processor.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
-// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
-// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
-// ARISING FROM, OUT OF OR IN CONNECTFoundationN WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-//
-
-
-#ifndef Foundation_ActiveIOChannel_INCLUDED
-#define Foundation_ActiveIOChannel_INCLUDED
-
-
-#include "Poco/Foundation.h"
-#include "Poco/ActiveMethod.h"
-#include "Poco/Void.h"
-
-
-namespace Poco {
-
-
-template
-class ActiveIOChannel
-{
-public:
- ActiveIOChannel(P& channel):
- read(this, &ActiveIOChannel::readImpl),
- write(this, &ActiveIOChannel::writeImpl),
- _channel(channel)
- {
- }
-
- ~ActiveIOChannel()
- {
- }
-
- Poco::ActiveMethod read;
- Poco::ActiveMethod write;
-
-protected:
- std::string readImpl(const Void&)
- {
- std::string buffer;
- return _channel.read(buffer);
- }
-
- int writeImpl(const std::string& data)
- {
- return _channel.write(data);
- }
-
-private:
- P& _channel;
-};
-
-
-} // namespace Poco
-
-
-#endif // Foundation_ActiveIOChannel_INCLUDED
diff --git a/Foundation/include/Poco/AsyncIOChannel.h b/Foundation/include/Poco/AsyncIOChannel.h
deleted file mode 100644
index 3d642235a..000000000
--- a/Foundation/include/Poco/AsyncIOChannel.h
+++ /dev/null
@@ -1,154 +0,0 @@
-//
-// AsyncIOChannel.h
-//
-// $Id: //poco/svn/Foundation/include/Poco/AsyncIOChannel.h#2 $
-//
-// Library: Foundation
-// Package: AsyncIO
-// Module: AsyncIOChannel
-//
-// Definition of the AsyncIOChannel class.
-//
-// Copyright (c) 2007, Applied Informatics Software Engineering GmbH.
-// and Contributors.
-//
-// Permission is hereby granted, free of charge, to any person or organization
-// obtaining a copy of the software and accompanying documentation covered by
-// this license (the "Software") to use, reproduce, display, distribute,
-// execute, and transmit the Software, and to prepare derivative works of the
-// Software, and to permit third-parties to whom the Software is furnished to
-// do so, all subject to the following:
-//
-// The copyright notices in the Software and this entire statement, including
-// the above license grant, this restriction and the following disclaimer,
-// must be included in all copies of the Software, in whole or in part, and
-// all derivative works of the Software, unless such copies or derivative
-// works are solely in the form of machine-executable object code generated by
-// a source language processor.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
-// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
-// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
-// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-//
-
-
-#ifndef Foundation_AsyncIOChannel_INCLUDED
-#define Foundation_AsyncIOChannel_INCLUDED
-
-
-#include "Poco/Foundation.h"
-#include "Poco/ActiveDispatcher.h"
-#include "Poco/ActiveMethod.h"
-#include "Poco/AsyncIOCommand.h"
-
-
-namespace Poco {
-
-
-class Foundation_API AsyncIOChannel: public ActiveDispatcher
- /// AsyncIOChannel supports asynchronous I/O operations on
- /// streams or other input/output facilities.
- ///
- /// This implementation of asynchronous I/O is based on
- /// blocking I/O operations that are executed in a separate thread.
- /// Some operating systems may provide special asynchronous
- /// I/O operations at the operating system level. However, these
- /// are not used by the current implementation.
- ///
- /// I/O operations (in the form of AsyncIOCommand subclass instances)
- /// are queued for execution on an AsyncIOChannel. The AsyncIOChannel's
- /// I/O thread executes all queued commands in FIFO order.
- ///
- /// Since AsyncIOChannel is based on ActiveDispatcher, the I/O thread is
- /// taken from the default thread pool. It should be ensured that the
- /// capacity of the default thread pool is sufficient before using
- /// asynchronous I/O. For every AsyncIOChannel instance, one thread
- /// from the default thread pool is needed.
- ///
- /// Subclasses of AsyncIOChannel implement asynchronous input/output
- /// for streams and sockets.
- ///
- /// The enqueue() active member function is used to enqueue AsyncIOCommand
- /// instances for execution.
- ///
- /// The cancel() member function (inherited from ActiveDispatcher) can be
- /// used to cancel all pending requests.
- ///
- /// Both the AsyncIOCommand class, and the AsyncIOChannel class offer events
- /// that notify an interested party about the successful or unsuccessful
- /// completion of a command.
- ///
- /// There are also two ways to wait for the completion of a command and
- /// obtain its result. The first one is by using the return value of
- /// enqueue(), which is ActiveResult. See the ActiveResult class
- /// template for more information. The second one is by using the functions
- /// of AsyncIOCommand, such as wait(), succeeded() and result().
- ///
- /// AsyncIOChannel supports the operations write, read and seek directly. However,
- /// subclasses of AsyncIOChannel can define additional operations.
-{
-public:
- ActiveMethod > enqueue;
- /// Actual signature:
- /// int enqueueImpl(const AsyncIOCommand::Ptr& pCommand);
- ///
- /// Enqueue the given command for eventual execution.
- /// Returns the number of bytes read or written if the operation
- /// was successful.
-
- BasicEvent commandCompleted;
- /// Fired when a command has successfully completed.
-
- BasicEvent commandFailed;
- /// Fired when a command has failed.
-
- virtual int write(const void* buffer, int length);
- /// Write length bytes from buffer.
- ///
- /// Must be overridden by subclasses. The default implementation
- /// throws a NotImplementedException.
- ///
- /// Returns the number of bytes written.
-
- virtual int read(void* buffer, int length);
- /// Read up to length bytes into buffer.
- ///
- /// Must be overridden by subclasses. The default implementation
- /// throws a NotImplementedException.
- ///
- /// Returns the number of bytes read.
-
- virtual int seek(std::streamoff off, std::ios::seekdir dir);
- /// Sets the current read/write position.
- ///
- /// Must be overridden by subclasses. The default implementation
- /// throws a NotImplementedException.
- ///
- /// Always returns 0.
-
-protected:
- AsyncIOChannel();
- /// Creates the AsyncIOChannel.
-
- ~AsyncIOChannel();
- /// Destroys the AsyncIOChannel.
-
- int enqueueImpl(const AsyncIOCommand::Ptr& pCommand);
- /// Execute the given command by calling
- /// pCommand->execute(this);
- /// and return the result.
-
-private:
- AsyncIOChannel(const AsyncIOChannel&);
- AsyncIOChannel& operator = (const AsyncIOChannel&);
-};
-
-
-} // namespace Poco
-
-
-#endif // Foundation_AsyncIOChannel_INCLUDED
diff --git a/Foundation/include/Poco/AsyncIOCommand.h b/Foundation/include/Poco/AsyncIOCommand.h
deleted file mode 100644
index 28a5cbe43..000000000
--- a/Foundation/include/Poco/AsyncIOCommand.h
+++ /dev/null
@@ -1,319 +0,0 @@
-//
-// AsyncIOCommand.h
-//
-// $Id: //poco/svn/Foundation/include/Poco/AsyncIOCommand.h#2 $
-//
-// Library: Foundation
-// Package: AsyncIO
-// Module: AsyncIOCommand
-//
-// Definition of the AsyncIOCommand class and subclasses.
-//
-// Copyright (c) 2007, Applied Informatics Software Engineering GmbH.
-// and Contributors.
-//
-// Permission is hereby granted, free of charge, to any person or organization
-// obtaining a copy of the software and accompanying documentation covered by
-// this license (the "Software") to use, reproduce, display, distribute,
-// execute, and transmit the Software, and to prepare derivative works of the
-// Software, and to permit third-parties to whom the Software is furnished to
-// do so, all subject to the following:
-//
-// The copyright notices in the Software and this entire statement, including
-// the above license grant, this restriction and the following disclaimer,
-// must be included in all copies of the Software, in whole or in part, and
-// all derivative works of the Software, unless such copies or derivative
-// works are solely in the form of machine-executable object code generated by
-// a source language processor.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
-// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
-// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
-// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-//
-
-
-#ifndef Foundation_AsyncIOCommand_INCLUDED
-#define Foundation_AsyncIOCommand_INCLUDED
-
-
-#include "Poco/Foundation.h"
-#include "Poco/RefCountedObject.h"
-#include "Poco/AutoPtr.h"
-#include "Poco/Event.h"
-#include "Poco/BasicEvent.h"
-#include "Poco/AsyncIOEvent.h"
-#include "Poco/Exception.h"
-#include
-
-
-namespace Poco {
-
-
-class AsyncIOChannel;
-
-
-class Foundation_API AsyncIOCommand: public RefCountedObject
- /// AsyncIOCommand is the base class for all asynchronous input/output
- /// commands used with AsyncIOChannel.
- ///
- /// See class AsyncIOChannel for more information about asynchronous input/output.
-{
-public:
- typedef AutoPtr Ptr;
-
- enum State
- {
- CMD_PENDING, /// Command is queued for execution.
- CMD_IN_PROGRESS, /// Command is currently being executed.
- CMD_COMPLETED, /// Command has completed successfully.
- CMD_FAILED /// Command has failed.
- };
-
- BasicEvent commandCompleted;
- /// Fired when the command has successfully completed.
-
- BasicEvent commandFailed;
- /// Fired when the command has failed.
-
- State state() const;
- /// Returns the current state of the command.
-
- void wait();
- /// Waits for the completion of the command.
-
- void wait(long milliseconds);
- /// Waits at most the given timeout for the
- /// completion of the command. Throws a
- /// TimeoutException if the command does
- /// not complete within the given timeout.
-
- bool tryWait(long milliseconds);
- /// Waits at most the given timeout for the
- /// completion of the command.
- ///
- /// Returns true if the command completes within
- /// the given timeout, otherwise false.
-
- bool succeeded() const;
- /// Returns true iff the command completed successfully.
-
- bool failed() const;
- /// Returns true iff the command has completed with an error.
-
- const Exception* exception() const;
- /// If the command failed with an exception, returns a
- /// clone of the exception. Otherwise, returns a null pointer.
-
- int execute(AsyncIOChannel& channel);
- /// Executes the command on the given AsyncIOChannel.
- ///
- /// Sets the state to CMD_IN_PROGRESS, calls
- /// executeImpl(), and, according to its result,
- /// sets the state to CMD_COMPLETED or CMD_FAILED
- /// and signals the event.
- ///
- /// Returns the number of bytes processed by the
- /// command.
-
- int result() const;
- /// Returns the result of the command.
-
-protected:
- AsyncIOCommand();
- /// Creates the AsyncIOCommand.
-
- ~AsyncIOCommand();
- /// Destroys the AsyncIOCommand.
-
- virtual int executeImpl(AsyncIOChannel& channel) = 0;
- /// Executes the command on the given AsyncIOChannel.
- /// Must be overridded by subclasses.
- ///
- /// Returns the number of bytes processed by the
- /// command.
-
-private:
- State _state;
- Event _completed;
- int _result;
- Exception* _pException;
-};
-
-
-class Foundation_API AsyncWriteCommand: public AsyncIOCommand
- /// An asynchronous write command.
-{
-public:
- AsyncWriteCommand(const void* buffer, int length);
- /// Create an AsyncWriteCommand for writing length bytes
- /// from the given buffer. The given buffer must be
- /// valid until the command completes.
-
- const void* buffer() const;
- /// Returns the buffer's address.
-
- int length() const;
- /// Returns the buffer's size.
-
-protected:
- int executeImpl(AsyncIOChannel& channel);
- ~AsyncWriteCommand();
-
-private:
- AsyncWriteCommand();
-
- const void* _buffer;
- int _length;
-};
-
-
-class Foundation_API AsyncBufferedWriteCommand: public AsyncWriteCommand
- /// An asynchronous write command. The difference to
- /// AsyncWriteCommand is that AsyncBufferedWriteCommand
- /// copies the data in the buffer into an internal buffer, thus
- /// the given buffer can be deleted as soon as the constructor
- /// returns.
-{
-public:
- AsyncBufferedWriteCommand(const void* buffer, int length);
- /// Create an AsyncBufferedWriteCommand for writing length bytes
- /// from the given buffer and copies the data from the
- /// given buffer into an internal buffer.
- ///
- /// The internal buffer can be accessed via the buffer()
- /// member function inherited from AsyncWriteCommand.
-
-protected:
- ~AsyncBufferedWriteCommand();
-};
-
-
-class Foundation_API AsyncReadCommand: public AsyncIOCommand
- /// An asynchronous read command.
-{
-public:
- AsyncReadCommand(void* buffer, int length);
- /// Create an AsyncReadCommand for reading up to length
- /// bytes into the given buffer.
-
- void* buffer() const;
- /// Returns the buffer's address.
-
- int length() const;
- /// Returns the buffer's size.
-
-protected:
- int executeImpl(AsyncIOChannel& channel);
- ~AsyncReadCommand();
-
-private:
- AsyncReadCommand();
-
- void* _buffer;
- int _length;
-};
-
-
-class Foundation_API AsyncBufferedReadCommand: public AsyncReadCommand
- /// An asynchronous read command. In contrast to
- /// AsyncReadCommand, which requires an externally supplied
- /// buffer that must be valid until the command completes,
- /// AsyncBufferedReadCommand maintains an internal buffer.
-{
-public:
- AsyncBufferedReadCommand(int length);
- /// Create an AsyncReadCommand for reading up to length
- /// bytes into an internal buffer.
- ///
- /// The buffer can be accessed via the buffer() member
- /// function inherited from AsyncReadCommand.
-
-protected:
- ~AsyncBufferedReadCommand();
-};
-
-
-class Foundation_API AsyncSeekCommand: public AsyncIOCommand
- /// An asynchronous seek command.
-{
-public:
- AsyncSeekCommand(std::streamoff off, std::ios::seekdir dir = std::ios::beg);
- /// Creates an AsyncSeekCommand for setting the current read/write position.
-
-protected:
- int executeImpl(AsyncIOChannel& channel);
- ~AsyncSeekCommand();
-
-private:
- AsyncSeekCommand();
-
- std::streamoff _off;
- std::ios::seekdir _dir;
-};
-
-
-//
-// inlines
-//
-inline AsyncIOCommand::State AsyncIOCommand::state() const
-{
- return _state;
-}
-
-
-inline int AsyncIOCommand::result() const
-{
- return _result;
-}
-
-
-inline const Exception* AsyncIOCommand::exception() const
-{
- return _pException;
-}
-
-
-inline bool AsyncIOCommand::succeeded() const
-{
- return _state == CMD_COMPLETED;
-}
-
-
-inline bool AsyncIOCommand::failed() const
-{
- return _state == CMD_FAILED;
-}
-
-
-inline const void* AsyncWriteCommand::buffer() const
-{
- return _buffer;
-}
-
-
-inline int AsyncWriteCommand::length() const
-{
- return _length;
-}
-
-
-inline void* AsyncReadCommand::buffer() const
-{
- return _buffer;
-}
-
-
-inline int AsyncReadCommand::length() const
-{
- return _length;
-}
-
-
-} // namespace Poco
-
-
-#endif // Foundation_AsyncIOCommand_INCLUDED
diff --git a/Foundation/include/Poco/AsyncIOEvent.h b/Foundation/include/Poco/AsyncIOEvent.h
deleted file mode 100644
index 4c32a3867..000000000
--- a/Foundation/include/Poco/AsyncIOEvent.h
+++ /dev/null
@@ -1,121 +0,0 @@
-//
-// AsyncIOEvent.h
-//
-// $Id: //poco/svn/Foundation/include/Poco/AsyncIOEvent.h#2 $
-//
-// Library: Foundation
-// Package: AsyncIO
-// Module: AsyncIOEvent
-//
-// Definition of the AsyncIOEvent class.
-//
-// Copyright (c) 2007, Applied Informatics Software Engineering GmbH.
-// and Contributors.
-//
-// Permission is hereby granted, free of charge, to any person or organization
-// obtaining a copy of the software and accompanying documentation covered by
-// this license (the "Software") to use, reproduce, display, distribute,
-// execute, and transmit the Software, and to prepare derivative works of the
-// Software, and to permit third-parties to whom the Software is furnished to
-// do so, all subject to the following:
-//
-// The copyright notices in the Software and this entire statement, including
-// the above license grant, this restriction and the following disclaimer,
-// must be included in all copies of the Software, in whole or in part, and
-// all derivative works of the Software, unless such copies or derivative
-// works are solely in the form of machine-executable object code generated by
-// a source language processor.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
-// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
-// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
-// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-//
-
-
-#ifndef Foundation_AsyncIOEvent_INCLUDED
-#define Foundation_AsyncIOEvent_INCLUDED
-
-
-#include "Poco/Foundation.h"
-
-
-namespace Poco {
-
-
-class AsyncIOCommand;
-class AsyncIOChannel;
-
-
-class Foundation_API AsyncIOEvent
- /// The AsyncIOEvent class holds information about an event
- /// caused by asynchronous input or output operation.
-{
-public:
- enum EventKind
- {
- EV_COMMAND_COMPLETED,
- EV_COMMAND_FAILED
- };
-
- AsyncIOEvent(AsyncIOCommand* pCommand, AsyncIOChannel* pChannel, EventKind what);
- /// Creates the AsyncIOEvent.
-
- AsyncIOEvent(const AsyncIOEvent& event);
- /// Creates a AsyncIOEvent from another one.
-
- ~AsyncIOEvent();
- /// Destroys the AsyncIOEvent.
-
- AsyncIOEvent& operator = (const AsyncIOEvent& event);
- /// Assigns a AsyncIOEvent.
-
- void swap(AsyncIOEvent& event);
- /// Swaps the event with another one.
-
- AsyncIOCommand& command() const;
- /// Returns the command that caused the event.
-
- AsyncIOChannel& channel() const;
- /// Returns the channel that caused the event.
-
- EventKind what() const;
- /// Returns the reason of the event.
-
-private:
- AsyncIOEvent();
-
- AsyncIOCommand* _pCommand;
- AsyncIOChannel* _pChannel;
- EventKind _what;
-};
-
-
-//
-// inlines
-//
-inline AsyncIOCommand& AsyncIOEvent::command() const
-{
- return *_pCommand;
-}
-
-
-inline AsyncIOChannel& AsyncIOEvent::channel() const
-{
- return *_pChannel;
-}
-
-
-inline AsyncIOEvent::EventKind AsyncIOEvent::what() const
-{
- return _what;
-}
-
-
-} // namespace Poco
-
-
-#endif // Foundation_AsyncIOEvent_INCLUDED
diff --git a/Foundation/include/Poco/AsyncStreamChannel.h b/Foundation/include/Poco/AsyncStreamChannel.h
deleted file mode 100644
index ddaacdc2f..000000000
--- a/Foundation/include/Poco/AsyncStreamChannel.h
+++ /dev/null
@@ -1,96 +0,0 @@
-//
-// AsyncStreamChannel.h
-//
-// $Id: //poco/svn/Foundation/include/Poco/AsyncStreamChannel.h#2 $
-//
-// Library: Foundation
-// Package: AsyncIO
-// Module: AsyncStreamChannel
-//
-// Definition of the AsyncStreamChannel class.
-//
-// Copyright (c) 2007, Applied Informatics Software Engineering GmbH.
-// and Contributors.
-//
-// Permission is hereby granted, free of charge, to any person or organization
-// obtaining a copy of the software and accompanying documentation covered by
-// this license (the "Software") to use, reproduce, display, distribute,
-// execute, and transmit the Software, and to prepare derivative works of the
-// Software, and to permit third-parties to whom the Software is furnished to
-// do so, all subject to the following:
-//
-// The copyright notices in the Software and this entire statement, including
-// the above license grant, this restriction and the following disclaimer,
-// must be included in all copies of the Software, in whole or in part, and
-// all derivative works of the Software, unless such copies or derivative
-// works are solely in the form of machine-executable object code generated by
-// a source language processor.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
-// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
-// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
-// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-//
-
-
-#ifndef Foundation_AsyncStreamChannel_INCLUDED
-#define Foundation_AsyncStreamChannel_INCLUDED
-
-
-#include "Poco/Foundation.h"
-#include "Poco/AsyncIOChannel.h"
-#include
-#include
-#include
-
-
-namespace Poco {
-
-
-class Foundation_API AsyncStreamChannel: public AsyncIOChannel
- /// AsyncStreamChannel provides an AsyncIOChannel for I/O streams.
- ///
- /// Usage Example:
- /// std::stringstream str;
- /// AsyncStreamChannel channel(str);
- /// channel.enqueue(new AsyncWriteCommand("Hello", 5));
- /// channel.enqueue(new AsyncWriteCommand(", ", 2));
- /// ActiveResult result = channel.enqueue(new AsyncWriteCommand("world!", 6));
- /// result.wait();
- /// std::string s(str.str());
-{
-public:
- AsyncStreamChannel(std::istream& istr);
- /// Creates an AsyncStreamChannel using the given input stream.
- /// Only read and seek operations will be allowed.
-
- AsyncStreamChannel(std::ostream& ostr);
- /// Creates an AsyncStreamChannel using the given output stream.
- /// Only write and seek operations will be allowed.
-
- AsyncStreamChannel(std::iostream& iostr);
- /// Creates an AsyncStreamChannel using the given input/output stream.
-
- ~AsyncStreamChannel();
- /// Destroys the AsyncStreamChannel.
-
- // AsyncIOChannel
- int write(const void* buffer, int length);
- int read(void* buffer, int length);
- int seek(std::streamoff off, std::ios::seekdir dir);
-
-private:
- AsyncStreamChannel();
-
- std::istream* _pIstr;
- std::ostream* _pOstr;
-};
-
-
-} // namespace Poco
-
-
-#endif // Foundation_AsyncStreamChannel_INCLUDED
diff --git a/Foundation/include/Poco/IOChannel.h b/Foundation/include/Poco/IOChannel.h
deleted file mode 100644
index c700678a3..000000000
--- a/Foundation/include/Poco/IOChannel.h
+++ /dev/null
@@ -1,242 +0,0 @@
-//
-// IOChannel.h
-//
-// $Id: //poco/svn/Foundation/include/Poco/IOChannel.h#2 $
-//
-// Library: Foundation
-// Package: IO
-// Module: IOChannel
-//
-// Definition of the IOChannel class.
-//
-// Copyright (c) 2007, Applied Informatics Software Engineering GmbH.
-// and Contributors.
-//
-// Permission is hereby granted, free of charge, to any person or organization
-// obtaining a copy of the software and accompanying documentation covered by
-// this license (the "Software") to use, reproduce, display, distribute,
-// execute, and transmit the Software, and to prepare derivative works of the
-// Software, and to permit third-parties to whom the Software is furnished to
-// do so, all subject to the following:
-//
-// The copyright notices in the Software and this entire statement, including
-// the above license grant, this restriction and the following disclaimer,
-// must be included in all copies of the Software, in whole or in part, and
-// all derivative works of the Software, unless such copies or derivative
-// works are solely in the form of machine-executable object code generated by
-// a source language processor.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
-// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
-// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
-// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-//
-
-
-#ifndef Foundation_IOChannel_INCLUDED
-#define Foundation_IOChannel_INCLUDED
-
-
-#include "Poco/Foundation.h"
-#include "Poco/IOChannelConfig.h"
-#include "Poco/RefCountedObject.h"
-#include "Poco/AutoPtr.h"
-
-
-namespace Poco {
-
-
-class Foundation_API IOChannel: public RefCountedObject
- /// IOChannel supports I/O operations on streams or other input/output facilities.
- ///
- /// IOChannel supports blocking (default) and non-blocking read and write operations.
-{
-public:
- typedef AutoPtr ConfigPtr;
-
- IOChannel(const std::string& name = "");
- /// Creates the IOChannel.
-
- IOChannel(IOChannelConfig* pConfig, const std::string& name = "");
- /// Creates the IOChannel with specified configuration.
-
- virtual ~IOChannel();
- /// Destroys the IOChannel.
-
- virtual void open() = 0;
- /// Opens the channel.
-
- virtual void close() = 0;
- /// Closes the channel.
-
- std::string& read(std::string& buffer, int length = 0);
- /// Read up to length bytes into the supplied buffer.
- /// If length is 0, the channel implementation must provide
- /// support for the termination of transmission.
- /// Also, in case when length is 0 and the channel implementation
- /// provides the buffer length and termination character
- /// information, it also allocates the buffer. The buffer,
- /// however, is always freed in this function, regardless of where
- /// it was allocated. See readData(char*&) for more information.
-
- const std::string& read(int length);
- /// Read up to length bytes and return the reference to internal buffer.
-
- int read(char* pReadBuf, int length);
- /// Reads a string of characters from the channel.
-
- int write(char c);
- /// Writes a character to the channel.
-
- int write(const char* buffer, int length);
- /// Write length bytes from buffer.
- /// Returns the number of bytes written.
-
- int write(const std::string& data);
- /// Writes a string of characters to the channel.
-
- char read();
- /// Reads one character from the channel.
-
- const std::string& name() const;
- /// Returns the channel name.
-
- virtual void setTimeout(int timeoutMS);
- /// Sets timeout in milliseconds.
-
- virtual void setBlocking();
- /// Sets blocking operation.
-
- virtual void setNonblocking(int timeoutMS);
- /// Sets non-blocking operation by calling setTimeout().
-
- int getTimeout() const;
- /// Returns timeout in milliseconds.
-
- bool isBlocking() const;
- /// Returns true if operation is blocking, false otherwise.
-
-protected:
- IOChannelConfig& config();
- /// Returns the reference to the configuration for this cahannel.
-
- virtual void init();
- /// (Re)initializes the internal channel configuration.
- /// Does nothing in this implementation.
-
- virtual int readData(char* pReadBuf, int length) = 0;
- /// Reads length bytes and puts them in the buffer.
- /// Must be implemented by the inheriting class.
-
- virtual int readData(char*& pReadBuf) = 0;
- /// Reads an unspecified amount of bytes and places them in the buffer.
- /// Properly behaved implementation of this function reads bytes and places
- /// them in the buffer. Buffer is allocated by the implementation as
- /// needed. Implementation must provide a way to terminate the communication
- /// session.
- /// Important: this function is called from read(std::string, int length) when
- /// the length is zero. The buffer allocated in the implementation of this function
- /// is always freed in the caller function.
-
- virtual int writeData(const char* buffer, int length) = 0;
- /// Writes length bytes from buffer to the target.
- /// Must be implemented by the inheriting class.
-
-private:
- IOChannel(const IOChannel&);
- IOChannel& operator = (const IOChannel&);
-
- std::string _name;
- std::string _buffer;
- ConfigPtr _pConfig;
-};
-
-
-//
-// inlines
-//
-
-inline IOChannelConfig& IOChannel::config()
-{
- return *_pConfig;
-}
-
-
-inline void IOChannel::init()
-{
-}
-
-
-inline const std::string& IOChannel::name() const
-{
- return _name;
-}
-
-
-inline const std::string& IOChannel::read(int length)
-{
- return read(_buffer, length);
-}
-
-
-inline int IOChannel::read(char* pReadBuf, int length)
-{
- return readData(pReadBuf, length);
-}
-
-
-inline int IOChannel::write(char c)
-{
- return writeData(&c, 1);
-}
-
-
-inline int IOChannel::write(const std::string& data)
-{
- return writeData(data.data(), static_cast(data.size()));
-}
-
-
-inline int IOChannel::write(const char* buffer, int length)
-{
- return writeData(buffer, length);
-}
-
-
-inline void IOChannel::setTimeout(int timeoutMS)
-{
- _pConfig->setTimeout(timeoutMS);
-}
-
-
-inline void IOChannel::setBlocking()
-{
- _pConfig->setBlocking();
-}
-
-
-inline void IOChannel::setNonblocking(int timeoutMS)
-{
- setTimeout(timeoutMS);
-}
-
-
-inline int IOChannel::getTimeout() const
-{
- return _pConfig->getTimeout();
-}
-
-
-inline bool IOChannel::isBlocking() const
-{
- return _pConfig->isBlocking();
-}
-
-
-} // namespace Poco
-
-
-#endif // Foundation_IOChannel_INCLUDED
diff --git a/Foundation/include/Poco/IOChannelConfig.h b/Foundation/include/Poco/IOChannelConfig.h
deleted file mode 100644
index cbc766fec..000000000
--- a/Foundation/include/Poco/IOChannelConfig.h
+++ /dev/null
@@ -1,158 +0,0 @@
-//
-// IOChannelConfig.h
-//
-// $Id: //poco/Main/Data/include/Poco/IOChannelConfig.h#1 $
-//
-// Library: Foundation
-// Package: IO
-// Module: IOChannelConfig
-//
-// Definition of the IOChannelConfig class.
-//
-// Copyright (c) 2006, Applied Informatics Software Engineering GmbH.
-// and Contributors.
-//
-// Permission is hereby granted, free of charge, to any person or organization
-// obtaining a copy of the software and accompanying documentation covered by
-// this license (the "Software") to use, reproduce, display, distribute,
-// execute, and transmit the Software, and to prepare derivative works of the
-// Software, and to permit third-parties to whom the Software is furnished to
-// do so, all subject to the following:
-//
-// The copyright notices in the Software and this entire statement, including
-// the above license grant, this restriction and the following disclaimer,
-// must be included in all copies of the Software, in whole or in part, and
-// all derivative works of the Software, unless such copies or derivative
-// works are solely in the form of machine-executable object code generated by
-// a source language processor.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
-// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
-// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
-// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-//
-
-
-#ifndef Foundation_IOChannelConfig_INCLUDED
-#define Foundation_IOChannelConfig_INCLUDED
-
-
-#include "Poco/Foundation.h"
-#include "Poco/RefCountedObject.h"
-
-
-namespace Poco {
-
-
-class Foundation_API IOChannelConfig: public RefCountedObject
-{
-public:
- enum ChannelType
- {
- CONNECTION_CHANNEL,
- CONNECTIONLESS_CHANNEL
- };
-
- IOChannelConfig(const std::string& name = "",
- ChannelType type = CONNECTION_CHANNEL,
- int timeoutMS = INFINITE_TIMEOUT);
- /// Creates IOChannelConfig.
-
- virtual ~IOChannelConfig();
- /// Destroys IOChannelConfig.
-
- virtual void setTimeout(int timeoutMS);
- /// Sets timeout in milliseconds.
-
- int getTimeout() const;
- /// Returns timeout in milliseconds.
-
- virtual void setBlocking();
- /// Sets blocking operation.
-
- virtual void setNonblocking(int timeoutMS);
- /// Sets blocking operation.
-
- bool isBlocking() const;
- /// Returns true if operation is blocking, false otherwise.
-
- void setName(const std::string& name);
- /// Sets the channel name.
-
- const std::string& getName() const;
- /// Returns the channel name.
-
- void setType(ChannelType type);
- /// Sets the channel name.
-
- ChannelType getType() const;
- /// Returns the channel name.
-
- static const int INFINITE_TIMEOUT = -1;
-
-private:
- std::string _name;
- ChannelType _type;
- int _timeoutMS;
-};
-
-
-//
-// inlines
-//
-
-inline void IOChannelConfig::setBlocking()
-{
- _timeoutMS = INFINITE_TIMEOUT;
-}
-
-
-inline void IOChannelConfig::setNonblocking(int timeoutMS)
-{
- _timeoutMS = timeoutMS;
-}
-
-
-inline int IOChannelConfig::getTimeout() const
-{
- return _timeoutMS;
-}
-
-
-inline bool IOChannelConfig::isBlocking() const
-{
- return INFINITE_TIMEOUT == _timeoutMS;
-}
-
-
-inline void IOChannelConfig::setName(const std::string& name)
-{
- _name = name;
-}
-
-
-inline const std::string& IOChannelConfig::getName() const
-{
- return _name;
-}
-
-
-inline void IOChannelConfig::setType(ChannelType type)
-{
- _type = type;
-}
-
-
-inline IOChannelConfig::ChannelType IOChannelConfig::getType() const
-{
- return _type;
-}
-
-
-} // namespace Poco
-
-
-#endif // Foundation_IOChannelConfig_INCLUDED
diff --git a/Foundation/include/Poco/IOChannelStream.h b/Foundation/include/Poco/IOChannelStream.h
deleted file mode 100644
index eb2b1c13a..000000000
--- a/Foundation/include/Poco/IOChannelStream.h
+++ /dev/null
@@ -1,130 +0,0 @@
-//
-// IOChannelStream.h
-//
-// $Id: //poco/Main/Data/include/Poco/IOChannelStream.h#1 $
-//
-// Library: Poco
-// Package: IO
-// Module: IOChannelStream
-//
-// Definition of the IOChannelStream class.
-//
-// Copyright (c) 2004-2006, Applied Informatics Software Engineering GmbH.
-// and Contributors.
-//
-// Permission is hereby granted, free of charge, to any person or organization
-// obtaining a copy of the software and accompanying documentation covered by
-// this license (the "Software") to use, reproduce, display, distribute,
-// execute, and transmit the Software, and to prepare derivative works of the
-// Software, and to permit third-parties to whom the Software is furnished to
-// do so, all subject to the following:
-//
-// The copyright notices in the Software and this entire statement, including
-// the above license grant, this restriction and the following disclaimer,
-// must be included in all copies of the Software, in whole or in part, and
-// all derivative works of the Software, unless such copies or derivative
-// works are solely in the form of machine-executable object code generated by
-// a source language processor.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
-// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
-// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
-// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-//
-
-
-#ifndef Foundation_IOChannelStream_INCLUDED
-#define Foundation_IOChannelStream_INCLUDED
-
-
-#include "Poco/Foundation.h"
-#include "Poco/UnbufferedStreamBuf.h"
-#include "Poco/IOChannel.h"
-#include
-#include
-
-
-namespace Poco {
-
-
-class Foundation_API IOChannelStreamBuf: public UnbufferedStreamBuf
- /// This is the streambuf class used for reading from and writing to a IOChannel.
-{
-public:
- IOChannelStreamBuf(IOChannel& channel);
- /// Creates a IOChannelStreamBuf with the given IOChannel.
-
- ~IOChannelStreamBuf();
- /// Destroys the IOChannelStreamBuf.
-
- void close();
- /// Closes the channel.
-
-protected:
- int_type readFromDevice();
- int_type writeToDevice(char c);
-
-private:
- IOChannel& _channel;
-};
-
-
-class Foundation_API IOChannelIOS: public virtual std::ios
- /// The base class for IOChannelInputStream and
- /// IOChannelOutputStream.
- ///
- /// This class is needed to ensure the correct initialization
- /// order of the stream buffer and base classes.
-{
-public:
- IOChannelIOS(IOChannel& channel, openmode mode);
- /// Creates the IOChannelIOS with the given IOChannel.
-
- ~IOChannelIOS();
- /// Destroys the IOChannelIOS.
-
- IOChannelStreamBuf* rdbuf();
- /// Returns a pointer to the internal IOChannelStreamBuf.
-
-protected:
- IOChannelStreamBuf _buf;
-};
-
-
-class Foundation_API IOChannelOutputStream: public IOChannelIOS, public std::ostream
- /// An output stream for writing to a IOChannel.
-{
-public:
- IOChannelOutputStream(IOChannel& channel);
- /// Creates the IOChannelOutputStream with the given IOChannel.
-
- ~IOChannelOutputStream();
- /// Destroys the IOChannelOutputStream.
- ///
- /// Flushes the buffer, but does not close the channel.
-};
-
-
-class Foundation_API IOChannelInputStream: public IOChannelIOS, public std::istream
- /// An input stream for reading from a IOChannel.
- ///
- /// Using formatted input from a IOChannelInputStream
- /// is not recommended, due to the read-ahead behavior of
- /// istream with formatted reads.
-{
-public:
- IOChannelInputStream(IOChannel& channel);
- /// Creates the IOChannelInputStream with the given IOChannel.
-
- ~IOChannelInputStream();
- /// Destroys the IOChannelInputStream.
-};
-
-
-} // namespace Poco
-
-
-#endif // Foundation_IOChannelStream_INCLUDED
diff --git a/Foundation/src/AsyncIOChannel.cpp b/Foundation/src/AsyncIOChannel.cpp
deleted file mode 100644
index e942622c7..000000000
--- a/Foundation/src/AsyncIOChannel.cpp
+++ /dev/null
@@ -1,79 +0,0 @@
-//
-// AsyncIOChannel.cpp
-//
-// $Id: //poco/svn/Foundation/src/AsyncIOChannel.cpp#2 $
-//
-// Library: Foundation
-// Package: AsyncIO
-// Module: AsyncIOChannel
-//
-// Copyright (c) 2007, Applied Informatics Software Engineering GmbH.
-// and Contributors.
-//
-// Permission is hereby granted, free of charge, to any person or organization
-// obtaining a copy of the software and accompanying documentation covered by
-// this license (the "Software") to use, reproduce, display, distribute,
-// execute, and transmit the Software, and to prepare derivative works of the
-// Software, and to permit third-parties to whom the Software is furnished to
-// do so, all subject to the following:
-//
-// The copyright notices in the Software and this entire statement, including
-// the above license grant, this restriction and the following disclaimer,
-// must be included in all copies of the Software, in whole or in part, and
-// all derivative works of the Software, unless such copies or derivative
-// works are solely in the form of machine-executable object code generated by
-// a source language processor.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
-// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
-// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
-// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-//
-
-
-#include "Poco/AsyncIOChannel.h"
-
-
-namespace Poco {
-
-
-AsyncIOChannel::AsyncIOChannel():
- enqueue(this, &AsyncIOChannel::enqueueImpl)
-{
-}
-
-
-AsyncIOChannel::~AsyncIOChannel()
-{
-}
-
-
-int AsyncIOChannel::enqueueImpl(const AsyncIOCommand::Ptr& pCommand)
-{
- AsyncIOCommand::Ptr ptr(pCommand);
- return ptr->execute(*this);
-}
-
-
-int AsyncIOChannel::write(const void* buffer, int length)
-{
- throw NotImplementedException("write()");
-}
-
-
-int AsyncIOChannel::read(void* buffer, int length)
-{
- throw NotImplementedException("read()");
-}
-
-
-int AsyncIOChannel::seek(std::streamoff off, std::ios::seekdir dir)
-{
- throw NotImplementedException("seek()");
-}
-
-
-} // namespace Poco
diff --git a/Foundation/src/AsyncIOCommand.cpp b/Foundation/src/AsyncIOCommand.cpp
deleted file mode 100644
index c68b4464a..000000000
--- a/Foundation/src/AsyncIOCommand.cpp
+++ /dev/null
@@ -1,236 +0,0 @@
-//
-// AsyncIOCommand.cpp
-//
-// $Id: //poco/svn/Foundation/src/AsyncIOCommand.cpp#2 $
-//
-// Library: Foundation
-// Package: AsyncIO
-// Module: AsyncIOCommand
-//
-// Copyright (c) 2007, Applied Informatics Software Engineering GmbH.
-// and Contributors.
-//
-// Permission is hereby granted, free of charge, to any person or organization
-// obtaining a copy of the software and accompanying documentation covered by
-// this license (the "Software") to use, reproduce, display, distribute,
-// execute, and transmit the Software, and to prepare derivative works of the
-// Software, and to permit third-parties to whom the Software is furnished to
-// do so, all subject to the following:
-//
-// The copyright notices in the Software and this entire statement, including
-// the above license grant, this restriction and the following disclaimer,
-// must be included in all copies of the Software, in whole or in part, and
-// all derivative works of the Software, unless such copies or derivative
-// works are solely in the form of machine-executable object code generated by
-// a source language processor.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
-// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
-// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
-// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-//
-
-
-#include "Poco/AsyncIOCommand.h"
-#include "Poco/AsyncIOChannel.h"
-#include "Poco/AsyncIOEvent.h"
-#include
-
-
-namespace Poco {
-
-
-//
-// AsyncIOCommand
-//
-
-
-AsyncIOCommand::AsyncIOCommand():
- _state(CMD_PENDING),
- _result(0),
- _pException(0)
-{
-}
-
-
-AsyncIOCommand::~AsyncIOCommand()
-{
- delete _pException;
-}
-
-
-void AsyncIOCommand::wait()
-{
- _completed.wait();
-}
-
-
-void AsyncIOCommand::wait(long milliseconds)
-{
- _completed.wait(milliseconds);
-}
-
-
-bool AsyncIOCommand::tryWait(long milliseconds)
-{
- return _completed.tryWait(milliseconds);
-}
-
-
-int AsyncIOCommand::execute(AsyncIOChannel& channel)
-{
- delete _pException;
- _pException = 0;
-
- _state = CMD_IN_PROGRESS;
- try
- {
- _result = executeImpl(channel);
- _state = CMD_COMPLETED;
- _completed.set();
- AsyncIOEvent completedEvent(this, &channel, AsyncIOEvent::EV_COMMAND_COMPLETED);
- commandCompleted(this, completedEvent);
- channel.commandCompleted(this, completedEvent);
- return _result;
- }
- catch (Exception& exc)
- {
- _pException = exc.clone();
- _state = CMD_FAILED;
- _completed.set();
- AsyncIOEvent failedEvent(this, &channel, AsyncIOEvent::EV_COMMAND_FAILED);
- commandFailed(this, failedEvent);
- channel.commandFailed(this, failedEvent);
- throw;
- }
- catch (std::exception& exc)
- {
- _pException = new Exception(exc.what());
- _state = CMD_FAILED;
- _completed.set();
- AsyncIOEvent failedEvent(this, &channel, AsyncIOEvent::EV_COMMAND_FAILED);
- commandFailed(this, failedEvent);
- channel.commandFailed(this, failedEvent);
- throw;
- }
- catch (...)
- {
- _pException = new Exception("Unknown exception");
- _state = CMD_FAILED;
- _completed.set();
- AsyncIOEvent failedEvent(this, &channel, AsyncIOEvent::EV_COMMAND_FAILED);
- commandFailed(this, failedEvent);
- channel.commandFailed(this, failedEvent);
- throw;
- }
-}
-
-
-//
-// AsyncWriteCommand
-//
-
-
-AsyncWriteCommand::AsyncWriteCommand(const void* buffer, int length):
- _buffer(buffer),
- _length(length)
-{
-}
-
-
-AsyncWriteCommand::~AsyncWriteCommand()
-{
-}
-
-
-int AsyncWriteCommand::executeImpl(AsyncIOChannel& channel)
-{
- return channel.write(_buffer, _length);
-}
-
-
-//
-// AsyncBufferedWriteCommand
-//
-
-
-AsyncBufferedWriteCommand::AsyncBufferedWriteCommand(const void* buf, int length):
- AsyncWriteCommand(new char[length], length)
-{
- std::memcpy(const_cast(buffer()), buf, length);
-}
-
-
-AsyncBufferedWriteCommand::~AsyncBufferedWriteCommand()
-{
- delete [] reinterpret_cast(buffer());
-}
-
-
-//
-// AsyncReadCommand
-//
-
-
-AsyncReadCommand::AsyncReadCommand(void* buffer, int length):
- _buffer(buffer),
- _length(length)
-{
-}
-
-
-AsyncReadCommand::~AsyncReadCommand()
-{
-}
-
-
-int AsyncReadCommand::executeImpl(AsyncIOChannel& channel)
-{
- return channel.read(_buffer, _length);
-}
-
-
-//
-// AsyncBufferedReadCommand
-//
-
-
-AsyncBufferedReadCommand::AsyncBufferedReadCommand(int length):
- AsyncReadCommand(new char[length], length)
-{
-}
-
-
-AsyncBufferedReadCommand::~AsyncBufferedReadCommand()
-{
- delete [] reinterpret_cast(buffer());
-}
-
-
-//
-// AsyncSeekCommand
-//
-
-
-AsyncSeekCommand::AsyncSeekCommand(std::streamoff off, std::ios::seekdir dir):
- _off(off),
- _dir(dir)
-{
-}
-
-
-AsyncSeekCommand::~AsyncSeekCommand()
-{
-}
-
-
-int AsyncSeekCommand::executeImpl(AsyncIOChannel& channel)
-{
- return channel.seek(_off, _dir);
-}
-
-
-} // namespace Poco
diff --git a/Foundation/src/AsyncIOEvent.cpp b/Foundation/src/AsyncIOEvent.cpp
deleted file mode 100644
index 5299c237c..000000000
--- a/Foundation/src/AsyncIOEvent.cpp
+++ /dev/null
@@ -1,88 +0,0 @@
-//
-// AsyncIOEvent.cpp
-//
-// $Id: //poco/svn/Foundation/src/AsyncIOEvent.cpp#2 $
-//
-// Library: Foundation
-// Package: AsyncIO
-// Module: AsyncIOEvent
-//
-// Copyright (c) 2007, Applied Informatics Software Engineering GmbH.
-// and Contributors.
-//
-// Permission is hereby granted, free of charge, to any person or organization
-// obtaining a copy of the software and accompanying documentation covered by
-// this license (the "Software") to use, reproduce, display, distribute,
-// execute, and transmit the Software, and to prepare derivative works of the
-// Software, and to permit third-parties to whom the Software is furnished to
-// do so, all subject to the following:
-//
-// The copyright notices in the Software and this entire statement, including
-// the above license grant, this restriction and the following disclaimer,
-// must be included in all copies of the Software, in whole or in part, and
-// all derivative works of the Software, unless such copies or derivative
-// works are solely in the form of machine-executable object code generated by
-// a source language processor.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
-// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
-// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
-// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-//
-
-
-#include "Poco/AsyncIOEvent.h"
-#include "Poco/AsyncIOCommand.h"
-#include
-
-
-namespace Poco {
-
-
-AsyncIOEvent::AsyncIOEvent(AsyncIOCommand* pCommand, AsyncIOChannel* pChannel, EventKind what):
- _pCommand(pCommand),
- _pChannel(pChannel),
- _what(what)
-{
- poco_check_ptr (pCommand);
- poco_check_ptr (pChannel);
-
- _pCommand->duplicate();
-}
-
-
-AsyncIOEvent::AsyncIOEvent(const AsyncIOEvent& event):
- _pCommand(event._pCommand),
- _pChannel(event._pChannel),
- _what(event._what)
-{
- _pCommand->duplicate();
-}
-
-
-AsyncIOEvent::~AsyncIOEvent()
-{
- _pCommand->release();
-}
-
-
-AsyncIOEvent& AsyncIOEvent::operator = (const AsyncIOEvent& event)
-{
- AsyncIOEvent tmp(event);
- swap(tmp);
- return *this;
-}
-
-
-void AsyncIOEvent::swap(AsyncIOEvent& event)
-{
- std::swap(_pCommand, event._pCommand);
- std::swap(_pChannel, event._pChannel);
- std::swap(_what, event._what);
-}
-
-
-} // namespace Poco
diff --git a/Foundation/src/AsyncStreamChannel.cpp b/Foundation/src/AsyncStreamChannel.cpp
deleted file mode 100644
index d7bf42227..000000000
--- a/Foundation/src/AsyncStreamChannel.cpp
+++ /dev/null
@@ -1,100 +0,0 @@
-//
-// AsyncStreamChannel.cpp
-//
-// $Id: //poco/svn/Foundation/src/AsyncStreamChannel.cpp#2 $
-//
-// Library: Foundation
-// Package: AsyncIO
-// Module: AsyncStreamChannel
-//
-// Copyright (c) 2007, Applied Informatics Software Engineering GmbH.
-// and Contributors.
-//
-// Permission is hereby granted, free of charge, to any person or organization
-// obtaining a copy of the software and accompanying documentation covered by
-// this license (the "Software") to use, reproduce, display, distribute,
-// execute, and transmit the Software, and to prepare derivative works of the
-// Software, and to permit third-parties to whom the Software is furnished to
-// do so, all subject to the following:
-//
-// The copyright notices in the Software and this entire statement, including
-// the above license grant, this restriction and the following disclaimer,
-// must be included in all copies of the Software, in whole or in part, and
-// all derivative works of the Software, unless such copies or derivative
-// works are solely in the form of machine-executable object code generated by
-// a source language processor.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
-// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
-// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
-// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-//
-
-
-#include "Poco/AsyncStreamChannel.h"
-#include "Poco/Exception.h"
-
-
-namespace Poco {
-
-
-AsyncStreamChannel::AsyncStreamChannel(std::istream& istr):
- _pIstr(&istr),
- _pOstr(0)
-{
-}
-
-
-AsyncStreamChannel::AsyncStreamChannel(std::ostream& ostr):
- _pIstr(0),
- _pOstr(&ostr)
-{
-}
-
-
-AsyncStreamChannel::AsyncStreamChannel(std::iostream& iostr):
- _pIstr(&iostr),
- _pOstr(&iostr)
-{
-}
-
-
-AsyncStreamChannel::~AsyncStreamChannel()
-{
-}
-
-
-int AsyncStreamChannel::write(const void* buffer, int length)
-{
- if (_pOstr)
- {
- _pOstr->write(reinterpret_cast(buffer), length);
- return length;
- }
- else throw IOException("Cannot write to an input stream");
-}
-
-
-int AsyncStreamChannel::read(void* buffer, int length)
-{
- if (_pIstr)
- return static_cast(_pIstr->read(reinterpret_cast(buffer), length).gcount());
- else
- throw IOException("Cannot read from an output stream");
-}
-
-
-int AsyncStreamChannel::seek(std::streamoff off, std::ios::seekdir dir)
-{
- if (_pIstr)
- _pIstr->seekg(off, dir);
- if (_pOstr)
- _pOstr->seekp(off, dir);
- return 0;
-}
-
-
-} // namespace Poco
diff --git a/Foundation/src/IOChannel.cpp b/Foundation/src/IOChannel.cpp
deleted file mode 100644
index 385dfc067..000000000
--- a/Foundation/src/IOChannel.cpp
+++ /dev/null
@@ -1,93 +0,0 @@
-//
-// IOChannel.cpp
-//
-// $Id: //poco/svn/Foundation/src/IOChannel.cpp#2 $
-//
-// Library: Foundation
-// Package: IO
-// Module: IOChannel
-//
-// Copyright (c) 2007, Applied Informatics Software Engineering GmbH.
-// and Contributors.
-//
-// Permission is hereby granted, free of charge, to any person or organization
-// obtaining a copy of the software and accompanying documentation covered by
-// this license (the "Software") to use, reproduce, display, distribute,
-// execute, and transmit the Software, and to prepare derivative works of the
-// Software, and to permit third-parties to whom the Software is furnished to
-// do so, all subject to the following:
-//
-// The copyright notices in the Software and this entire statement, including
-// the above license grant, this restriction and the following disclaimer,
-// must be included in all copies of the Software, in whole or in part, and
-// all derivative works of the Software, unless such copies or derivative
-// works are solely in the form of machine-executable object code generated by
-// a source language processor.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
-// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
-// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
-// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-//
-
-
-#include "Poco/IOChannel.h"
-
-
-namespace Poco {
-
-
-IOChannel::IOChannel(const std::string& name):
- _name(name),
- _pConfig(new IOChannelConfig)
-{
-}
-
-
-IOChannel::IOChannel(IOChannelConfig* pConfig, const std::string& name):
- _name(name),
- _pConfig(pConfig)
-{
-}
-
-
-IOChannel::~IOChannel()
-{
-}
-
-
-char IOChannel::read()
-{
- char readBuf = 0;
- char* pReadBuf = &readBuf;
- readData(pReadBuf, 1);
- return readBuf;
-}
-
-
-std::string& IOChannel::read(std::string& buffer, int length)
-{
- buffer.clear();
- char* pBuf = 0;
- int len = 0;
-
- if (length > 0)
- {
- pBuf = static_cast(std::calloc(length, sizeof(char)));
- len = readData(pBuf, length);
- }
- else
- len = readData(pBuf); // must allocate buffer as needed
-
- if (len > 0) buffer.assign(pBuf, len);
-
- std::free(pBuf);
-
- return buffer;
-}
-
-
-} // namespace Poco
diff --git a/Foundation/src/IOChannelConfig.cpp b/Foundation/src/IOChannelConfig.cpp
deleted file mode 100644
index 32b1d789a..000000000
--- a/Foundation/src/IOChannelConfig.cpp
+++ /dev/null
@@ -1,67 +0,0 @@
-//
-// SerialConfig.cpp
-//
-// $Id: //poco/Main/IO/src/IOChannelConfig.cpp#1 $
-//
-// Library: Foundation
-// Package: IO
-// Module: IOChannelConfig
-//
-// Copyright (c) 2006, Applied Informatics Software Engineering GmbH.
-// and Contributors.
-//
-// Permission is hereby granted, free of charge, to any person or organization
-// obtaining a copy of the software and accompanying documentation covered by
-// this license (the "Software") to use, reproduce, display, distribute,
-// execute, and transmit the Software, and to prepare derivative works of the
-// Software, and to permit third-parties to whom the Software is furnished to
-// do so, all subject to the following:
-//
-// The copyright notices in the Software and this entire statement, including
-// the above license grant, this restriction and the following disclaimer,
-// must be included in all copies of the Software, in whole or in part, and
-// all derivative works of the Software, unless such copies or derivative
-// works are solely in the form of machine-executable object code generated by
-// a source language processor.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
-// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
-// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
-// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-//
-
-
-#include "Poco/IOChannelConfig.h"
-#include "Poco/Exception.h"
-
-
-namespace Poco {
-
-
-IOChannelConfig::IOChannelConfig(const std::string& name, ChannelType type, int timeoutMS):
- _name(name),
- _type(type),
- _timeoutMS(timeoutMS)
-{
-}
-
-
-IOChannelConfig::~IOChannelConfig()
-{
-}
-
-
-
-void IOChannelConfig::setTimeout(int timeoutMS)
-{
- if (timeoutMS < 0 && INFINITE_TIMEOUT != timeoutMS)
- throw InvalidArgumentException("Invalid timeout value");
-
- _timeoutMS = timeoutMS;
-}
-
-
-} // namespace Poco::IO
diff --git a/Foundation/src/IOChannelStream.cpp b/Foundation/src/IOChannelStream.cpp
deleted file mode 100644
index b22c2c434..000000000
--- a/Foundation/src/IOChannelStream.cpp
+++ /dev/null
@@ -1,111 +0,0 @@
-//
-// DigestStream.cpp
-//
-// $Id: //poco/1.2/IO/src/IOChannelStream.cpp#1 $
-//
-// Library: IO
-// Package: IO
-// Module: IOChannelStream
-//
-// Copyright (c) 2004-2006, Applied Informatics Software Engineering GmbH.
-// and Contributors.
-//
-// Permission is hereby granted, free of charge, to any person or organization
-// obtaining a copy of the software and accompanying documentation covered by
-// this license (the "Software") to use, reproduce, display, distribute,
-// execute, and transmit the Software, and to prepare derivative works of the
-// Software, and to permit third-parties to whom the Software is furnished to
-// do so, all subject to the following:
-//
-// The copyright notices in the Software and this entire statement, including
-// the above license grant, this restriction and the following disclaimer,
-// must be included in all copies of the Software, in whole or in part, and
-// all derivative works of the Software, unless such copies or derivative
-// works are solely in the form of machine-executable object code generated by
-// a source language processor.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
-// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
-// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
-// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-//
-
-
-#include "Poco/IOChannelStream.h"
-
-
-namespace Poco {
-
-
-IOChannelStreamBuf::IOChannelStreamBuf(IOChannel& channel): _channel(channel)
-{
-}
-
-
-IOChannelStreamBuf::~IOChannelStreamBuf()
-{
-}
-
-
-void IOChannelStreamBuf::close()
-{
- _channel.close();
-}
-
-
-UnbufferedStreamBuf::int_type IOChannelStreamBuf::readFromDevice()
-{
- return charToInt(_channel.read());
-}
-
-
-UnbufferedStreamBuf::int_type IOChannelStreamBuf::writeToDevice(char c)
-{
- return _channel.write(c);
-}
-
-
-IOChannelIOS::IOChannelIOS(IOChannel& channel, openmode mode) :_buf(channel)
-{
- poco_ios_init(&_buf);
-}
-
-
-IOChannelIOS::~IOChannelIOS()
-{
-}
-
-
-IOChannelStreamBuf* IOChannelIOS::rdbuf()
-{
- return &_buf;
-}
-
-
-IOChannelOutputStream::IOChannelOutputStream(IOChannel& channel):
- IOChannelIOS(channel, std::ios::out),
- std::ostream(&_buf)
-{
-}
-
-
-IOChannelOutputStream::~IOChannelOutputStream()
-{
-}
-
-
-IOChannelInputStream::IOChannelInputStream(IOChannel& channel):
- IOChannelIOS(channel, std::ios::in),
- std::istream(&_buf)
-{
-}
-
-IOChannelInputStream::~IOChannelInputStream()
-{
-}
-
-
-} // namespace Poco
diff --git a/Foundation/testsuite/src/AsyncIOChannelTest.cpp b/Foundation/testsuite/src/AsyncIOChannelTest.cpp
deleted file mode 100644
index cc9a0f545..000000000
--- a/Foundation/testsuite/src/AsyncIOChannelTest.cpp
+++ /dev/null
@@ -1,183 +0,0 @@
-//
-// AsyncIOChannelTest.cpp
-//
-// $Id: //poco/svn/Foundation/testsuite/src/AsyncIOChannelTest.cpp#2 $
-//
-// Copyright (c) 2007, Applied Informatics Software Engineering GmbH.
-// and Contributors.
-//
-// Permission is hereby granted, free of charge, to any person or organization
-// obtaining a copy of the software and accompanying documentation covered by
-// this license (the "Software") to use, reproduce, display, distribute,
-// execute, and transmit the Software, and to prepare derivative works of the
-// Software, and to permit third-parties to whom the Software is furnished to
-// do so, all subject to the following:
-//
-// The copyright notices in the Software and this entire statement, including
-// the above license grant, this restriction and the following disclaimer,
-// must be included in all copies of the Software, in whole or in part, and
-// all derivative works of the Software, unless such copies or derivative
-// works are solely in the form of machine-executable object code generated by
-// a source language processor.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
-// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
-// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
-// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-//
-
-
-#include "AsyncIOChannelTest.h"
-#include "CppUnit/TestCaller.h"
-#include "CppUnit/TestSuite.h"
-#include "Poco/AsyncStreamChannel.h"
-#include "Poco/AsyncIOCommand.h"
-#include "Poco/AsyncIOEvent.h"
-#include "Poco/Delegate.h"
-#include
-
-
-using Poco::AsyncStreamChannel;
-using Poco::AsyncIOCommand;
-using Poco::AsyncReadCommand;
-using Poco::AsyncWriteCommand;
-using Poco::AsyncSeekCommand;
-using Poco::AsyncIOEvent;
-using Poco::ActiveResult;
-using Poco::delegate;
-
-
-AsyncIOChannelTest::AsyncIOChannelTest(const std::string& name):
- CppUnit::TestCase(name),
- _completed(0),
- _failed(0)
-{
-}
-
-
-AsyncIOChannelTest::~AsyncIOChannelTest()
-{
-}
-
-
-void AsyncIOChannelTest::testWrite()
-{
- std::stringstream str;
- AsyncStreamChannel channel(str);
- channel.enqueue(new AsyncWriteCommand("Hello", 5));
- channel.enqueue(new AsyncWriteCommand(", ", 2));
- ActiveResult result = channel.enqueue(new AsyncWriteCommand("world!", 6));
- result.wait();
- std::string s(str.str());
- assert (s == "Hello, world!");
-}
-
-
-void AsyncIOChannelTest::testRead()
-{
- std::istringstream istr("Hello, world!");
- char buffer[16];
- AsyncStreamChannel channel(istr);
- ActiveResult result = channel.enqueue(new AsyncReadCommand(buffer, sizeof(buffer)));
- result.wait();
- std::string s(buffer, result.data());
- assert (s == "Hello, world!");
-}
-
-
-void AsyncIOChannelTest::testSeek()
-{
- std::istringstream istr("Hello, world!");
- char buffer[16];
- AsyncStreamChannel channel(istr);
- channel.enqueue(new AsyncSeekCommand(7, std::ios::beg));
- ActiveResult result = channel.enqueue(new AsyncReadCommand(buffer, 5));
- result.wait();
- std::string s(buffer, result.data());
- assert (s == "world");
-}
-
-
-void AsyncIOChannelTest::testEvents()
-{
- std::stringstream str;
- AsyncStreamChannel channel(str);
- AsyncIOCommand::Ptr pWrite(new AsyncWriteCommand("Hello, world!", 13));
- pWrite->commandCompleted += delegate(this, &AsyncIOChannelTest::onCompleted);
- channel.commandCompleted += delegate(this, &AsyncIOChannelTest::onCompleted);
- assert (pWrite->state() == AsyncIOCommand::CMD_PENDING);
- ActiveResult result = channel.enqueue(pWrite);
- pWrite->wait();
- result.wait();
- assert (pWrite->succeeded());
- assert (!pWrite->failed());
- assert (pWrite->state() == AsyncIOCommand::CMD_COMPLETED);
- assert (pWrite->result() == 13);
- assert (pWrite->exception() == 0);
- assert (_completed == 2);
-
- reset();
-
- std::istringstream istr;
- AsyncStreamChannel ichannel(istr);
- pWrite = new AsyncWriteCommand("Hello, world!", 13);
- pWrite->commandFailed += delegate(this, &AsyncIOChannelTest::onFailed);
- ichannel.commandFailed += delegate(this, &AsyncIOChannelTest::onFailed);
- pWrite->commandCompleted += delegate(this, &AsyncIOChannelTest::onCompleted);
- ichannel.commandCompleted += delegate(this, &AsyncIOChannelTest::onCompleted);
- assert (pWrite->state() == AsyncIOCommand::CMD_PENDING);
- result = ichannel.enqueue(pWrite);
- pWrite->wait();
- result.wait();
- assert (!pWrite->succeeded());
- assert (pWrite->failed());
- assert (pWrite->exception() != 0);
- assert (_completed == 0);
- assert (_failed == 2);
-}
-
-
-void AsyncIOChannelTest::setUp()
-{
- reset();
-}
-
-
-void AsyncIOChannelTest::tearDown()
-{
-}
-
-
-void AsyncIOChannelTest::reset()
-{
- _completed = 0;
- _failed = 0;
-}
-
-
-void AsyncIOChannelTest::onCompleted(const void* sender, Poco::AsyncIOEvent& event)
-{
- ++_completed;
-}
-
-
-void AsyncIOChannelTest::onFailed(const void* sender, Poco::AsyncIOEvent& event)
-{
- ++_failed;
-}
-
-
-CppUnit::Test* AsyncIOChannelTest::suite()
-{
- CppUnit::TestSuite* pSuite = new CppUnit::TestSuite("AsyncIOChannelTest");
-
- CppUnit_addTest(pSuite, AsyncIOChannelTest, testWrite);
- CppUnit_addTest(pSuite, AsyncIOChannelTest, testRead);
- CppUnit_addTest(pSuite, AsyncIOChannelTest, testSeek);
- CppUnit_addTest(pSuite, AsyncIOChannelTest, testEvents);
-
- return pSuite;
-}
diff --git a/Foundation/testsuite/src/AsyncIOChannelTest.h b/Foundation/testsuite/src/AsyncIOChannelTest.h
deleted file mode 100644
index 82d290aac..000000000
--- a/Foundation/testsuite/src/AsyncIOChannelTest.h
+++ /dev/null
@@ -1,71 +0,0 @@
-//
-// AsyncIOChannelTest.h
-//
-// $Id: //poco/svn/Foundation/testsuite/src/AsyncIOChannelTest.h#2 $
-//
-// Definition of the AsyncIOChannelTest class.
-//
-// Copyright (c) 2007, Applied Informatics Software Engineering GmbH.
-// and Contributors.
-//
-// Permission is hereby granted, free of charge, to any person or organization
-// obtaining a copy of the software and accompanying documentation covered by
-// this license (the "Software") to use, reproduce, display, distribute,
-// execute, and transmit the Software, and to prepare derivative works of the
-// Software, and to permit third-parties to whom the Software is furnished to
-// do so, all subject to the following:
-//
-// The copyright notices in the Software and this entire statement, including
-// the above license grant, this restriction and the following disclaimer,
-// must be included in all copies of the Software, in whole or in part, and
-// all derivative works of the Software, unless such copies or derivative
-// works are solely in the form of machine-executable object code generated by
-// a source language processor.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
-// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
-// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
-// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-//
-
-
-#ifndef AsyncIOChannelTest_INCLUDED
-#define AsyncIOChannelTest_INCLUDED
-
-
-#include "Poco/Foundation.h"
-#include "CppUnit/TestCase.h"
-#include "Poco/AsyncIOEvent.h"
-
-
-class AsyncIOChannelTest: public CppUnit::TestCase
-{
-public:
- AsyncIOChannelTest(const std::string& name);
- ~AsyncIOChannelTest();
-
- void testWrite();
- void testRead();
- void testSeek();
- void testEvents();
-
- void setUp();
- void tearDown();
-
- static CppUnit::Test* suite();
-
-protected:
- void reset();
- void onCompleted(const void* sender, Poco::AsyncIOEvent& event);
- void onFailed(const void* sender, Poco::AsyncIOEvent& event);
-
-private:
- int _completed;
- int _failed;
-};
-
-
-#endif // AsyncIOChannelTest_INCLUDED
diff --git a/Foundation/testsuite/src/AsyncIOTestSuite.cpp b/Foundation/testsuite/src/AsyncIOTestSuite.cpp
deleted file mode 100644
index 2947654e5..000000000
--- a/Foundation/testsuite/src/AsyncIOTestSuite.cpp
+++ /dev/null
@@ -1,44 +0,0 @@
-//
-// AsyncIOTestSuite.cpp
-//
-// $Id: //poco/svn/Foundation/testsuite/src/AsyncIOTestSuite.cpp#2 $
-//
-// Copyright (c) 2007, Applied Informatics Software Engineering GmbH.
-// and Contributors.
-//
-// Permission is hereby granted, free of charge, to any person or organization
-// obtaining a copy of the software and accompanying documentation covered by
-// this license (the "Software") to use, reproduce, display, distribute,
-// execute, and transmit the Software, and to prepare derivative works of the
-// Software, and to permit third-parties to whom the Software is furnished to
-// do so, all subject to the following:
-//
-// The copyright notices in the Software and this entire statement, including
-// the above license grant, this restriction and the following disclaimer,
-// must be included in all copies of the Software, in whole or in part, and
-// all derivative works of the Software, unless such copies or derivative
-// works are solely in the form of machine-executable object code generated by
-// a source language processor.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
-// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
-// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
-// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-//
-
-
-#include "AsyncIOTestSuite.h"
-#include "AsyncIOChannelTest.h"
-
-
-CppUnit::Test* AsyncIOTestSuite::suite()
-{
- CppUnit::TestSuite* pSuite = new CppUnit::TestSuite("AsyncIOTestSuite");
-
- pSuite->addTest(AsyncIOChannelTest::suite());
-
- return pSuite;
-}
diff --git a/Foundation/testsuite/src/AsyncIOTestSuite.h b/Foundation/testsuite/src/AsyncIOTestSuite.h
deleted file mode 100644
index b63ceb908..000000000
--- a/Foundation/testsuite/src/AsyncIOTestSuite.h
+++ /dev/null
@@ -1,49 +0,0 @@
-//
-// AsyncIOTestSuite.h
-//
-// $Id: //poco/svn/Foundation/testsuite/src/AsyncIOTestSuite.h#2 $
-//
-// Definition of the AsyncIOTestSuite class.
-//
-// Copyright (c) 2007, Applied Informatics Software Engineering GmbH.
-// and Contributors.
-//
-// Permission is hereby granted, free of charge, to any person or organization
-// obtaining a copy of the software and accompanying documentation covered by
-// this license (the "Software") to use, reproduce, display, distribute,
-// execute, and transmit the Software, and to prepare derivative works of the
-// Software, and to permit third-parties to whom the Software is furnished to
-// do so, all subject to the following:
-//
-// The copyright notices in the Software and this entire statement, including
-// the above license grant, this restriction and the following disclaimer,
-// must be included in all copies of the Software, in whole or in part, and
-// all derivative works of the Software, unless such copies or derivative
-// works are solely in the form of machine-executable object code generated by
-// a source language processor.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
-// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
-// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
-// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-//
-
-
-#ifndef AsyncIOTestSuite_INCLUDED
-#define AsyncIOTestSuite_INCLUDED
-
-
-#include "CppUnit/TestSuite.h"
-
-
-class AsyncIOTestSuite
-{
-public:
- static CppUnit::Test* suite();
-};
-
-
-#endif // AsyncIOTestSuite_INCLUDED
diff --git a/Net/Makefile b/Net/Makefile
index dbef6dbf9..39ef96ed5 100644
--- a/Net/Makefile
+++ b/Net/Makefile
@@ -29,8 +29,7 @@ objects = \
MailRecipient MailMessage MailStream SMTPClientSession POP3ClientSession \
RawSocket RawSocketImpl ICMPClient ICMPEventArgs ICMPPacket ICMPPacketImpl \
ICMPSocket ICMPSocketImpl ICMPv4PacketImpl \
- RemoteSyslogChannel RemoteSyslogListener SMTPChannel \
- AsyncSocketChannel SocketIOChannel
+ RemoteSyslogChannel RemoteSyslogListener SMTPChannel
target = PocoNet
target_version = $(LIBVERSION)
diff --git a/Net/Net_vs80.vcproj b/Net/Net_vs80.vcproj
index b7d306a4f..d8c03bb1a 100644
--- a/Net/Net_vs80.vcproj
+++ b/Net/Net_vs80.vcproj
@@ -1207,46 +1207,6 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Net/include/Poco/Net/AsyncSocketChannel.h b/Net/include/Poco/Net/AsyncSocketChannel.h
deleted file mode 100644
index a24b14fd1..000000000
--- a/Net/include/Poco/Net/AsyncSocketChannel.h
+++ /dev/null
@@ -1,84 +0,0 @@
-//
-// AsyncSocketChannel.h
-//
-// $Id: //poco/svn/Net/include/Poco/Net/AsyncSocketChannel.h#2 $
-//
-// Library: Net
-// Package: AsyncIO
-// Module: AsyncSocketChannel
-//
-// Definition of the AsyncSocketChannel class.
-//
-// Copyright (c) 2007, Applied Informatics Software Engineering GmbH.
-// and Contributors.
-//
-// Permission is hereby granted, free of charge, to any person or organization
-// obtaining a copy of the software and accompanying documentation covered by
-// this license (the "Software") to use, reproduce, display, distribute,
-// execute, and transmit the Software, and to prepare derivative works of the
-// Software, and to permit third-parties to whom the Software is furnished to
-// do so, all subject to the following:
-//
-// The copyright notices in the Software and this entire statement, including
-// the above license grant, this restriction and the following disclaimer,
-// must be included in all copies of the Software, in whole or in part, and
-// all derivative works of the Software, unless such copies or derivative
-// works are solely in the form of machine-executable object code generated by
-// a source language processor.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
-// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
-// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
-// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-//
-
-
-#ifndef Net_AsyncSocketChannel_INCLUDED
-#define Net_AsyncSocketChannel_INCLUDED
-
-
-#include "Poco/Net/Net.h"
-#include "Poco/Net/StreamSocket.h"
-#include "Poco/AsyncIOChannel.h"
-
-
-namespace Poco {
-namespace Net {
-
-
-class Net_API AsyncSocketChannel: public Poco::AsyncIOChannel
- /// AsyncSocketChannel provides an AsyncIOChannel for a StreamSocket.
- ///
- /// Usage Example:
- /// StreamSocket socket(...);
- /// AsyncSocketChannel channel(socket);
- /// channel.enqueue(new AsyncWriteCommand("Hello", 5));
- /// channel.enqueue(new AsyncWriteCommand(", ", 2));
- /// ActiveResult result = channel.enqueue(new AsyncWriteCommand("world!", 6));
- /// result.wait();
-{
-public:
- AsyncSocketChannel(const StreamSocket& socket);
- /// Creates an AsyncSocketChannel using the given StreamSocket.
-
- ~AsyncSocketChannel();
- /// Destroys the AsyncSocketChannel.
-
- // AsyncIOChannel
- int write(const void* buffer, int length);
- int read(void* buffer, int length);
-
-private:
- AsyncSocketChannel();
-
- StreamSocket _socket;
-};
-
-
-} } // namespace Poco::Net
-
-
-#endif // Net_AsyncSocketChannel_INCLUDED
diff --git a/Net/include/Poco/Net/SocketIOChannel.h b/Net/include/Poco/Net/SocketIOChannel.h
deleted file mode 100644
index 7e3617445..000000000
--- a/Net/include/Poco/Net/SocketIOChannel.h
+++ /dev/null
@@ -1,138 +0,0 @@
-//
-// SocketIOChannel.h
-//
-// $Id: //poco/Main/Data/include/Poco/Net/SocketIOChannel.h#1 $
-//
-// Library: Net
-// Package: IO
-// Module: SocketIOChannel
-//
-// Definition of the SocketIOChannel class.
-//
-// Copyright (c) 2006, Applied Informatics Software Engineering GmbH.
-// and Contributors.
-//
-// Permission is hereby granted, free of charge, to any person or organization
-// obtaining a copy of the software and accompanying documentation covered by
-// this license (the "Software") to use, reproduce, display, distribute,
-// execute, and transmit the Software, and to prepare derivative works of the
-// Software, and to permit third-parties to whom the Software is furnished to
-// do so, all subject to the following:
-//
-// The copyright notices in the Software and this entire statement, including
-// the above license grant, this restriction and the following disclaimer,
-// must be included in all copies of the Software, in whole or in part, and
-// all derivative works of the Software, unless such copies or derivative
-// works are solely in the form of machine-executable object code generated by
-// a source language processor.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
-// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
-// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
-// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-//
-
-
-#ifndef Net_SocketIOChannel_INCLUDED
-#define Net_SocketIOChannel_INCLUDED
-
-
-#include "Poco/Net/Net.h"
-#include "Poco/IOChannel.h"
-#include "Poco/IOChannelConfig.h"
-#include "Poco/Net/Socket.h"
-#include "Poco/Net/SocketImpl.h"
-#include "Poco/Net/StreamSocket.h"
-#include "Poco/Net/DatagramSocket.h"
-
-
-namespace Poco {
-namespace Net {
-
-
-class Net_API SocketIOChannel: public Poco::IOChannel
- /// Wraps a socket into IO channel interface.
- /// Both stream and datagram sockets are supported.
-{
-public:
- SocketIOChannel(IOChannelConfig* pConfig);
- /// Creates SocketIOChannel.
-
- ~SocketIOChannel();
- /// Destroys SocketIOChannel.
-
- void open();
- /// Opens SocketIOChannel.
-
- void close();
- /// Closes SocketIOChannel.
-
- bool isStream();
- /// Returns true if SocketIOChannel currently wraps stream socket.
-
- bool isDatagram();
- /// Returns true if SocketIOChannel currently wraps datagram socket.
-
-private:
- SocketIOChannel(const SocketIOChannel&);
- const SocketIOChannel& operator=(const SocketIOChannel&);
-
- void init();
-
- int readData(char* pReadBuf, int length);
- int readData(char*& pReadBuf);
- int writeData(const char* buffer, int length);
-
- Poco::Net::Socket& socket();
- Poco::Net::SocketImpl* socketImpl();
-
- Poco::Net::Socket* _pSocket;
-};
-
-
-//
-// inlines
-//
-
-
-inline Poco::Net::Socket& SocketIOChannel::socket()
-{
- if (!_pSocket) init();
-
- return *_pSocket;
-}
-
-
-inline Poco::Net::SocketImpl* SocketIOChannel::socketImpl()
-{
- return socket().impl();
-}
-
-
-inline void SocketIOChannel::close()
-{
- socketImpl()->close();
- delete _pSocket;
- _pSocket = 0;
-}
-
-
-inline bool SocketIOChannel::isStream()
-{
- return Poco::IOChannelConfig::CONNECTION_CHANNEL == config().getType();
-}
-
-
-inline bool SocketIOChannel::isDatagram()
-{
- return Poco::IOChannelConfig::CONNECTIONLESS_CHANNEL == config().getType();
-}
-
-
-} } // namespace Poco::Net
-
-
-#endif // Net_SocketIOChannel_INCLUDED
diff --git a/Net/src/AsyncSocketChannel.cpp b/Net/src/AsyncSocketChannel.cpp
deleted file mode 100644
index 6b1de5a05..000000000
--- a/Net/src/AsyncSocketChannel.cpp
+++ /dev/null
@@ -1,67 +0,0 @@
-//
-// AsyncSocketChannel.cpp
-//
-// $Id: //poco/svn/Net/src/AsyncSocketChannel.cpp#2 $
-//
-// Library: Net
-// Package: AsyncIO
-// Module: AsyncSocketChannel
-//
-// Copyright (c) 2007, Applied Informatics Software Engineering GmbH.
-// and Contributors.
-//
-// Permission is hereby granted, free of charge, to any person or organization
-// obtaining a copy of the software and accompanying documentation covered by
-// this license (the "Software") to use, reproduce, display, distribute,
-// execute, and transmit the Software, and to prepare derivative works of the
-// Software, and to permit third-parties to whom the Software is furnished to
-// do so, all subject to the following:
-//
-// The copyright notices in the Software and this entire statement, including
-// the above license grant, this restriction and the following disclaimer,
-// must be included in all copies of the Software, in whole or in part, and
-// all derivative works of the Software, unless such copies or derivative
-// works are solely in the form of machine-executable object code generated by
-// a source language processor.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
-// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
-// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
-// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-//
-
-
-#include "Poco/Net/AsyncSocketChannel.h"
-
-
-namespace Poco {
-namespace Net {
-
-
-AsyncSocketChannel::AsyncSocketChannel(const StreamSocket& socket):
- _socket(socket)
-{
-}
-
-
-AsyncSocketChannel::~AsyncSocketChannel()
-{
-}
-
-
-int AsyncSocketChannel::write(const void* buffer, int length)
-{
- return _socket.sendBytes(buffer, length);
-}
-
-
-int AsyncSocketChannel::read(void* buffer, int length)
-{
- return _socket.receiveBytes(buffer, length);
-}
-
-
-} } // namespace Poco::Net
diff --git a/Net/src/SocketIOChannel.cpp b/Net/src/SocketIOChannel.cpp
deleted file mode 100644
index 030782bad..000000000
--- a/Net/src/SocketIOChannel.cpp
+++ /dev/null
@@ -1,180 +0,0 @@
-//
-// SocketIOChannel.cpp
-//
-// $Id: //poco/Main/IO/src/SocketIOChannel.cpp#1 $
-//
-// Library: Net
-// Package: IO
-// Module: SocketIOChannel
-//
-// Copyright (c) 2006, Applied Informatics Software Engineering GmbH.
-// and Contributors.
-//
-// Permission is hereby granted, free of charge, to any person or organization
-// obtaining a copy of the software and accompanying documentation covered by
-// this license (the "Software") to use, reproduce, display, distribute,
-// execute, and transmit the Software, and to prepare derivative works of the
-// Software, and to permit third-parties to whom the Software is furnished to
-// do so, all subject to the following:
-//
-// The copyright notices in the Software and this entire statement, including
-// the above license grant, this restriction and the following disclaimer,
-// must be included in all copies of the Software, in whole or in part, and
-// all derivative works of the Software, unless such copies or derivative
-// works are solely in the form of machine-executable object code generated by
-// a source language processor.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
-// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
-// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
-// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-//
-
-
-#include "Poco/Net/SocketIOChannel.h"
-#include "Poco/Exception.h"
-#include "Poco/Net/SocketImpl.h"
-
-
-using Poco::InvalidArgumentException;
-using Poco::Net::SocketImpl;
-
-
-namespace Poco {
-namespace Net {
-
-
-SocketIOChannel::SocketIOChannel(IOChannelConfig* pConfig):
- IOChannel(pConfig),
- _pSocket(0)
-{
- init();
-}
-
-
-SocketIOChannel::~SocketIOChannel()
-{
- delete _pSocket;
-}
-
-
-void SocketIOChannel::init()
-{
- delete _pSocket;
-
- if (isStream())
- _pSocket = new Poco::Net::StreamSocket();
- else if (isDatagram())
- _pSocket = new Poco::Net::DatagramSocket();
- else
- throw IllegalStateException();
-
- poco_check_ptr (_pSocket);
-
- open();
- if (!_pSocket) throw NullPointerException();
-}
-
-
-void SocketIOChannel::open()
-{
- Poco::Timespan timeout(config().getTimeout() * Timespan::MILLISECONDS);
- SocketAddress address(config().getName());
- try
- {
- if (isStream() && timeout != IOChannelConfig::INFINITE_TIMEOUT)
- socketImpl()->connect(address, timeout);
- else
- socketImpl()->connect(address);
-
- socketImpl()->setBlocking(false);
- }
- catch (Exception&)
- {
- close();
- }
-}
-
-
-int SocketIOChannel::readData(char*& pReadBuf)
-{
- int bufSize = socketImpl()->getReceiveBufferSize();
- char* pBuffer = new char[bufSize];
- int size = 0;
-
- try
- {
- int read = 0;
- do
- {
- read = readData(pBuffer, bufSize);
-
- if (read > 0)
- {
- pReadBuf = static_cast(std::realloc(pReadBuf, size + read));
- std::memcpy(pReadBuf + size, pBuffer, read);
- size += read;
- }
- else break;
- } while (true);
- }
- catch (TimeoutException&)
- {
- }
- catch (Exception&)
- {
- delete [] pBuffer;
- throw;
- }
-
- delete [] pBuffer;
- return size;
-}
-
-
-int SocketIOChannel::readData(char* pBuffer, int length)
-{
- int received = 0;
-
- try
- {
- if (!socketImpl()->poll(config().getTimeout(), SocketImpl::SELECT_READ))
- throw TimeoutException("read timed out", socketImpl()->address().toString());
- received = socketImpl()->receiveBytes(pBuffer, (int) length);
- }
- catch (Poco::Exception&)
- {
- socketImpl()->setBlocking(true);
- throw;
- }
-
- return received;
-}
-
-
-int SocketIOChannel::writeData(const char* pBuffer, int length)
-{
- int sent = 0;
- socketImpl()->setBlocking(false);
-
- try
- {
- if (!socketImpl()->poll(config().getTimeout(), SocketImpl::SELECT_WRITE))
- throw Poco::TimeoutException("write timed out", socketImpl()->address().toString());
- sent = socketImpl()->sendBytes(pBuffer, (int) length);
- socketImpl()->setBlocking(true);
- }
- catch (Poco::Exception&)
- {
- socketImpl()->setBlocking(true);
- throw;
- }
-
- return sent;
-}
-
-
-} } // namespace Poco::Net
diff --git a/Net/testsuite/Makefile b/Net/testsuite/Makefile
index 146b43575..fa5065028 100644
--- a/Net/testsuite/Makefile
+++ b/Net/testsuite/Makefile
@@ -25,7 +25,7 @@ objects = \
MailTestSuite MailMessageTest MailStreamTest \
SMTPClientSessionTest POP3ClientSessionTest \
RawSocketTest ICMPClientTest ICMPSocketTest ICMPClientTestSuite \
- SyslogTest SocketIOChannelTestSuite SocketIOChannelTest
+ SyslogTest
target = testrunner
target_version = 1
diff --git a/Net/testsuite/TestSuite_vs80.vcproj b/Net/testsuite/TestSuite_vs80.vcproj
index 870d4a50e..6da477302 100644
--- a/Net/testsuite/TestSuite_vs80.vcproj
+++ b/Net/testsuite/TestSuite_vs80.vcproj
@@ -976,34 +976,6 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Net/testsuite/src/NetTestSuite.cpp b/Net/testsuite/src/NetTestSuite.cpp
index 0ae4dffa4..8a40f8392 100644
--- a/Net/testsuite/src/NetTestSuite.cpp
+++ b/Net/testsuite/src/NetTestSuite.cpp
@@ -44,7 +44,6 @@
#include "MailTestSuite.h"
#include "ICMPClientTestSuite.h"
#include "SyslogTest.h"
-#include "SocketIOChannelTest.h"
CppUnit::Test* NetTestSuite::suite()
@@ -64,7 +63,6 @@ CppUnit::Test* NetTestSuite::suite()
pSuite->addTest(MailTestSuite::suite());
pSuite->addTest(ICMPClientTestSuite::suite());
pSuite->addTest(SyslogTest::suite());
- pSuite->addTest(SocketIOChannelTest::suite());
return pSuite;
}
diff --git a/Net/testsuite/src/SocketIOChannelTest.cpp b/Net/testsuite/src/SocketIOChannelTest.cpp
deleted file mode 100644
index 08c9b4f94..000000000
--- a/Net/testsuite/src/SocketIOChannelTest.cpp
+++ /dev/null
@@ -1,465 +0,0 @@
-//
-// SocketIOChannelTest.cpp
-//
-// $Id: //poco/Main/template/test.cpp#6 $
-//
-// Copyright (c) 2006, Applied Informatics Software Engineering GmbH.
-// and Contributors.
-//
-// Permission is hereby granted, free of charge, to any person or organization
-// obtaining a copy of the software and accompanying documentation covered by
-// this license (the "Software") to use, reproduce, display, distribute,
-// execute, and transmit the Software, and to prepare derivative works of the
-// Software, and to permit third-parties to whom the Software is furnished to
-// do so, all subject to the following:
-//
-// The copyright notices in the Software and this entire statement, including
-// the above license grant, this restriction and the following disclaimer,
-// must be included in all copies of the Software, in whole or in part, and
-// all derivative works of the Software, unless such copies or derivative
-// works are solely in the form of machine-executable object code generated by
-// a source language processor.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
-// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
-// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
-// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-//
-
-
-#include "SocketIOChannelTest.h"
-#include "UDPEchoServer.h"
-#include "CppUnit/TestCaller.h"
-#include "CppUnit/TestSuite.h"
-#include "Poco/Types.h"
-#include "Poco/Format.h"
-#include "Poco/ActiveResult.h"
-#include "Poco/IOChannel.h"
-#include "Poco/IOChannelConfig.h"
-#include "Poco/Net/SocketIOChannel.h"
-#include "Poco/ActiveIOChannel.h"
-#include "Poco/Net/TCPServer.h"
-#include "Poco/Net/TCPServerConnection.h"
-#include "Poco/Net/TCPServerConnectionFactory.h"
-#include "Poco/Net/TCPServerParams.h"
-#include "Poco/Net/ServerSocket.h"
-#include "Poco/Net/StreamSocket.h"
-#include "Poco/Void.h"
-#include "Poco/Types.h"
-#include "Poco/Thread.h"
-#include "Poco/BinaryReader.h"
-#include "Poco/BinaryWriter.h"
-#include
-
-
-using Poco::UInt32;
-using Poco::Int64;
-using Poco::UInt64;
-using Poco::ActiveResult;
-using Poco::Void;
-using Poco::Thread;
-using Poco::format;
-using Poco::BinaryReader;
-using Poco::BinaryWriter;
-using Poco::IOChannel;
-using Poco::ActiveIOChannel;
-using Poco::IOChannelInputStream;
-using Poco::IOChannelOutputStream;
-using Poco::IOChannelConfig;
-using Poco::Net::SocketIOChannel;
-using Poco::Net::TCPServer;
-using Poco::Net::TCPServerConnection;
-using Poco::Net::TCPServerConnectionFactory;
-using Poco::Net::TCPServerConnectionFactoryImpl;
-using Poco::Net::TCPServerParams;
-using Poco::Net::ServerSocket;
-using Poco::Net::StreamSocket;
-
-
-namespace
-{
- class EchoConnection: public TCPServerConnection
- {
- public:
- EchoConnection(const StreamSocket& s): TCPServerConnection(s)
- {
- }
-
- void run()
- {
- StreamSocket& ss = socket();
- try
- {
- char buffer[256];
- int n = ss.receiveBytes(buffer, sizeof(buffer));
- while (n > 0)
- {
- ss.sendBytes(buffer, n);
- n = ss.receiveBytes(buffer, sizeof(buffer));
- }
- }
- catch (Poco::Exception& exc)
- {
- std::cerr << "EchoConnection: " << exc.displayText() << std::endl;
- }
- }
- };
-}
-
-
-SocketIOChannelTest::SocketIOChannelTest(const std::string& name):
- CppUnit::TestCase(name)
-{
-}
-
-
-SocketIOChannelTest::~SocketIOChannelTest()
-{
-}
-
-
-void SocketIOChannelTest::testChannelStream()
-{
- ServerSocket svs(0);
- TCPServer srv(new TCPServerConnectionFactoryImpl(), svs);
- srv.start();
- assert (srv.currentConnections() == 0);
- assert (srv.currentThreads() == 0);
- assert (srv.queuedConnections() == 0);
- assert (srv.totalConnections() == 0);
-
- SocketIOChannel network(new IOChannelConfig(format("localhost:%hu", svs.address().port()),
- IOChannelConfig::CONNECTION_CHANNEL,
- 1000));
-
- std::string data("hello, world");
- network.write(data.data(), (int) data.size());
- char buffer[256];
- int n = network.read(buffer, sizeof(buffer));
- assert ((int) data.size() == n);
- assert (std::string(buffer, n) == data);
- assert (srv.currentConnections() == 1);
- assert (srv.currentThreads() == 1);
- assert (srv.queuedConnections() == 0);
- assert (srv.totalConnections() == 1);
- network.close();
- Thread::sleep(300);
- assert (srv.currentConnections() == 0);
-}
-
-
-void SocketIOChannelTest::testActiveChannelStream()
-{
- ServerSocket svs(0);
- TCPServer srv(new TCPServerConnectionFactoryImpl(), svs);
- srv.start();
-
- SocketIOChannel network(new IOChannelConfig(format("localhost:%hu", svs.address().port()),
- IOChannelConfig::CONNECTION_CHANNEL,
- 1000));
-
- std::string str1 = "1234567890";
- std::string str2 = "";
-
- ActiveIOChannel activeChannel(network);
- ActiveResult result1 = activeChannel.write(str1);
- result1.wait();
- ActiveResult result2 = activeChannel.read();
- result2.wait();
- assert("1234567890" == result2.data());
-}
-
-
-void SocketIOChannelTest::testStreamsStream()
-{
- ServerSocket svs(0);
- TCPServer srv(new TCPServerConnectionFactoryImpl(), svs);
- srv.start();
-
- SocketIOChannel net(new IOChannelConfig(format("localhost:%hu", svs.address().port()),
- IOChannelConfig::CONNECTION_CHANNEL,
- 1000));
-
- IOChannelOutputStream sos(net);
- IOChannelInputStream sis(net);
-
- sos << "1234567890\n";
- std::string str;
- sis >> str;
- assert("1234567890" == str);
-
- sos << 1.5;
- sos << "\n";
- sis >> str;
- assert("1.5" == str);
-}
-
-
-void SocketIOChannelTest::testBinaryStream()
-{
- ServerSocket svs(0);
- TCPServer srv(new TCPServerConnectionFactoryImpl(), svs);
- srv.start();
-
- SocketIOChannel net(new IOChannelConfig(format("localhost:%hu", svs.address().port()),
- IOChannelConfig::CONNECTION_CHANNEL,
- 1000));
-
- IOChannelOutputStream sos(net);
- IOChannelInputStream sis(net);
-
- BinaryWriter bw(sos);
- BinaryReader br(sis);
-
- writeBinary(bw);
- readBinary(br);
-}
-
-
-void SocketIOChannelTest::testChannelDatagram()
-{
- UDPEchoServer echoServer;
-
- SocketIOChannel network(new IOChannelConfig(format("localhost:%hu", echoServer.address().port()),
- IOChannelConfig::CONNECTIONLESS_CHANNEL,
- 1000));
-
- std::string data("hello, world");
- network.write(data.data(), (int) data.size());
- char buffer[256];
- int n = network.read(buffer, sizeof(buffer));
- assert (n > 0);
- assert (std::string(buffer, n) == data);
-}
-
-
-void SocketIOChannelTest::testActiveChannelDatagram()
-{
- UDPEchoServer echoServer;
-
- SocketIOChannel network(new IOChannelConfig(format("localhost:%hu", echoServer.address().port()),
- IOChannelConfig::CONNECTIONLESS_CHANNEL,
- 1000));
-
- std::string str1 = "1234567890";
- std::string str2 = "";
-
- ActiveIOChannel activeChannel(network);
- ActiveResult result1 = activeChannel.write(str1);
- result1.wait();
- ActiveResult result2 = activeChannel.read();
- result2.wait();
- assert("1234567890" == result2.data());
-}
-
-
-void SocketIOChannelTest::testStreamsDatagram()
-{
- UDPEchoServer echoServer;
-
- SocketIOChannel net(new IOChannelConfig(format("localhost:%hu", echoServer.address().port()),
- IOChannelConfig::CONNECTIONLESS_CHANNEL,
- 1000));
-
- IOChannelOutputStream sos(net);
- IOChannelInputStream sis(net);
-
- sos << "1234567890\n";
- std::string str;
- sis >> str;
- assert("1234567890" == str);
-
- sos << 1.5;
- sos << "\n";
- sis >> str;
- assert("1.5" == str);
-}
-
-
-void SocketIOChannelTest::testBinaryDatagram()
-{
- UDPEchoServer echoServer;
-
- SocketIOChannel net(new IOChannelConfig(format("localhost:%hu", echoServer.address().port()),
- IOChannelConfig::CONNECTIONLESS_CHANNEL,
- 1000));
-
- IOChannelOutputStream sos(net);
- IOChannelInputStream sis(net);
-
- BinaryWriter bw(sos);
- BinaryReader br(sis);
-
- writeBinary(bw);
- readBinary(br);
-}
-
-
-void SocketIOChannelTest::writeBinary(BinaryWriter& writer)
-{
- writer << true;
- writer << false;
- writer << 'a';
-
- writer << (short) -100;
- writer << (unsigned short) 50000;
- writer << -123456;
- writer << (unsigned) 123456;
- writer << (long) -1234567890;
- writer << (unsigned long) 1234567890;
-
-#if defined(POCO_HAVE_INT64)
- writer << (Int64) -1234567890;
- writer << (UInt64) 1234567890;
-#endif
-
- writer << (float) 1.5;
- writer << (double) -1.5;
-
- writer << "foo";
- writer << "";
-
- writer << std::string("bar");
- writer << std::string();
-
- writer.write7BitEncoded((UInt32) 100);
- writer.write7BitEncoded((UInt32) 1000);
- writer.write7BitEncoded((UInt32) 10000);
- writer.write7BitEncoded((UInt32) 100000);
- writer.write7BitEncoded((UInt32) 1000000);
-
-#if defined(POCO_HAVE_INT64)
- writer.write7BitEncoded((UInt64) 100);
- writer.write7BitEncoded((UInt64) 1000);
- writer.write7BitEncoded((UInt64) 10000);
- writer.write7BitEncoded((UInt64) 100000);
- writer.write7BitEncoded((UInt64) 1000000);
-#endif
-
- writer.writeRaw("RAW");
-}
-
-
-void SocketIOChannelTest::readBinary(BinaryReader& reader)
-{
- bool b = false;
- reader >> b;
- assert (b);
- reader >> b;
- assert (!b);
-
- char c = ' ';
- reader >> c;
- assert (c == 'a');
-
- short shortv = 0;
- reader >> shortv;
- assert (shortv == -100);
-
- unsigned short ushortv = 0;
- reader >> ushortv;
- assert (ushortv == 50000);
-
- int intv = 0;
- reader >> intv;
- assert (intv == -123456);
-
- unsigned uintv = 0;
- reader >> uintv;
- assert (uintv == 123456);
-
- long longv = 0;
- reader >> longv;
- assert (longv == -1234567890);
-
- unsigned long ulongv = 0;
- reader >> ulongv;
- assert (ulongv == 1234567890);
-
-#if defined(POCO_HAVE_INT64)
- Int64 int64v = 0;
- reader >> int64v;
- assert (int64v == -1234567890);
-
- UInt64 uint64v = 0;
- reader >> uint64v;
- assert (uint64v == 1234567890);
-#endif
-
- float floatv = 0.0;
- reader >> floatv;
- assert (floatv == 1.5);
-
- double doublev = 0.0;
- reader >> doublev;
- assert (doublev == -1.5);
-
- std::string str;
- reader >> str;
- assert (str == "foo");
- reader >> str;
- assert (str == "");
-
- reader >> str;
- assert (str == "bar");
- reader >> str;
- assert (str == "");
-
- UInt32 uint32v;
- reader.read7BitEncoded(uint32v);
- assert (uint32v == 100);
- reader.read7BitEncoded(uint32v);
- assert (uint32v == 1000);
- reader.read7BitEncoded(uint32v);
- assert (uint32v == 10000);
- reader.read7BitEncoded(uint32v);
- assert (uint32v == 100000);
- reader.read7BitEncoded(uint32v);
- assert (uint32v == 1000000);
-
-#if defined(POCO_HAVE_INT64)
- reader.read7BitEncoded(uint64v);
- assert (uint64v == 100);
- reader.read7BitEncoded(uint64v);
- assert (uint64v == 1000);
- reader.read7BitEncoded(uint64v);
- assert (uint64v == 10000);
- reader.read7BitEncoded(uint64v);
- assert (uint64v == 100000);
- reader.read7BitEncoded(uint64v);
- assert (uint64v == 1000000);
-#endif
-
- reader.readRaw(3, str);
- assert (str == "RAW");
-}
-
-
-void SocketIOChannelTest::setUp()
-{
-}
-
-
-void SocketIOChannelTest::tearDown()
-{
-}
-
-
-CppUnit::Test* SocketIOChannelTest::suite()
-{
- CppUnit::TestSuite* pSuite = new CppUnit::TestSuite("SocketIOChannelTest");
-
- CppUnit_addTest(pSuite, SocketIOChannelTest, testChannelStream);
- CppUnit_addTest(pSuite, SocketIOChannelTest, testActiveChannelStream);
- CppUnit_addTest(pSuite, SocketIOChannelTest, testStreamsStream);
- CppUnit_addTest(pSuite, SocketIOChannelTest, testBinaryStream);
- CppUnit_addTest(pSuite, SocketIOChannelTest, testChannelDatagram);
- CppUnit_addTest(pSuite, SocketIOChannelTest, testActiveChannelDatagram);
- CppUnit_addTest(pSuite, SocketIOChannelTest, testStreamsDatagram);
- CppUnit_addTest(pSuite, SocketIOChannelTest, testBinaryDatagram);
-
- return pSuite;
-}
diff --git a/Net/testsuite/src/SocketIOChannelTest.h b/Net/testsuite/src/SocketIOChannelTest.h
deleted file mode 100644
index 9341c5ab1..000000000
--- a/Net/testsuite/src/SocketIOChannelTest.h
+++ /dev/null
@@ -1,75 +0,0 @@
-//
-// SocketIOChannelTest.h
-//
-// $Id: //poco/Main/template/test.h#7 $
-//
-// Definition of the SocketIOChannelTest class.
-//
-// Copyright (c) 2006, Applied Informatics Software Engineering GmbH.
-// and Contributors.
-//
-// Permission is hereby granted, free of charge, to any person or organization
-// obtaining a copy of the software and accompanying documentation covered by
-// this license (the "Software") to use, reproduce, display, distribute,
-// execute, and transmit the Software, and to prepare derivative works of the
-// Software, and to permit third-parties to whom the Software is furnished to
-// do so, all subject to the following:
-//
-// The copyright notices in the Software and this entire statement, including
-// the above license grant, this restriction and the following disclaimer,
-// must be included in all copies of the Software, in whole or in part, and
-// all derivative works of the Software, unless such copies or derivative
-// works are solely in the form of machine-executable object code generated by
-// a source language processor.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
-// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
-// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
-// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-//
-
-
-#ifndef SocketIOChannelTest_INCLUDED
-#define SocketIOChannelTest_INCLUDED
-
-
-#include "CppUnit/TestCase.h"
-#include "Poco/BinaryReader.h"
-#include "Poco/BinaryWriter.h"
-#include "Poco/IOChannel.h"
-#include "Poco/IOChannelStream.h"
-#include "Poco/IOChannelConfig.h"
-#include "Poco/Net/SocketIOChannel.h"
-
-
-class SocketIOChannelTest: public CppUnit::TestCase
-{
-public:
- SocketIOChannelTest(const std::string& name);
- ~SocketIOChannelTest();
-
- void testChannelStream();
- void testActiveChannelStream();
- void testStreamsStream();
- void testBinaryStream();
-
- void testChannelDatagram();
- void testActiveChannelDatagram();
- void testStreamsDatagram();
- void testBinaryDatagram();
-
- void setUp();
- void tearDown();
-
- static CppUnit::Test* suite();
-
-private:
- void writeBinary(Poco::BinaryWriter& writer);
- void readBinary(Poco::BinaryReader& reader);
-};
-
-
-#endif // SocketIOChannelTest_INCLUDED
diff --git a/Net/testsuite/src/SocketIOChannelTestSuite.cpp b/Net/testsuite/src/SocketIOChannelTestSuite.cpp
deleted file mode 100644
index 78ea939f4..000000000
--- a/Net/testsuite/src/SocketIOChannelTestSuite.cpp
+++ /dev/null
@@ -1,44 +0,0 @@
-//
-// SocketIOChannelTestSuite.cpp
-//
-// $Id: //poco/Main/template/suite.cpp#6 $
-//
-// Copyright (c) 2006, Applied Informatics Software Engineering GmbH.
-// and Contributors.
-//
-// Permission is hereby granted, free of charge, to any person or organization
-// obtaining a copy of the software and accompanying documentation covered by
-// this license (the "Software") to use, reproduce, display, distribute,
-// execute, and transmit the Software, and to prepare derivative works of the
-// Software, and to permit third-parties to whom the Software is furnished to
-// do so, all subject to the following:
-//
-// The copyright notices in the Software and this entire statement, including
-// the above license grant, this restriction and the following disclaimer,
-// must be included in all copies of the Software, in whole or in part, and
-// all derivative works of the Software, unless such copies or derivative
-// works are solely in the form of machine-executable object code generated by
-// a source language processor.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
-// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
-// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
-// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-//
-
-
-#include "SocketIOChannelTestSuite.h"
-#include "SocketIOChannelTest.h"
-
-
-CppUnit::Test* SocketIOChannelTestSuite::suite()
-{
- CppUnit::TestSuite* pSuite = new CppUnit::TestSuite("SocketIOChannelTestSuite");
-
- pSuite->addTest(SocketIOChannelTest::suite());
-
- return pSuite;
-}
diff --git a/Net/testsuite/src/SocketIOChannelTestSuite.h b/Net/testsuite/src/SocketIOChannelTestSuite.h
deleted file mode 100644
index 9487acae5..000000000
--- a/Net/testsuite/src/SocketIOChannelTestSuite.h
+++ /dev/null
@@ -1,49 +0,0 @@
-//
-// NetTestSuite.h
-//
-// $Id: //poco/Main/template/suite.h#6 $
-//
-// Definition of the NetTestSuite class.
-//
-// Copyright (c) 2006, Applied Informatics Software Engineering GmbH.
-// and Contributors.
-//
-// Permission is hereby granted, free of charge, to any person or organization
-// obtaining a copy of the software and accompanying documentation covered by
-// this license (the "Software") to use, reproduce, display, distribute,
-// execute, and transmit the Software, and to prepare derivative works of the
-// Software, and to permit third-parties to whom the Software is furnished to
-// do so, all subject to the following:
-//
-// The copyright notices in the Software and this entire statement, including
-// the above license grant, this restriction and the following disclaimer,
-// must be included in all copies of the Software, in whole or in part, and
-// all derivative works of the Software, unless such copies or derivative
-// works are solely in the form of machine-executable object code generated by
-// a source language processor.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
-// SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
-// FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
-// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-// DEALINGS IN THE SOFTWARE.
-//
-
-
-#ifndef SocketIOChannelTestSuite_INCLUDED
-#define SocketIOChannelTestSuite_INCLUDED
-
-
-#include "CppUnit/TestSuite.h"
-
-
-class SocketIOChannelTestSuite
-{
-public:
- static CppUnit::Test* suite();
-};
-
-
-#endif // SocketIOChannelTestSuite_INCLUDED