#include "ACEXML/common/NamespaceSupport.h"
#include "ace/OS_main.h"
Include dependency graph for NamespaceSupport_Test.cpp:
Go to the source code of this file.
Functions | |
int | ACE_TMAIN (int, ACE_TCHAR *[]) |
|
Definition at line 6 of file NamespaceSupport_Test.cpp. References ACE_DEBUG, ACE_TEXT, ACEXML_Char, ACEXML_STR_LIST, ACE_Unbounded_Queue< T >::begin(), ACEXML_NamespaceSupport::declarePrefix(), ACEXML_NamespaceSupport::getDeclaredPrefixes(), ACEXML_NamespaceSupport::getPrefix(), ACEXML_NamespaceSupport::getPrefixes(), ACEXML_NamespaceSupport::getURI(), ACEXML_NamespaceSupport::init(), LM_DEBUG, LM_ERROR, ACEXML_NamespaceSupport::popContext(), ACEXML_NamespaceSupport::processName(), ACEXML_NamespaceSupport::pushContext(), and ACE_Unbounded_Queue< T >::reset().
00007 { 00008 ACEXML_NamespaceSupport xmlns; 00009 if (xmlns.init() == -1) 00010 { 00011 ACE_DEBUG ((LM_DEBUG, 00012 ACE_TEXT ("Error in initializing namespace support."))); 00013 return 1; 00014 } 00015 xmlns.pushContext(); 00016 xmlns.declarePrefix(ACE_TEXT (""), 00017 ACE_TEXT ("http://www.w3.org/1999/xhtml")); 00018 xmlns.declarePrefix(ACE_TEXT ("dc"), 00019 ACE_TEXT ("http://www.purl.org/dc#")); 00020 xmlns.declarePrefix(ACE_TEXT ("xc"), 00021 ACE_TEXT ("http://www.purl.org/dc#")); 00022 00023 const ACEXML_Char *lName, *uri; 00024 const ACEXML_Char *n1 = ACE_TEXT ("p"); 00025 00026 ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("*** Checking processName:\n"))); 00027 if (xmlns.processName (n1, uri, lName, 0) != 0) 00028 ACE_DEBUG ((LM_ERROR, 00029 ACE_TEXT ("Fail to resolve namespace name %s\n"), 00030 n1)); 00031 else 00032 ACE_DEBUG ((LM_DEBUG, 00033 ACE_TEXT ("Namespace URI: %s\nLocal name: %s\nRaw name: %s\n"), 00034 uri, lName, n1)); 00035 00036 const ACEXML_Char *n2 = ACE_TEXT ("dc:title"); 00037 if (xmlns.processName(n2, uri, lName, 0) != 0) 00038 ACE_DEBUG ((LM_ERROR, 00039 ACE_TEXT ("Fail to resolve namespace name %S\n"), 00040 n2)); 00041 else 00042 ACE_DEBUG ((LM_DEBUG, 00043 ACE_TEXT ("Namespace URI: %s\nLocal name: %s\nRaw name: %s\n"), 00044 uri, lName, n2)); 00045 00046 const ACEXML_Char *n3 = ACE_TEXT ("xml:title"); 00047 if (xmlns.processName(n3, uri, lName, 0) != 0) 00048 ACE_DEBUG ((LM_ERROR, 00049 ACE_TEXT ("Fail to resolve namespace name %S\n"), 00050 n3)); 00051 else 00052 ACE_DEBUG ((LM_DEBUG, 00053 ACE_TEXT ("Namespace URI: %s\nLocal name: %s\nRaw name: %s\n"), 00054 uri, lName, n3)); 00055 00056 ACE_DEBUG ((LM_DEBUG, 00057 ACE_TEXT ("\n*** Checking getDeclaredPrefixes\n"))); 00058 00059 ACEXML_STR_LIST prefixes; 00060 if (xmlns.getDeclaredPrefixes (prefixes) != 0) 00061 ACE_DEBUG ((LM_ERROR, 00062 ACE_TEXT ("Fail to get a list of declared prefixes\n"))); 00063 else 00064 { 00065 ACEXML_STR_LIST::ITERATOR iter = prefixes.begin (); 00066 const ACEXML_Char **prefix = 0; 00067 00068 for (; iter.next (prefix);iter.advance ()) 00069 ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("prefix: \"%s\"\n"), *prefix)); 00070 } 00071 00072 ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("\n*** Checking getPrefix\n"))); 00073 const ACEXML_Char *prefix = 0; 00074 00075 if ((prefix = xmlns.getPrefix (ACE_TEXT ("http://www.purl.org/dc#"))) == 0) 00076 ACE_DEBUG ((LM_ERROR, 00077 ACE_TEXT ("Fail to get prefix of http://www.purl.org/dc#\n"))); 00078 else 00079 ACE_DEBUG ((LM_DEBUG, 00080 ACE_TEXT ("Prefix of http://www.purl.org/dc# is %s\n"), 00081 prefix)); 00082 00083 if ((prefix = xmlns.getPrefix (ACE_TEXT ("http://www.w3.org/1999/xhtml"))) == 0) 00084 ACE_DEBUG ((LM_DEBUG, 00085 ACE_TEXT ("Fail to get prefix of http://www.w3.org/1999/xhtml which is okay\n"))); 00086 else 00087 ACE_DEBUG ((LM_ERROR, 00088 ACE_TEXT ("ERROR: Prefix of http://www.w3.org/1999/xhtml is %s\n"), 00089 prefix)); 00090 00091 if ((prefix = xmlns.getPrefix (ACE_TEXT ("http://www.w3.org/XML/1998/namespace"))) == 0) 00092 ACE_DEBUG ((LM_ERROR, 00093 ACE_TEXT ("Fail to get prefix of http://www.w3.org/XML/1998/namespace\n"))); 00094 else 00095 ACE_DEBUG ((LM_DEBUG, 00096 ACE_TEXT ("Prefix of http://www.w3.org/XML/1998/namespace is %s\n"), 00097 prefix)); 00098 00099 ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("\n*** Checking getPrefixes with known URI\n"))); 00100 prefixes.reset (); 00101 00102 if (xmlns.getPrefixes (ACE_TEXT ("http://www.purl.org/dc#"), prefixes) != 0) 00103 ACE_DEBUG ((LM_ERROR, ACE_TEXT ("Fail to getPrefixes based on known URI\n"))); 00104 else 00105 { 00106 ACEXML_STR_LIST::ITERATOR iter = prefixes.begin (); 00107 const ACEXML_Char **prefix = 0; 00108 00109 for (; iter.next (prefix);iter.advance ()) 00110 ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("prefix: \"%s\"\n"), *prefix)); 00111 } 00112 00113 ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("\n*** Checking getPrefixes\n"))); 00114 prefixes.reset (); 00115 00116 if (xmlns.getPrefixes (prefixes) != 0) 00117 ACE_DEBUG ((LM_ERROR, ACE_TEXT ("Fail to getPrefixes\n"))); 00118 else 00119 { 00120 ACEXML_STR_LIST::ITERATOR iter = prefixes.begin (); 00121 const ACEXML_Char **prefix = 0; 00122 00123 for (; iter.next (prefix);iter.advance ()) 00124 ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("prefix: \"%s\"\n"), *prefix)); 00125 } 00126 00127 ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("\n*** Checking getURI\n"))); 00128 const ACEXML_Char *URI = 0; 00129 00130 if ((URI = xmlns.getURI (ACE_TEXT ("dc"))) == 0) 00131 ACE_DEBUG((LM_ERROR, ACE_TEXT ("Fail to get URI for \"dc\"\n"))); 00132 else 00133 ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("URI for \"dc\" is %s\n"), URI)); 00134 if ((URI = xmlns.getURI (ACE_TEXT ("xc"))) == 0) 00135 ACE_DEBUG ((LM_ERROR, ACE_TEXT ("Fail to get URI for \"xc\"\n"))); 00136 else 00137 ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("URI for \"xc\" is %s\n"), URI)); 00138 if ((URI = xmlns.getURI (ACE_TEXT ("xml"))) == 0) 00139 ACE_DEBUG ((LM_ERROR, ACE_TEXT ("Fail to get URI for \"xml\"\n"))); 00140 else 00141 ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("URI for \"xml\" is %s\n"), URI)); 00142 if ((URI = xmlns.getURI (ACE_TEXT (""))) == 0) 00143 ACE_DEBUG ((LM_ERROR, ACE_TEXT ("Fail to get default namespace URI\n"))); 00144 else 00145 ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("URI for default namespace is %s\n"), URI)); 00146 00147 xmlns.popContext(); 00148 00149 return 0; 00150 } |