diff options
author | doccvs <doccvs@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2000-09-14 23:41:06 +0000 |
---|---|---|
committer | doccvs <doccvs@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2000-09-14 23:41:06 +0000 |
commit | f9e5064a8b767abff13ea46125302a07ef236ce5 (patch) | |
tree | 57a727d9902a89fa2a5be214b1e1a19560331202 /TAO/tao/IOR_Parser.h | |
parent | 71547769e40d8875f2f3cdc632250c0d76f43086 (diff) | |
download | ATCD-f9e5064a8b767abff13ea46125302a07ef236ce5.tar.gz |
ChangeLogTag:Thu Sep 14 16:39:12 2000 Priyanka Gontla <pgontla@ece.uci.edu>
Diffstat (limited to 'TAO/tao/IOR_Parser.h')
-rw-r--r-- | TAO/tao/IOR_Parser.h | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/TAO/tao/IOR_Parser.h b/TAO/tao/IOR_Parser.h new file mode 100644 index 00000000000..2657a091431 --- /dev/null +++ b/TAO/tao/IOR_Parser.h @@ -0,0 +1,61 @@ +// $Id$ + +// ============================================================================ +// +// = LIBRARY +// TAO +// +// = FILENAME +// IOR_Parser.h +// +// = AUTHOR +// Carlos O'Ryan (coryan@cs.wustl.edu) +// +// ============================================================================ + +#ifndef TAO_IOR_PARSER_H +#define TAO_IOR_PARSER_H +#include "ace/pre.h" + +#include "tao/corbafwd.h" + +#if !defined (ACE_LACKS_PRAGMA_ONCE) +# pragma once +#endif /* ACE_LACKS_PRAGMA_ONCE */ + +#include "ace/Service_Object.h" + +class TAO_Export TAO_IOR_Parser : public ACE_Service_Object +{ + // = TITLE + // Defines the interface for the pluggable IOR parser components + // + // = DESCRIPTION + // The ORB is able to dynamically load the list of IOR formats it + // understands. That allow us to integrate formats such as + // corbaname:, http: or ftp: only when required. + // This class provides a uniform interface for all the IOR parsers + // +public: + virtual ~TAO_IOR_Parser (void); + // The destructor + + virtual int match_prefix (const char *ior_string) const = 0; + // Return 1 if <ior_string> starts with a prefix known to this IOR + // parser + + virtual CORBA::Object_ptr parse_string (const char *ior, + CORBA::ORB_ptr orb, + CORBA::Environment &) + ACE_THROW_SPEC ((CORBA::SystemException)) = 0; + // Parse the <ior> argument and return an object reference. + // The call may raise the standard system exceptions (NO_MEMORY, + // INV_OBJREF, etc.) +}; + +#if defined (__ACE_INLINE__) +# include "tao/IOR_Parser.i" +#endif /* __ACE_INLINE__ */ + +#include "ace/post.h" +#endif /* TAO_IOR_PARSER_H */ |