You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by na...@apache.org on 2006/03/31 11:02:39 UTC
svn commit: r390373 - /webservices/axis2/trunk/c/xdocs/docs/om_tutorial.html
Author: nandika
Date: Fri Mar 31 01:02:39 2006
New Revision: 390373
URL: http://svn.apache.org/viewcvs?rev=390373&view=rev
Log:
code formatted
Modified:
webservices/axis2/trunk/c/xdocs/docs/om_tutorial.html
Modified: webservices/axis2/trunk/c/xdocs/docs/om_tutorial.html
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/xdocs/docs/om_tutorial.html?rev=390373&r1=390372&r2=390373&view=diff
==============================================================================
--- webservices/axis2/trunk/c/xdocs/docs/om_tutorial.html (original)
+++ webservices/axis2/trunk/c/xdocs/docs/om_tutorial.html Fri Mar 31 01:02:39 2006
@@ -260,25 +260,21 @@
<div>
<p><b>Code Listing 1</b></p>
</div>
-<pre>axis2_xml_reader_t *xml_reader = NULL;
-axis2_om_stax_builder_t *om_builder = NULL;
-axis2_soap_builder_t *soap_builder = NULL;
-axis2_soap_envelope_t *soap_envelope = NULL;
-
-
-/** create the parser */<br />
-axis2_xml_reader_t *xml_reader = axis2_xml_reader_create_for_file(env, "test_soap.xml",NULL);
-
-/** create the OM builder */
-
-om_builder = axis2_om_stax_builder_create(env, xml_reader);
-
-/** create SOAP builder */
-
-soap_builder = axis2_soap_builder_create(env, om_builder , AXIS2_SOAP_ENVELOPE_NAMESPACE_URI);
-
-/** get soap envelope */
-soap_envelope = AXIS2_SOAP_BUILDER_GET_SOAP_ENVELOPE(soap_builder, env);</pre>
+<pre text="#oooo">
+<font face="Monospace">
+<font color="#000000">axis2_xml_reader_t</font> *<font color="#000000">xml_reader</font> = <font color="#000000">NULL</font>;<br>
+<font color="#000000">axis2_om_stax_builder_t</font> *<font color="#000000">om_builder</font> = <font color="#000000">NULL</font>;<br>
+<font color="#000000">axis2_soap_builder_t</font> *<font color="#000000">soap_builder</font> = <font color="#000000">NULL</font>;<br>
+<font color="#000000">axis2_soap_envelope_t</font> *<font color="#000000">soap_envelope</font> = <font color="#000000">NULL</font>;<br>
+<font color="#808080"><i>/** create the parser */</i></font><br>
+<font color="#000000">axis2_xml_reader_t</font> *<font color="#000000">xml_reader</font> = <font color="#000000">axis2_xml_reader_create_for_file</font>(<font color="#000000">env</font>, <font color="#FF0000">"test_soap.xml"</font>,<font color="#000000">NULL</font>);<br>
+<font color="#808080"><i>/** create the OM builder */</i></font><br>
+<font color="#000000">om_builder</font> = <font color="#000000">axis2_om_stax_builder_create</font>(<font color="#000000">env</font>, <font color="#000000">xml_reader</font>);<br>
+<font color="#808080"><i>/** create SOAP builder */</i></font><br>
+<font color="#000000">soap_builder</font> = <font color="#000000">axis2_soap_builder_create</font>(<font color="#000000">env</font>, <font color="#000000">om_builder</font> , <font color="#000000">AXIS2_SOAP_ENVELOPE_NAMESPACE_URI</font>);<br>
+<font color="#808080"><i>/** get soap envelope */</i></font><br>
+<font color="#000000">soap_envelope</font> = <font color="#000000">AXIS2_SOAP_BUILDER_GET_SOAP_ENVELOPE</font>(<font color="#000000">soap_builder</font>, <font color="#000000">env</font>);<br>
+</font></pre>
<br />
@@ -689,124 +685,144 @@
<p></p>
</div>
-<pre>#include <axis2_om_node.h>
-#include <axis2.h>
-#include <axis2_env.h>
-#include <axis2_om_element.h>
-#include <axis2_om_document.h>
-#include <axis2_om_stax_builder.h>
-#include <axis2_xml_reader.h>
-#include <axis2_log_default.h>
-#include <axis2_error_default.h>
-#include <axis2_xml_writer.h>
-#include <axis2_om_output.h>
-#include <stdio.h>
+<pre text="#000000">
+<font face="Monospace">
+<font color="#008000">#include <axis2_om_node.h></font>
+<font color="#008000">#include <axis2.h></font>
+<font color="#008000">#include <axis2_env.h></font>
+<font color="#008000">#include <axis2_om_element.h></font>
+<font color="#008000">#include <axis2_om_document.h></font>
+<font color="#008000">#include <axis2_om_stax_builder.h></font>
+<font color="#008000">#include <axis2_xml_reader.h></font>
+<font color="#008000">#include <axis2_log_default.h></font>
+<font color="#008000">#include <axis2_error_default.h></font>
+<font color="#008000">#include <axis2_xml_writer.h></font>
+<font color="#008000">#include <axis2_om_output.h></font>
+<font color="#008000">#include <stdio.h></font>
+
+
+<font color="#000000">FILE</font> *<font color="#000000">f</font> = <font color="#000000">NULL</font>;
+<font color="#800000">int</font> <font color="#000000">read_input_callback</font>(<font color="#800000">char</font> *<font color="#000000">buffer</font>, <font color="#800000">int</font> <font color="#000000">size</font>, <font color="#800000">void</font>* <font color="#000000">ctx</font>)
-FILE *f = NULL;
-int read_input_callback(char *buffer, int size, void* ctx)
{
- return fread(buffer, sizeof(char), size, f);
+ <font color="#000000"><b>return</b></font> <font color="#000000">fread</font>(<font color="#000000">buffer</font>, <font color="#000000"><b>sizeof</b></font>(<font color="#800000">char</font>), <font color="#000000">size</font>, <font color="#000000">f</font>);
}
-
-int close_input_callback()
+<font color="#800000">int</font> <font color="#000000">close_input_callback</font>()
{
- return fclose(f);
+ <font color="#000000"><b>return</b></font> <font color="#000000">fclose</font>(<font color="#000000">f</font>);
}
-axis2_env_t * create_environment()
+<font color="#000000">axis2_env_t</font> * <font color="#000000">create_environment</font>()
+
{
- axis2_allocator_t *allocator = NULL;
- axis2_env_t *env = NULL;
- axis2_log_t *log = NULL;
- axis2_error_t *error = NULL;
- allocator = axis2_allocator_init(NULL);
- log = axis2_log_create(allocator, NULL, NULL);
- error = axis2_error_create(allocator);
- env = axis2_env_create_with_error_log(allocator, log, error);
- return env;
+ <font color="#000000">axis2_allocator_t</font> *<font color="#000000">allocator</font> = <font color="#000000">NULL</font>;
+ <font color="#000000">axis2_env_t</font> *<font color="#000000">env</font> = <font color="#000000">NULL</font>;
+ <font color="#000000">axis2_log_t</font> *<font color="#000000">log</font> = <font color="#000000">NULL</font>;
+
+ <font color="#000000">axis2_error_t</font> *<font color="#000000">error</font> = <font color="#000000">NULL</font>;
+ <font color="#000000">allocator</font> = <font color="#000000">axis2_allocator_init</font>(<font color="#000000">NULL</font>);
+ <font color="#000000">log</font> = <font color="#000000">axis2_log_create</font>(<font color="#000000">allocator</font>, <font color="#000000">NULL</font>, <font color="#000000">NULL</font>);
+
+ <font color="#000000">error</font> = <font color="#000000">axis2_error_create</font>(<font color="#000000">allocator</font>);
+ <font color="#000000">env</font> = <font color="#000000">axis2_env_create_with_error_log</font>(<font color="#000000">allocator</font>, <font color="#000000">log</font>, <font color="#000000">error</font>);
+ <font color="#000000"><b>return</b></font> <font color="#000000">env</font>;
}
-build_and_serialize_om(axis2_env_t **env)
+<font color="#000000">build_and_serialize_om</font>(<font color="#000000">axis2_env_t</font> **<font color="#000000">env</font>)
{
- axis2_om_node_t *root_node = NULL:
- axis2_om_element_t *root_ele = NULL;
- axis2_om_document_t *document = NULL;
- axis2_om_stax_builder_t *om_builder = NULL;
- axis2_xml_reader_t *xml_reader = NULL;
- axis2_xml_writer_t *xml_writer = NULL;
- axis2_om_output_t *om_output = NULL;
- axis2_char_t *buffer = NULL;
- f = fopen("test.xml");
- xml_reader = axis2_xml_reader_create_for_memory(env, read_input_callback,
- close_input_callback, NULL, NULL);
- if(!xml_reader)
- return -1;
- om_builder = axis2_om_stax_builder_create(env, xml_reader);
- if(!om_builder)
- {
- AXIS2_XML_READER_FREE(xml_reader, env);
- return AXIS2_FAILURE;
- }
+ <font color="#000000">axis2_om_node_t</font> *<font color="#000000">root_node</font> = <font color="#000000">NULL</font>:
- document = AXIS2_OM_STAX_BUILDER_GET_DOCUMENT(env, om_builder);
- if(!document)
- {
- AXIS2_OM_STAX_BUILDER_FREE(om_builder, env);
- return AXIS2_FAILURE;
- }
- root_node = AXIS2_OM_DOCUMENT_GET_ROOT_ELEMENT(document, env);
- if(!root_node)
- {
- AXIS2_OM_STAX_BUILDER_FREE(om_builder, env);
- return AXIS2_FAILURE;
- }
- if(root_node)
- {
- if(AXIS2_OM_NODE_GET_NODE_TYPE(root_node, env) == AXIS2_OM_ELEMENT)
- {
- root_ele = (axis2_om_element_t*)AXIS2_OM_NODE_GET_DATA_ELEMENT
- (root_node, env);
-
- if(root_ele)
- {
- printf(" %s" , AXIS2_OM_ELEMENT_GET_DATA_ELEMENT(root_node, env));
- }
- }
- }
-
- AXIS2_OM_DOCUMENT_BUILD_ALL(document, env);
-
- xml_writer = axis2_xml_writer_create_for_memory(env, NULL, AXIS2_TRUE, 0);
-
- om_output = axis2_om_output_create(env, xml_writer);
-
- AXIS2_OM_NODE_SERIALIZE(node1, env, om_output);
-
- buffer = AXIS2_XML_WRITER_GET_XML(xml_writer, env);
-
- printf("The output XML is ->>>>\n %s ", buffer);
- /** when om_output is freed xml_writer is also freed */
- AXIS2_OM_OUTPUT_FREE(om_output, env);
- /** when om_builder is freed , the builder, om_document and the entire om structure is freed */
- AXIS2_OM_STAX_BUILDER_FREE(om_builder, env);
-
- AXIS2_FREE((*env)->allocator, buffer);
- return AXIS2_SUCCESS;
+ <font color="#000000">axis2_om_element_t</font> *<font color="#000000">root_ele</font> = <font color="#000000">NULL</font>;
+ <font color="#000000">axis2_om_document_t</font> *<font color="#000000">document</font> = <font color="#000000">NULL</font>;
+ <font color="#000000">axis2_om_stax_builder_t</font> *<font color="#000000">om_builder</font> = <font color="#000000">NULL</font>;
+
+ <font color="#000000">axis2_xml_reader_t</font> *<font color="#000000">xml_reader</font> = <font color="#000000">NULL</font>;
+ <font color="#000000">axis2_xml_writer_t</font> *<font color="#000000">xml_writer</font> = <font color="#000000">NULL</font>;
+ <font color="#000000">axis2_om_output_t</font> *<font color="#000000">om_output</font> = <font color="#000000">NULL</font>;
+
+ <font color="#000000">axis2_char_t</font> *<font color="#000000">buffer</font> = <font color="#000000">NULL</font>;
+
+ <font color="#000000">f</font> = <font color="#000000">fopen</font>(<font color="#FF0000">"test.xml"</font>);
+ <font color="#000000">xml_reader</font> = <font color="#000000">axis2_xml_reader_create_for_memory</font>(<font color="#000000">env</font>, <font color="#000000">read_input_callback</font>,
+
+ <font color="#000000">close_input_callback</font>, <font color="#000000">NULL</font>, <font color="#000000">NULL</font>);
+ <font color="#000000"><b>if</b></font>(!<font color="#000000">xml_reader</font>)
+ <font color="#000000"><b>return</b></font> -<font color="#0000FF">1</font>;
+
+ <font color="#000000">om_builder</font> = <font color="#000000">axis2_om_stax_builder_create</font>(<font color="#000000">env</font>, <font color="#000000">xml_reader</font>);
+ <font color="#000000"><b>if</b></font>(!<font color="#000000">om_builder</font>)
+ {
+ <font color="#000000">AXIS2_XML_READER_FREE</font>(<font color="#000000">xml_reader</font>, <font color="#000000">env</font>);
+ <font color="#000000"><b>return</b></font> <font color="#000000">AXIS2_FAILURE</font>;
+ }
+ <font color="#000000">document</font> = <font color="#000000">AXIS2_OM_STAX_BUILDER_GET_DOCUMENT</font>(<font color="#000000">env</font>, <font color="#000000">om_builder</font>);
+ <font color="#000000"><b>if</b></font>(!<font color="#000000">document</font>)
+ {
+ <font color="#000000">AXIS2_OM_STAX_BUILDER_FREE</font>(<font color="#000000">om_builder</font>, <font color="#000000">env</font>);
+ <font color="#000000"><b>return</b></font> <font color="#000000">AXIS2_FAILURE</font>;
+ }
+
+ <font color="#000000">root_node</font> = <font color="#000000">AXIS2_OM_DOCUMENT_GET_ROOT_ELEMENT</font>(<font color="#000000">document</font>, <font color="#000000">env</font>);
+ <font color="#000000"><b>if</b></font>(!<font color="#000000">root_node</font>)
+ {
+ <font color="#000000">AXIS2_OM_STAX_BUILDER_FREE</font>(<font color="#000000">om_builder</font>, <font color="#000000">env</font>);
+ <font color="#000000"><b>return</b></font> <font color="#000000">AXIS2_FAILURE</font>;
+ }
+ <font color="#000000"><b>if</b></font>(<font color="#000000">root_node</font>)
+ {
+ <font color="#000000"><b>if</b></font>(<font color="#000000">AXIS2_OM_NODE_GET_NODE_TYPE</font>(<font color="#000000">root_node</font>, <font color="#000000">env</font>) == <font color="#000000">AXIS2_OM_ELEMENT</font>)
+ {
+ <font color="#000000">root_ele</font> = (<font color="#000000">axis2_om_element_t</font>*)<font color="#000000">AXIS2_OM_NODE_GET_DATA_ELEMENT</font> (<font color="#000000">root_node</font>, <font color="#000000">env</font>);
+ <font color="#000000"><b>if</b></font>(<font color="#000000">root_ele</font>)
+ {
+ <font color="#000000">printf</font>(<font color="#FF0000">" %s"</font> , <font color="#000000">AXIS2_OM_ELEMENT_GET_DATA_ELEMENT</font>(<font color="#000000">root_node</font>, <font color="#000000">env</font>));
+ }
+ }
+ }
+ <font color="#000000">AXIS2_OM_DOCUMENT_BUILD_ALL</font>(<font color="#000000">document</font>, <font color="#000000">env</font>);
+
+ <font color="#000000">xml_writer</font> = <font color="#000000">axis2_xml_writer_create_for_memory</font>(<font color="#000000">env</font>, <font color="#000000">NULL</font>, <font color="#000000">AXIS2_TRUE</font>, <font color="#0000FF">0</font>);
+
+ <font color="#000000">om_output</font> = <font color="#000000">axis2_om_output_create</font>(<font color="#000000">env</font>, <font color="#000000">xml_writer</font>);
+
+ <font color="#000000">AXIS2_OM_NODE_SERIALIZE</font>(<font color="#000000">node1</font>, <font color="#000000">env</font>, <font color="#000000">om_output</font>);
+ <font color="#000000">buffer</font> = <font color="#000000">AXIS2_XML_WRITER_GET_XML</font>(<font color="#000000">xml_writer</font>, <font color="#000000">env</font>);
+
+ <font color="#000000">printf</font>(<font color="#FF0000">"The output XML is ->>>>\n %s "</font>, <font color="#000000">buffer</font>);
+
+
+ <font color="#808080"><i>/** when om_output is freed xml_writer is also freed */</i></font>
+
+ <font color="#000000">AXIS2_OM_OUTPUT_FREE</font>(<font color="#000000">om_output</font>, <font color="#000000">env</font>);
+
+ <font color="#808080"><i>/** when om_builder is freed , the builder, om_document and the entire om structure is freed */</i></font>
+ <font color="#000000">AXIS2_OM_STAX_BUILDER_FREE</font>(<font color="#000000">om_builder</font>, <font color="#000000">env</font>);
+
+ <font color="#000000">AXIS2_FREE</font>((*<font color="#000000">env</font>)-><font color="#000000">allocator</font>, <font color="#000000">buffer</font>);
+
+ <font color="#000000"><b>return</b></font> <font color="#000000">AXIS2_SUCCESS</font>;
+
}
-
-int main()
+<font color="#800000">int</font> <font color="#000000">main</font>()
{
- int status = AXIS2_SUCCESS;
- axis2_env_t *env = NULL;
- axis2_allocator_t *allocator = NULL;
- env = create_environment();
- status = build_and_serialize_om(&env);
- if(status == AXIS2_FAILURE)
- {
- printf(" build om failed");
- }
- axis2_env_free(env);
- return 0;
-}</pre>
+ <font color="#800000">int</font> <font color="#000000">status</font> = <font color="#000000">AXIS2_SUCCESS</font>;
+
+ <font color="#000000">axis2_env_t</font> *<font color="#000000">env</font> = <font color="#000000">NULL</font>;
+ <font color="#000000">axis2_allocator_t</font> *<font color="#000000">allocator</font> = <font color="#000000">NULL</font>;
+ <font color="#000000">env</font> = <font color="#000000">create_environment</font>();
+<br>
+ <font color="#000000">status</font> = <font color="#000000">build_and_serialize_om</font>(&<font color="#000000">env</font>);
+
+ <font color="#000000"><b>if</b></font>(<font color="#000000">status</font> == <font color="#000000">AXIS2_FAILURE</font>)
+ {
+ <font color="#000000">printf</font>(<font color="#FF0000">" build om failed"</font>);
+ }
+
+ <font color="#000000">axis2_env_free</font>(<font color="#000000">env</font>);
+
+ <font color="#000000"><b>return</b></font> <font color="#0000FF">0</font>;
+}
+</font>
+</pre>
</body>
</html>