From d712530c7dc89af62f9abcd567f9d68732ab4f0c Mon Sep 17 00:00:00 2001 From: Aleksandar Fabijanic Date: Tue, 23 Apr 2013 20:06:03 -0500 Subject: [PATCH] added Poco::Shell --- Shell/Client/Client_vs100.vcxproj | 115 ++++++ Shell/Client/Client_vs100.vcxproj.filters | 13 + Shell/Client/Client_vs110.vcxproj | 117 ++++++ Shell/Client/Client_vs110.vcxproj.filters | 13 + Shell/Client/Client_vs71.sln | 21 + Shell/Client/Client_vs71.vcproj | 147 +++++++ Shell/Client/Client_vs80.sln | 20 + Shell/Client/Client_vs80.vcproj | 161 ++++++++ Shell/Client/Client_vs90.sln | 20 + Shell/Client/Client_vs90.vcproj | 161 ++++++++ Shell/Client/Client_x64_vs100.vcxproj | 115 ++++++ Shell/Client/Client_x64_vs100.vcxproj.filters | 13 + Shell/Client/Client_x64_vs110.vcxproj | 117 ++++++ Shell/Client/Client_x64_vs110.vcxproj.filters | 13 + Shell/Client/Client_x64_vs90.vcproj | 161 ++++++++ Shell/Client/Makefile | 28 ++ Shell/Client/dependencies | 2 + Shell/Client/src/Client.cpp | 386 ++++++++++++++++++ Shell/Makefile | 20 + Shell/Shell_CE_vs90.sln | 43 ++ Shell/Shell_CE_vs90.vcproj | 237 +++++++++++ Shell/Shell_vs100.vcxproj | 148 +++++++ Shell/Shell_vs100.vcxproj.filters | 102 +++++ Shell/Shell_vs110.sln | 25 ++ Shell/Shell_vs110.vcxproj | 150 +++++++ Shell/Shell_vs110.vcxproj.filters | 102 +++++ Shell/Shell_vs71.sln | 39 ++ Shell/Shell_vs71.vcproj | 211 ++++++++++ Shell/Shell_vs80.sln | 43 ++ Shell/Shell_vs80.vcproj | 224 ++++++++++ Shell/Shell_vs90.sln | 43 ++ Shell/Shell_vs90.vcproj | 223 ++++++++++ Shell/Shell_x64_vs100.sln | 43 ++ Shell/Shell_x64_vs100.vcxproj | 148 +++++++ Shell/Shell_x64_vs100.vcxproj.filters | 102 +++++ Shell/Shell_x64_vs110.sln | 25 ++ Shell/Shell_x64_vs110.vcxproj | 150 +++++++ Shell/Shell_x64_vs110.vcxproj.filters | 102 +++++ Shell/Shell_x64_vs90.sln | 43 ++ Shell/Shell_x64_vs90.vcproj | 224 ++++++++++ Shell/include/Poco/Shell/AbstractCommand.h | 164 ++++++++ Shell/include/Poco/Shell/Command.h | 99 +++++ Shell/include/Poco/Shell/CommandFactory.h | 82 ++++ Shell/include/Poco/Shell/CommandProcessor.h | 141 +++++++ Shell/include/Poco/Shell/Connection.h | 119 ++++++ Shell/include/Poco/Shell/ConnectionFactory.h | 60 +++ Shell/include/Poco/Shell/HelpCommand.h | 85 ++++ Shell/include/Poco/Shell/HelpCommandFactory.h | 74 ++++ Shell/include/Poco/Shell/LoginCommand.h | 82 ++++ .../include/Poco/Shell/LoginCommandFactory.h | 68 +++ Shell/include/Poco/Shell/OSPCommand.h | 96 +++++ Shell/include/Poco/Shell/QuitCommand.h | 79 ++++ Shell/include/Poco/Shell/QuitCommandFactory.h | 68 +++ Shell/include/Poco/Shell/ResponseStream.h | 170 ++++++++ Shell/include/Poco/Shell/Session.h | 121 ++++++ Shell/include/Poco/Shell/Shell.h | 84 ++++ Shell/src/AbstractCommand.cpp | 182 +++++++++ Shell/src/Command.cpp | 54 +++ Shell/src/CommandFactory.cpp | 65 +++ Shell/src/CommandProcessor.cpp | 202 +++++++++ Shell/src/Connection.cpp | 146 +++++++ Shell/src/ConnectionFactory.cpp | 63 +++ Shell/src/HelpCommand.cpp | 83 ++++ Shell/src/HelpCommandFactory.cpp | 62 +++ Shell/src/LoginCommand.cpp | 75 ++++ Shell/src/LoginCommandFactory.cpp | 61 +++ Shell/src/QuitCommand.cpp | 64 +++ Shell/src/QuitCommandFactory.cpp | 61 +++ Shell/src/ResponseStream.cpp | 158 +++++++ Shell/src/Session.cpp | 81 ++++ 70 files changed, 7019 insertions(+) create mode 100644 Shell/Client/Client_vs100.vcxproj create mode 100644 Shell/Client/Client_vs100.vcxproj.filters create mode 100644 Shell/Client/Client_vs110.vcxproj create mode 100644 Shell/Client/Client_vs110.vcxproj.filters create mode 100644 Shell/Client/Client_vs71.sln create mode 100644 Shell/Client/Client_vs71.vcproj create mode 100644 Shell/Client/Client_vs80.sln create mode 100644 Shell/Client/Client_vs80.vcproj create mode 100644 Shell/Client/Client_vs90.sln create mode 100644 Shell/Client/Client_vs90.vcproj create mode 100644 Shell/Client/Client_x64_vs100.vcxproj create mode 100644 Shell/Client/Client_x64_vs100.vcxproj.filters create mode 100644 Shell/Client/Client_x64_vs110.vcxproj create mode 100644 Shell/Client/Client_x64_vs110.vcxproj.filters create mode 100644 Shell/Client/Client_x64_vs90.vcproj create mode 100644 Shell/Client/Makefile create mode 100644 Shell/Client/dependencies create mode 100644 Shell/Client/src/Client.cpp create mode 100644 Shell/Makefile create mode 100644 Shell/Shell_CE_vs90.sln create mode 100644 Shell/Shell_CE_vs90.vcproj create mode 100644 Shell/Shell_vs100.vcxproj create mode 100644 Shell/Shell_vs100.vcxproj.filters create mode 100644 Shell/Shell_vs110.sln create mode 100644 Shell/Shell_vs110.vcxproj create mode 100644 Shell/Shell_vs110.vcxproj.filters create mode 100644 Shell/Shell_vs71.sln create mode 100644 Shell/Shell_vs71.vcproj create mode 100644 Shell/Shell_vs80.sln create mode 100644 Shell/Shell_vs80.vcproj create mode 100644 Shell/Shell_vs90.sln create mode 100644 Shell/Shell_vs90.vcproj create mode 100644 Shell/Shell_x64_vs100.sln create mode 100644 Shell/Shell_x64_vs100.vcxproj create mode 100644 Shell/Shell_x64_vs100.vcxproj.filters create mode 100644 Shell/Shell_x64_vs110.sln create mode 100644 Shell/Shell_x64_vs110.vcxproj create mode 100644 Shell/Shell_x64_vs110.vcxproj.filters create mode 100644 Shell/Shell_x64_vs90.sln create mode 100644 Shell/Shell_x64_vs90.vcproj create mode 100644 Shell/include/Poco/Shell/AbstractCommand.h create mode 100644 Shell/include/Poco/Shell/Command.h create mode 100644 Shell/include/Poco/Shell/CommandFactory.h create mode 100644 Shell/include/Poco/Shell/CommandProcessor.h create mode 100644 Shell/include/Poco/Shell/Connection.h create mode 100644 Shell/include/Poco/Shell/ConnectionFactory.h create mode 100644 Shell/include/Poco/Shell/HelpCommand.h create mode 100644 Shell/include/Poco/Shell/HelpCommandFactory.h create mode 100644 Shell/include/Poco/Shell/LoginCommand.h create mode 100644 Shell/include/Poco/Shell/LoginCommandFactory.h create mode 100644 Shell/include/Poco/Shell/OSPCommand.h create mode 100644 Shell/include/Poco/Shell/QuitCommand.h create mode 100644 Shell/include/Poco/Shell/QuitCommandFactory.h create mode 100644 Shell/include/Poco/Shell/ResponseStream.h create mode 100644 Shell/include/Poco/Shell/Session.h create mode 100644 Shell/include/Poco/Shell/Shell.h create mode 100644 Shell/src/AbstractCommand.cpp create mode 100644 Shell/src/Command.cpp create mode 100644 Shell/src/CommandFactory.cpp create mode 100644 Shell/src/CommandProcessor.cpp create mode 100644 Shell/src/Connection.cpp create mode 100644 Shell/src/ConnectionFactory.cpp create mode 100644 Shell/src/HelpCommand.cpp create mode 100644 Shell/src/HelpCommandFactory.cpp create mode 100644 Shell/src/LoginCommand.cpp create mode 100644 Shell/src/LoginCommandFactory.cpp create mode 100644 Shell/src/QuitCommand.cpp create mode 100644 Shell/src/QuitCommandFactory.cpp create mode 100644 Shell/src/ResponseStream.cpp create mode 100644 Shell/src/Session.cpp diff --git a/Shell/Client/Client_vs100.vcxproj b/Shell/Client/Client_vs100.vcxproj new file mode 100644 index 000000000..dff77fde2 --- /dev/null +++ b/Shell/Client/Client_vs100.vcxproj @@ -0,0 +1,115 @@ + + + + + debug_shared + Win32 + + + release_shared + Win32 + + + + Client + {6E47E601-FBE0-47AE-B33F-BCBBB72210DE} + Client + Win32Proj + + + + Application + MultiByte + + + Application + MultiByte + + + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + bin\ + obj\$(Configuration)\ + true + bin\ + obj\$(Configuration)\ + false + pocoshd + pocosh + + + + Disabled + .\include;..\..\Foundation\include;..\..\XML\include;..\..\Util\include;..\..\Net\include;..\include;%(AdditionalIncludeDirectories) + WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;%(PreprocessorDefinitions) + true + true + EnableFastChecks + MultiThreadedDebugDLL + true + true + true + true + + Level3 + EditAndContinue + Default + %(DisableSpecificWarnings) + + + ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies) + bin\pocoshd.exe + ..\..\lib;%(AdditionalLibraryDirectories) + true + true + bin\pocoshd.pdb + Console + MachineX86 + + + + + Disabled + OnlyExplicitInline + true + Speed + true + .\include;..\..\Foundation\include;..\..\XML\include;..\..\Util\include;..\..\Net\include;..\include;%(AdditionalIncludeDirectories) + WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;%(PreprocessorDefinitions) + true + MultiThreadedDLL + false + true + true + true + + Level3 + + Default + %(DisableSpecificWarnings) + + + ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies) + bin\pocosh.exe + ..\..\lib;%(AdditionalLibraryDirectories) + false + Console + true + true + MachineX86 + + + + + + + + diff --git a/Shell/Client/Client_vs100.vcxproj.filters b/Shell/Client/Client_vs100.vcxproj.filters new file mode 100644 index 000000000..37f099436 --- /dev/null +++ b/Shell/Client/Client_vs100.vcxproj.filters @@ -0,0 +1,13 @@ + + + + + {37063f2c-6561-4518-b5df-f3174d35edca} + + + + + Source Files + + + \ No newline at end of file diff --git a/Shell/Client/Client_vs110.vcxproj b/Shell/Client/Client_vs110.vcxproj new file mode 100644 index 000000000..a9500ce8e --- /dev/null +++ b/Shell/Client/Client_vs110.vcxproj @@ -0,0 +1,117 @@ + + + + + debug_shared + Win32 + + + release_shared + Win32 + + + + Client + {6E47E601-FBE0-47AE-B33F-BCBBB72210DE} + Client + Win32Proj + + + + Application + MultiByte + v110 + + + Application + MultiByte + v110 + + + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + bin\ + obj\$(Configuration)\ + true + bin\ + obj\$(Configuration)\ + false + pocoshd + pocosh + + + + Disabled + .\include;..\..\Foundation\include;..\..\XML\include;..\..\Util\include;..\..\Net\include;..\include;%(AdditionalIncludeDirectories) + WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;%(PreprocessorDefinitions) + true + true + EnableFastChecks + MultiThreadedDebugDLL + true + true + true + true + + Level3 + EditAndContinue + Default + %(DisableSpecificWarnings) + + + ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies) + bin\pocoshd.exe + ..\..\lib;%(AdditionalLibraryDirectories) + true + true + bin\pocoshd.pdb + Console + MachineX86 + + + + + Disabled + OnlyExplicitInline + true + Speed + true + .\include;..\..\Foundation\include;..\..\XML\include;..\..\Util\include;..\..\Net\include;..\include;%(AdditionalIncludeDirectories) + WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;%(PreprocessorDefinitions) + true + MultiThreadedDLL + false + true + true + true + + Level3 + + Default + %(DisableSpecificWarnings) + + + ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies) + bin\pocosh.exe + ..\..\lib;%(AdditionalLibraryDirectories) + false + Console + true + true + MachineX86 + + + + + + + + \ No newline at end of file diff --git a/Shell/Client/Client_vs110.vcxproj.filters b/Shell/Client/Client_vs110.vcxproj.filters new file mode 100644 index 000000000..37f099436 --- /dev/null +++ b/Shell/Client/Client_vs110.vcxproj.filters @@ -0,0 +1,13 @@ + + + + + {37063f2c-6561-4518-b5df-f3174d35edca} + + + + + Source Files + + + \ No newline at end of file diff --git a/Shell/Client/Client_vs71.sln b/Shell/Client/Client_vs71.sln new file mode 100644 index 000000000..f6893938b --- /dev/null +++ b/Shell/Client/Client_vs71.sln @@ -0,0 +1,21 @@ +Microsoft Visual Studio Solution File, Format Version 8.00 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Client", "Client_vs71.vcproj", "{6E47E601-FBE0-47AE-B33F-BCBBB72210DE}" + ProjectSection(ProjectDependencies) = postProject + EndProjectSection +EndProject +Global + GlobalSection(SolutionConfiguration) = preSolution + debug_shared = debug_shared + release_shared = release_shared + EndGlobalSection + GlobalSection(ProjectConfiguration) = postSolution + {6E47E601-FBE0-47AE-B33F-BCBBB72210DE}.debug_shared.ActiveCfg = debug_shared|Win32 + {6E47E601-FBE0-47AE-B33F-BCBBB72210DE}.debug_shared.Build.0 = debug_shared|Win32 + {6E47E601-FBE0-47AE-B33F-BCBBB72210DE}.release_shared.ActiveCfg = release_shared|Win32 + {6E47E601-FBE0-47AE-B33F-BCBBB72210DE}.release_shared.Build.0 = release_shared|Win32 + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + EndGlobalSection + GlobalSection(ExtensibilityAddIns) = postSolution + EndGlobalSection +EndGlobal diff --git a/Shell/Client/Client_vs71.vcproj b/Shell/Client/Client_vs71.vcproj new file mode 100644 index 000000000..06ed0341f --- /dev/null +++ b/Shell/Client/Client_vs71.vcproj @@ -0,0 +1,147 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Shell/Client/Client_vs80.sln b/Shell/Client/Client_vs80.sln new file mode 100644 index 000000000..b6ebc6a05 --- /dev/null +++ b/Shell/Client/Client_vs80.sln @@ -0,0 +1,20 @@ + +Microsoft Visual Studio Solution File, Format Version 9.00 +# Visual Studio 2005 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Client", "Client_vs80.vcproj", "{6E47E601-FBE0-47AE-B33F-BCBBB72210DE}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + debug_shared|Win32 = debug_shared|Win32 + release_shared|Win32 = release_shared|Win32 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {6E47E601-FBE0-47AE-B33F-BCBBB72210DE}.debug_shared|Win32.ActiveCfg = debug_shared|Win32 + {6E47E601-FBE0-47AE-B33F-BCBBB72210DE}.debug_shared|Win32.Build.0 = debug_shared|Win32 + {6E47E601-FBE0-47AE-B33F-BCBBB72210DE}.release_shared|Win32.ActiveCfg = release_shared|Win32 + {6E47E601-FBE0-47AE-B33F-BCBBB72210DE}.release_shared|Win32.Build.0 = release_shared|Win32 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/Shell/Client/Client_vs80.vcproj b/Shell/Client/Client_vs80.vcproj new file mode 100644 index 000000000..6b59905ef --- /dev/null +++ b/Shell/Client/Client_vs80.vcproj @@ -0,0 +1,161 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Shell/Client/Client_vs90.sln b/Shell/Client/Client_vs90.sln new file mode 100644 index 000000000..c8a0a4b52 --- /dev/null +++ b/Shell/Client/Client_vs90.sln @@ -0,0 +1,20 @@ + +Microsoft Visual Studio Solution File, Format Version 10.00 +# Visual Studio 2008 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Client", "Client_vs90.vcproj", "{6E47E601-FBE0-47AE-B33F-BCBBB72210DE}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + debug_shared|Win32 = debug_shared|Win32 + release_shared|Win32 = release_shared|Win32 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {6E47E601-FBE0-47AE-B33F-BCBBB72210DE}.debug_shared|Win32.ActiveCfg = debug_shared|Win32 + {6E47E601-FBE0-47AE-B33F-BCBBB72210DE}.debug_shared|Win32.Build.0 = debug_shared|Win32 + {6E47E601-FBE0-47AE-B33F-BCBBB72210DE}.release_shared|Win32.ActiveCfg = release_shared|Win32 + {6E47E601-FBE0-47AE-B33F-BCBBB72210DE}.release_shared|Win32.Build.0 = release_shared|Win32 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/Shell/Client/Client_vs90.vcproj b/Shell/Client/Client_vs90.vcproj new file mode 100644 index 000000000..6ea8e37d1 --- /dev/null +++ b/Shell/Client/Client_vs90.vcproj @@ -0,0 +1,161 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Shell/Client/Client_x64_vs100.vcxproj b/Shell/Client/Client_x64_vs100.vcxproj new file mode 100644 index 000000000..a8730e4e6 --- /dev/null +++ b/Shell/Client/Client_x64_vs100.vcxproj @@ -0,0 +1,115 @@ + + + + + debug_shared + x64 + + + release_shared + x64 + + + + Client + {6E47E601-FBE0-47AE-B33F-BCBBB72210DE} + Client + Win32Proj + + + + Application + MultiByte + + + Application + MultiByte + + + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + bin64\ + obj64\$(Configuration)\ + true + bin64\ + obj64\$(Configuration)\ + false + pocoshd + pocosh + + + + Disabled + .\include;..\..\Foundation\include;..\..\XML\include;..\..\Util\include;..\..\Net\include;..\include;%(AdditionalIncludeDirectories) + WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;%(PreprocessorDefinitions) + true + true + EnableFastChecks + MultiThreadedDebugDLL + true + true + true + true + + Level3 + ProgramDatabase + Default + %(DisableSpecificWarnings) + + + ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies) + bin64\pocoshd.exe + ..\..\lib64;%(AdditionalLibraryDirectories) + true + true + bin64\pocoshd.pdb + Console + MachineX64 + + + + + Disabled + OnlyExplicitInline + true + Speed + true + .\include;..\..\Foundation\include;..\..\XML\include;..\..\Util\include;..\..\Net\include;..\include;%(AdditionalIncludeDirectories) + WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;%(PreprocessorDefinitions) + true + MultiThreadedDLL + false + true + true + true + + Level3 + + Default + %(DisableSpecificWarnings) + + + ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies) + bin64\pocosh.exe + ..\..\lib64;%(AdditionalLibraryDirectories) + false + Console + true + true + MachineX64 + + + + + + + + diff --git a/Shell/Client/Client_x64_vs100.vcxproj.filters b/Shell/Client/Client_x64_vs100.vcxproj.filters new file mode 100644 index 000000000..7654c0969 --- /dev/null +++ b/Shell/Client/Client_x64_vs100.vcxproj.filters @@ -0,0 +1,13 @@ + + + + + {b64c23a6-a2af-4030-9914-be78f37acdd6} + + + + + Source Files + + + \ No newline at end of file diff --git a/Shell/Client/Client_x64_vs110.vcxproj b/Shell/Client/Client_x64_vs110.vcxproj new file mode 100644 index 000000000..6e20301ce --- /dev/null +++ b/Shell/Client/Client_x64_vs110.vcxproj @@ -0,0 +1,117 @@ + + + + + debug_shared + x64 + + + release_shared + x64 + + + + Client + {6E47E601-FBE0-47AE-B33F-BCBBB72210DE} + Client + Win32Proj + + + + Application + MultiByte + v110 + + + Application + MultiByte + v110 + + + + + + + + + + + + <_ProjectFileVersion>10.0.30319.1 + bin64\ + obj64\$(Configuration)\ + true + bin64\ + obj64\$(Configuration)\ + false + pocoshd + pocosh + + + + Disabled + .\include;..\..\Foundation\include;..\..\XML\include;..\..\Util\include;..\..\Net\include;..\include;%(AdditionalIncludeDirectories) + WIN32;_DEBUG;_WINDOWS;WINVER=0x0500;%(PreprocessorDefinitions) + true + true + EnableFastChecks + MultiThreadedDebugDLL + true + true + true + true + + Level3 + ProgramDatabase + Default + %(DisableSpecificWarnings) + + + ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies) + bin64\pocoshd.exe + ..\..\lib64;%(AdditionalLibraryDirectories) + true + true + bin64\pocoshd.pdb + Console + MachineX64 + + + + + Disabled + OnlyExplicitInline + true + Speed + true + .\include;..\..\Foundation\include;..\..\XML\include;..\..\Util\include;..\..\Net\include;..\include;%(AdditionalIncludeDirectories) + WIN32;NDEBUG;_WINDOWS;WINVER=0x0500;%(PreprocessorDefinitions) + true + MultiThreadedDLL + false + true + true + true + + Level3 + + Default + %(DisableSpecificWarnings) + + + ws2_32.lib;iphlpapi.lib;%(AdditionalDependencies) + bin64\pocosh.exe + ..\..\lib64;%(AdditionalLibraryDirectories) + false + Console + true + true + MachineX64 + + + + + + + + \ No newline at end of file diff --git a/Shell/Client/Client_x64_vs110.vcxproj.filters b/Shell/Client/Client_x64_vs110.vcxproj.filters new file mode 100644 index 000000000..7654c0969 --- /dev/null +++ b/Shell/Client/Client_x64_vs110.vcxproj.filters @@ -0,0 +1,13 @@ + + + + + {b64c23a6-a2af-4030-9914-be78f37acdd6} + + + + + Source Files + + + \ No newline at end of file diff --git a/Shell/Client/Client_x64_vs90.vcproj b/Shell/Client/Client_x64_vs90.vcproj new file mode 100644 index 000000000..b58dbea0b --- /dev/null +++ b/Shell/Client/Client_x64_vs90.vcproj @@ -0,0 +1,161 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Shell/Client/Makefile b/Shell/Client/Makefile new file mode 100644 index 000000000..3ef887de8 --- /dev/null +++ b/Shell/Client/Makefile @@ -0,0 +1,28 @@ +# +# Makefile +# +# $Id: //poco/1.4/Shell/Client/Makefile#2 $ +# +# Makefile for POCO Shell Client +# + +include $(POCO_BASE)/build/rules/global + +# check for editline (libedit) and use it if it's available +ifeq ($(shell test -f /usr/include/histedit.h && echo 1),1) +POCOSH_HAVE_EDITLINE = 1 +$(info ** Building pocosh with editline (libedit) support) +endif + +ifdef POCOSH_HAVE_EDITLINE +CXXFLAGS += -DPOCOSH_HAVE_EDITLINE +SYSLIBS += -ledit +endif + +objects = Client + +target = pocosh +target_version = 1 +target_libs = PocoUtil PocoXML PocoNet PocoFoundation + +include $(POCO_BASE)/build/rules/exec diff --git a/Shell/Client/dependencies b/Shell/Client/dependencies new file mode 100644 index 000000000..701b73c1d --- /dev/null +++ b/Shell/Client/dependencies @@ -0,0 +1,2 @@ +Util +Net diff --git a/Shell/Client/src/Client.cpp b/Shell/Client/src/Client.cpp new file mode 100644 index 000000000..b56a2a92e --- /dev/null +++ b/Shell/Client/src/Client.cpp @@ -0,0 +1,386 @@ +// +// Client.cpp +// +// $Id: //poco/1.4/Shell/Client/src/Client.cpp#4 $ +// +// The client application for the Shell. +// +// Copyright (c) 2009-2012, Applied Informatics Software Engineering GmbH. +// All rights reserved. +// +// This is unpublished proprietary source code of Applied Informatics. +// The contents of this file may not be disclosed to third parties, +// copied or duplicated in any form, in whole or in part. +// + + +#include "Poco/Util/Application.h" +#include "Poco/Util/Option.h" +#include "Poco/Util/OptionSet.h" +#include "Poco/Util/IntValidator.h" +#include "Poco/Util/HelpFormatter.h" +#include "Poco/Net/StreamSocket.h" +#include "Poco/Net/DialogSocket.h" +#include "Poco/Net/SocketAddress.h" +#include "Poco/FileStream.h" +#include "Poco/String.h" +#include "Poco/NumberParser.h" +#include "Poco/Shell/Connection.h" +#include +#include +#if defined(POCO_OS_FAMILY_WINDOWS) +#include +#elif defined(POCO_OS_FAMILY_UNIX) +#include +#endif +#if defined(POCOSH_HAVE_EDITLINE) +#include +#include +#endif + + +using Poco::Util::Application; +using Poco::Util::Option; +using Poco::Util::OptionSet; +using Poco::Util::HelpFormatter; +using Poco::Util::AbstractConfiguration; +using Poco::Util::OptionCallback; +using Poco::Shell::Connection; + + +class ShellClientApp: public Application +{ +public: + ShellClientApp(): + _showHelp(false), + _host(SERVER_HOST), + _port(SERVER_PORT), + _prompt(true), + _auth(true), + _pFileStream(0) + { + } + + ~ShellClientApp() + { + delete _pFileStream; + } + +protected: + static const Poco::UInt16 SERVER_PORT = 22023; + static const std::string SERVER_HOST; + static const std::string PROMPT; + + void defineOptions(OptionSet& options) + { + Application::defineOptions(options); + + options.addOption( + Option("help", "h", "Display help information on command line arguments.") + .required(false) + .repeatable(false) + .callback(OptionCallback(this, &ShellClientApp::handleHelp))); + + options.addOption( + Option("username", "u", "Specify the user name for logging in to the POCO Shell server.") + .required(false) + .repeatable(false) + .argument("") + .callback(OptionCallback(this, &ShellClientApp::handleUserName))); + + options.addOption( + Option("password", "p", "Specify the password for logging in to the POCO Shell server.") + .required(false) + .repeatable(false) + .argument("") + .callback(OptionCallback(this, &ShellClientApp::handlePassword))); + + options.addOption( + Option("host", "H", "Specify the POCO Shell server hostname or IP address.") + .required(false) + .repeatable(false) + .argument("") + .callback(OptionCallback(this, &ShellClientApp::handleHost))); + + options.addOption( + Option("port", "P", "Specify the POCO Shell server port number.") + .required(false) + .repeatable(false) + .argument("") + .validator(new Poco::Util::IntValidator(1, 65535)) + .callback(OptionCallback(this, &ShellClientApp::handlePort))); + + options.addOption( + Option("file", "f", "Read commands from the given file.") + .required(false) + .repeatable(false) + .argument("") + .callback(OptionCallback(this, &ShellClientApp::handleFile))); + + options.addOption( + Option("noprompt", "n", "Do not display prompt and welcome message at startup.") + .required(false) + .repeatable(false) + .callback(OptionCallback(this, &ShellClientApp::handleNoPrompt))); + + options.addOption( + Option("noauth", "N", "Do not authenticate against the server.") + .required(false) + .repeatable(false) + .callback(OptionCallback(this, &ShellClientApp::handleNoAuth))); + } + + void handleHelp(const std::string& name, const std::string& value) + { + _showHelp = true; + displayHelp(); + stopOptionsProcessing(); + } + + void handleUserName(const std::string& name, const std::string& value) + { + _userName = value; + } + + void handlePassword(const std::string& name, const std::string& value) + { + _password = value; + } + + void handleHost(const std::string& name, const std::string& value) + { + _host = value; + } + + void handlePort(const std::string& name, const std::string& value) + { + _port = Poco::NumberParser::parse(value); + } + + void handleFile(const std::string& name, const std::string& value) + { + _pFileStream = new Poco::FileInputStream(value); + _prompt = false; + } + + void handleNoPrompt(const std::string& name, const std::string& value) + { + _prompt = false; + } + + + void handleNoAuth(const std::string& name, const std::string& value) + { + _auth = false; + } + + void displayHelp() + { + HelpFormatter helpFormatter(options()); + helpFormatter.setCommand(commandName()); + helpFormatter.setUsage("[