summaryrefslogtreecommitdiff
path: root/apps/JAWS/clients/Blobby/blobby.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'apps/JAWS/clients/Blobby/blobby.cpp')
-rw-r--r--apps/JAWS/clients/Blobby/blobby.cpp125
1 files changed, 0 insertions, 125 deletions
diff --git a/apps/JAWS/clients/Blobby/blobby.cpp b/apps/JAWS/clients/Blobby/blobby.cpp
deleted file mode 100644
index e614b049c20..00000000000
--- a/apps/JAWS/clients/Blobby/blobby.cpp
+++ /dev/null
@@ -1,125 +0,0 @@
-// $Id$
-
-//============================================================================
-//
-// = LIBRARY
-// JAWS
-//
-// = FILENAME
-// blobby.c
-//
-// = DESCRIPTION
-// Simple client application to illustrate the use of the ACE_Blob class
-//
-// It reads "length" number of bytes, after skipping offset "offset"
-// from hostname, port and filename as specified. (if -r specified)
-//
-// It writes "length" number of bytes, after skipping offset "offset"
-// to hostname, port and filename as specified (if -w specified)
-//
-// = AUTHOR
-// Prashant Jain and Sumedh Mungee
-//
-//============================================================================
-
-#include "Options.h"
-#include "ace/OS_main.h"
-#include "ace/OS_NS_fcntl.h"
-#include "ace/OS_NS_unistd.h"
-
-ACE_RCSID(Blobby, blobby, "$Id$")
-
-int
-ACE_TMAIN (int argc, ACE_TCHAR *argv[])
-{
- // Options is a singleton
- Options *options = Options::instance ();
- options->parse_args (argc, argv);
-
- // Explain what is going to happen
- if (options->debug_)
- ACE_DEBUG ((LM_DEBUG,
- ACE_TEXT ("hostname = %C, port = %d, filename = %s, ")
- ACE_TEXT ("length = %d, offset = %d, operation = %c\n"),
- options->hostname_,
- options->port_,
- options->filename_,
- options->length_,
- options->offset_,
- options->operation_));
-
- // Create a blob
- ACE_Blob blob;
-
- // User requested a read
- if (options->operation_ == 'r')
- {
- ACE_Message_Block mb (0, options->length_);
-
- // Open the blob
- if (blob.open (options->filename_,
- options->hostname_,
- options->port_) == -1)
- ACE_ERROR_RETURN ((LM_ERROR,
- ACE_TEXT ("%p\n"),
- ACE_TEXT ("open error")),
- -1);
-
- // Read from it
- if (blob.read (&mb, options->length_, options->offset_) == -1)
- ACE_ERROR_RETURN ((LM_ERROR,
- ACE_TEXT ("%p\n"),
- ACE_TEXT ("read error")),
- -1);
-
- // Write to STDOUT
- if (ACE_OS::write (ACE_STDOUT, mb.rd_ptr(), mb.length()) == -1)
- ACE_ERROR_RETURN ((LM_ERROR,
- ACE_TEXT ("%p\n"),
- ACE_TEXT ("write error")),
- -1);
- }
- else
- {
- int total = options->length_ + options->offset_;
- ACE_Message_Block mb (total);
-
- // Open the file to be sent
- ACE_HANDLE h = ACE_OS::open (options->filename_, O_RDONLY);
- if (h == ACE_INVALID_HANDLE)
- ACE_ERROR_RETURN ((LM_ERROR,
- ACE_TEXT ("%p\n"),
- ACE_TEXT ("file open error")),
- -1);
-
- // Open the blob
- if (blob.open (options->filename_, options->hostname_, options->port_) == -1)
- ACE_ERROR_RETURN ((LM_ERROR,
- ACE_TEXT ("%p\n"),
- ACE_TEXT ("connection open error")),
- -1);
-
- // Read from the file
- if (ACE_OS::read (h, mb.wr_ptr (), total) != total)
- ACE_ERROR_RETURN ((LM_ERROR,
- ACE_TEXT ("%p\n"),
- ACE_TEXT ("file read error")),
- -1);
-
- // Close the file
- ACE_OS::close (h);
-
- // Adjust the offset
- mb.wr_ptr (mb.size ());
-
- // Write to the blob
- if (blob.write (&mb, options->length_, options->offset_) == -1)
- ACE_ERROR_RETURN ((LM_ERROR,
- ACE_TEXT ("%p\n"),
- ACE_TEXT ("network write error")),
- -1);
- }
-
- blob.close ();
- return 0;
-}