Revert "Minor modernization of DynamicAny code"
[ACE_TAO.git] / TAO / tao / CORBANAME_Parser.h
blobe218da064347c75d7cf76d12ff8d7b6a66ced45b
1 // -*- C++ -*-
3 //=============================================================================
4 /**
5 * @file CORBANAME_Parser.h
7 * @author Priyanka Gontla (pgontla@uci.edu)
8 */
9 //=============================================================================
12 #ifndef TAO_CORBANAME_PARSER_H
13 #define TAO_CORBANAME_PARSER_H
15 #include /**/ "ace/pre.h"
17 #include "tao/IOR_Parser.h"
19 #if (TAO_HAS_CORBANAME_PARSER == 1)
21 #if !defined (ACE_LACKS_PRAGMA_ONCE)
22 # pragma once
23 #endif /* ACE_LACKS_PRAGMA_ONCE */
25 #include "ace/Service_Config.h"
27 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
29 /**
30 * @class TAO_CORBANAME_Parser
32 * @brief Implements the <corbaname:> IOR format
34 * This class implements the <corbaname:> IOR format.
35 * It is dynamically loaded by the ORB and used to get reference
36 * to a naming service at the given address and port and then resolve an
37 * object in that context.
39 class TAO_CORBANAME_Parser : public TAO_IOR_Parser
41 public:
42 TAO_CORBANAME_Parser () = default;
43 ~TAO_CORBANAME_Parser () override = default;
45 // = The IOR_Parser methods, please read the documentation in
46 // IOR_Parser.h
47 bool match_prefix (const char *ior_string) const override;
48 CORBA::Object_ptr parse_string (const char *ior,
49 CORBA::ORB_ptr orb) override;
51 private:
52 CORBA::Object_ptr
53 parse_string_dynamic_request_helper (CORBA::Object_ptr naming_context,
54 ACE_CString &key_string);
57 ACE_STATIC_SVC_DECLARE_EXPORT (TAO, TAO_CORBANAME_Parser)
58 ACE_FACTORY_DECLARE (TAO, TAO_CORBANAME_Parser)
60 TAO_END_VERSIONED_NAMESPACE_DECL
63 #endif /* TAO_HAS_CORBANAME_PARSER == 1 */
65 #include /**/ "ace/post.h"
66 #endif /* TAO_CORBANAME_PARSER_H */