diff options
author | William R. Otte <wotte@dre.vanderbilt.edu> | 2008-03-04 14:51:23 +0000 |
---|---|---|
committer | William R. Otte <wotte@dre.vanderbilt.edu> | 2008-03-04 14:51:23 +0000 |
commit | 99aa8c60282c7b8072eb35eb9ac815702f5bf586 (patch) | |
tree | bda96bf8c3a4c2875a083d7b16720533c8ffeaf4 /ACE/examples/Web_Crawler/URL_Visitor_Factory.h | |
parent | c4078c377d74290ebe4e66da0b4975da91732376 (diff) | |
download | ATCD-99aa8c60282c7b8072eb35eb9ac815702f5bf586.tar.gz |
undoing accidental deletion
Diffstat (limited to 'ACE/examples/Web_Crawler/URL_Visitor_Factory.h')
-rw-r--r-- | ACE/examples/Web_Crawler/URL_Visitor_Factory.h | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/ACE/examples/Web_Crawler/URL_Visitor_Factory.h b/ACE/examples/Web_Crawler/URL_Visitor_Factory.h new file mode 100644 index 00000000000..9f484afe9f0 --- /dev/null +++ b/ACE/examples/Web_Crawler/URL_Visitor_Factory.h @@ -0,0 +1,74 @@ +/* -*- C++ -*- */ +// $Id$ + +// ============================================================================ +// +// = LIBRARY +// examples/Web_Crawler +// +// = FILENAME +// URL_Visitor_Factory.h +// +// = AUTHOR +// Douglas C. Schmidt <schmidt@cs.wustl.edu> +// +// ============================================================================ + +#ifndef _URL_VISITOR_FACTORY_H +#define _URL_VISITOR_FACTORY_H + +#include "URL_Visitor.h" +#include "Command_Processor.h" + +#if !defined (ACE_LACKS_PRAGMA_ONCE) +#pragma once +#endif /* ACE_LACKS_PRAGMA_ONCE */ + +class URL_Visitor_Factory +{ + // = TITLE + // Abstract base class that creates URL visitors. + // + // = DESCRIPTION + // Subclasses define each of the Factory Methods to + // make the right objects, which all "vary" together. +public: + + /// Destructor. + virtual ~URL_Visitor_Factory (void); + + virtual URL_Visitor *make_visitor (void) = 0; + // Factory Method that makes the appropriate type of <URL_Visitor>. + + virtual Command_Processor *make_command_processor (void) = 0; + // Factory Method that makes the appropriate type of + // <Command_Processor>. +}; + +class URL_Validation_Visitor_Factory : public URL_Visitor_Factory +{ + // = TITLE + // Create a URL visitor that validates URL links. +public: + virtual URL_Visitor *make_visitor (void); + // Factory Method that makes a <URL_Validation_Visitor>. + + virtual Command_Processor *make_command_processor (void); + // Factory Method that makes a <FIFO_Command_Processor>. + + +}; + +class URL_Download_Visitor_Factory : public URL_Visitor_Factory +{ + // = TITLE + // Create a URL visitor that downloads URL links. +public: + virtual URL_Visitor *make_visitor (void); + // Factory Method that makes a <URL_Download_Visitor>. + + virtual Command_Processor *make_command_processor (void); + // Factory Method that makes a <FIFO_Command_Processor>. +}; + +#endif /* _URL_VISITOR_FACTORY_H */ |