summaryrefslogtreecommitdiff
path: root/ACE/apps/JAWS2/main.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'ACE/apps/JAWS2/main.cpp')
-rw-r--r--ACE/apps/JAWS2/main.cpp47
1 files changed, 47 insertions, 0 deletions
diff --git a/ACE/apps/JAWS2/main.cpp b/ACE/apps/JAWS2/main.cpp
new file mode 100644
index 00000000000..d1bd6f46dcb
--- /dev/null
+++ b/ACE/apps/JAWS2/main.cpp
@@ -0,0 +1,47 @@
+// $Id$
+
+#include "JAWS/Server.h"
+#include "HTTP_10.h"
+
+ACE_RCSID(PROTOTYPE, main, "$Id$")
+
+#ifdef ACE_HAS_SIG_C_FUNC
+extern "C"
+{
+#endif /* ACE_HAS_SIG_C_FUNC */
+
+static void
+handler (int)
+{
+ ACE_OS::exit (0);
+ // call exit() so that static destructors get called
+}
+
+#ifdef ACE_HAS_SIG_C_FUNC
+}
+#endif /* ACE_HAS_SIG_C_FUNC */
+
+static JAWS_HTTP_10_Read_Task HTTP_Read;
+static JAWS_HTTP_10_Parse_Task HTTP_Parse;
+static JAWS_HTTP_10_Write_Task HTTP_Write;
+
+int
+main (int argc, char *argv[])
+{
+ ACE_OS::signal (SIGCHLD, SIG_IGN);
+
+ // SigAction not needed since the handler will shutdown the server.
+ ACE_OS::signal (SIGINT, (ACE_SignalHandler) handler);
+ ACE_OS::signal (SIGUSR2, (ACE_SignalHandler) handler);
+
+ JAWS_Server server (argc, argv);
+
+ HTTP_Read.next (&HTTP_Parse);
+ HTTP_Parse.next (&HTTP_Write);
+ // HTTP_Write.next (JAWS_Pipeline_Done_Task_Singleton::instance ());
+
+ if (server.open (&HTTP_Read) == -1)
+ ACE_DEBUG ((LM_DEBUG, "JAWS: Error openning server\n"));
+
+ return 0;
+}