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/08/08 07:57:52 UTC
svn commit: r429593 [2/3] - in /webservices/axis2/trunk/c/xml_schema:
include/ samples/ src/ test/
Modified: webservices/axis2/trunk/c/xml_schema/src/xml_schema_derivation_method.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/xml_schema/src/xml_schema_derivation_method.c?rev=429593&r1=429592&r2=429593&view=diff
==============================================================================
--- webservices/axis2/trunk/c/xml_schema/src/xml_schema_derivation_method.c (original)
+++ webservices/axis2/trunk/c/xml_schema/src/xml_schema_derivation_method.c Mon Aug 7 22:57:49 2006
@@ -31,8 +31,6 @@
xml_schema_enum_t *schema_enum;
- axis2_hash_t *methods;
-
xml_schema_types_t type;
axis2_array_list_t *members;
@@ -83,7 +81,6 @@
}
derivation_method_impl->schema_enum = NULL;
- derivation_method_impl->methods = NULL;
derivation_method_impl->members = NULL;
derivation_method_impl->ht_super = NULL;
derivation_method_impl->type = XML_SCHEMA_DERIVATION_METHOD;
@@ -143,27 +140,6 @@
AXIS2_ARRAY_LIST_ADD(derivation_method_impl->members, env,
AXIS2_STRDUP(XML_SCHEMA_CONST_UNION, env));
- derivation_method_impl->methods = axis2_hash_make(env);
-
- if(!derivation_method_impl->methods)
- {
- xml_schema_derivation_method_free(
- &(derivation_method_impl->derivation_method), env);
- AXIS2_ERROR_SET(env->error, AXIS2_ERROR_NO_MEMORY, AXIS2_FAILURE);
- return NULL;
- }
-
- axis2_hash_set(derivation_method_impl->methods, "free", AXIS2_HASH_KEY_STRING,
- xml_schema_derivation_method_free);
-
- axis2_hash_set(derivation_method_impl->methods, "get_values", AXIS2_HASH_KEY_STRING,
- xml_schema_derivation_method_get_values);
-
- axis2_hash_set(derivation_method_impl->methods, "super_objs", AXIS2_HASH_KEY_STRING,
- xml_schema_derivation_method_super_objs);
-
- axis2_hash_set(derivation_method_impl->methods, "get_type", AXIS2_HASH_KEY_STRING,
- xml_schema_derivation_method_get_type);
derivation_method_impl->schema_enum =
xml_schema_enum_create(env, value);
@@ -176,15 +152,18 @@
}
derivation_method_impl->ht_super = axis2_hash_make(env);
- axis2_hash_set(derivation_method_impl->ht_super, "XML_SCHEMA_DERIVATION_METHOD",
+ axis2_hash_set(derivation_method_impl->ht_super, AXIS2_STRDUP("XML_SCHEMA_DERIVATION_METHOD", env),
AXIS2_HASH_KEY_STRING, &(derivation_method_impl->derivation_method));
- axis2_hash_set(derivation_method_impl->ht_super, "XML_SCHEMA_ENUM",
+ axis2_hash_set(derivation_method_impl->ht_super, AXIS2_STRDUP("XML_SCHEMA_ENUM", env),
AXIS2_HASH_KEY_STRING, derivation_method_impl->schema_enum);
+
status = xml_schema_enum_resolve_methods(
&(derivation_method_impl->derivation_method.base),
env, derivation_method_impl->schema_enum,
- derivation_method_impl->methods);
+ xml_schema_derivation_method_super_objs,
+ xml_schema_derivation_method_get_type,
+ xml_schema_derivation_method_free);
return &(derivation_method_impl->derivation_method);
}
Modified: webservices/axis2/trunk/c/xml_schema/src/xml_schema_documentation.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/xml_schema/src/xml_schema_documentation.c?rev=429593&r1=429592&r2=429593&view=diff
==============================================================================
--- webservices/axis2/trunk/c/xml_schema/src/xml_schema_documentation.c (original)
+++ webservices/axis2/trunk/c/xml_schema/src/xml_schema_documentation.c Mon Aug 7 22:57:49 2006
@@ -35,8 +35,6 @@
axis2_hash_t *ht_super;
- axis2_hash_t *methods;
-
axis2_char_t *source;
axiom_child_element_iterator_t *markup;
@@ -115,7 +113,6 @@
documentation_impl->documentation.ops = NULL;
documentation_impl->obj_type = XML_SCHEMA_APP_INFO;
documentation_impl->ht_super = NULL;
- documentation_impl->methods = NULL;
documentation_impl->source = NULL;
documentation_impl->markup = NULL;
documentation_impl->language = NULL;
@@ -160,34 +157,6 @@
xml_schema_documentation_get_language;
- documentation_impl->methods = axis2_hash_make(env);
- if(!documentation_impl->methods)
- {
- xml_schema_documentation_free(&(documentation_impl->documentation), env);
- AXIS2_ERROR_SET(env->error, AXIS2_ERROR_NO_MEMORY, AXIS2_FAILURE);
- return NULL;
- }
- axis2_hash_set(documentation_impl->methods, "free",
- AXIS2_HASH_KEY_STRING, xml_schema_documentation_free);
-
- axis2_hash_set(documentation_impl->methods, "super_objs",
- AXIS2_HASH_KEY_STRING, xml_schema_documentation_super_objs);
-
- axis2_hash_set(documentation_impl->methods, "get_type",
- AXIS2_HASH_KEY_STRING, xml_schema_documentation_get_type);
-
- axis2_hash_set(documentation_impl->methods, "get_source",
- AXIS2_HASH_KEY_STRING, xml_schema_documentation_get_source);
-
- axis2_hash_set(documentation_impl->methods, "set_source",
- AXIS2_HASH_KEY_STRING, xml_schema_documentation_set_source);
-
- axis2_hash_set(documentation_impl->methods, "get_markup",
- AXIS2_HASH_KEY_STRING, xml_schema_documentation_get_markup);
-
- axis2_hash_set(documentation_impl->methods, "set_markup",
- AXIS2_HASH_KEY_STRING, xml_schema_documentation_set_markup);
-
documentation_impl->schema_obj = xml_schema_obj_create(env);
if(!documentation_impl->schema_obj)
{
@@ -203,14 +172,19 @@
AXIS2_ERROR_SET(env->error, AXIS2_ERROR_NO_MEMORY, AXIS2_FAILURE);
return NULL;
}
- axis2_hash_set(documentation_impl->ht_super, "XML_SCHEMA_DOCUMENTATION",
+ axis2_hash_set(documentation_impl->ht_super,
+ AXIS2_STRDUP("XML_SCHEMA_DOCUMENTATION", env),
AXIS2_HASH_KEY_STRING, &(documentation_impl->documentation));
- axis2_hash_set(documentation_impl->ht_super, "XML_SCHEMA_OBJ",
+ axis2_hash_set(documentation_impl->ht_super,
+ AXIS2_STRDUP("XML_SCHEMA_OBJ", env),
AXIS2_HASH_KEY_STRING, documentation_impl->schema_obj);
status = xml_schema_obj_resolve_methods(&(documentation_impl->documentation.base),
- env, documentation_impl->schema_obj, documentation_impl->methods);
+ env, documentation_impl->schema_obj,
+ xml_schema_documentation_super_objs,
+ xml_schema_documentation_get_type,
+ xml_schema_documentation_free);
return &(documentation_impl->documentation);
}
@@ -237,12 +211,6 @@
documentation_impl->ht_super = NULL;
}
- if(NULL != documentation_impl->methods)
- {
- axis2_hash_free(documentation_impl->methods, env);
- documentation_impl->methods = NULL;
- }
-
if(NULL != documentation_impl->schema_obj)
{
XML_SCHEMA_OBJ_FREE(documentation_impl->schema_obj, env);
Modified: webservices/axis2/trunk/c/xml_schema/src/xml_schema_element.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/xml_schema/src/xml_schema_element.c?rev=429593&r1=429592&r2=429593&view=diff
==============================================================================
--- webservices/axis2/trunk/c/xml_schema/src/xml_schema_element.c (original)
+++ webservices/axis2/trunk/c/xml_schema/src/xml_schema_element.c Mon Aug 7 22:57:49 2006
@@ -20,6 +20,8 @@
#include <xml_schema_derivation_method.h>
#include <xml_schema_obj_collection.h>
#include <xml_schema_type.h>
+#include <xml_schema_simple_type.h>
+#include <xml_schema_complex_type.h>
#include <xml_schema_form.h>
#include <axis2_utils.h>
@@ -39,7 +41,6 @@
xml_schema_particle_t *particle;
- axis2_hash_t *methods;
/**
* Attribute used to block a type derivation.
*/
@@ -324,7 +325,6 @@
}
element_impl->type_recv = NULL;
- element_impl->methods = NULL;
element_impl->block = NULL;
element_impl->block_resolved = NULL;
element_impl->constraints = NULL;
@@ -336,7 +336,6 @@
element_impl->form = NULL;
element_impl->is_abstract = AXIS2_FALSE;
element_impl->is_nillable = AXIS2_FALSE;
- element_impl->methods = NULL;
element_impl->schema_type = NULL;
element_impl->schema_type_qname = NULL;
element_impl->element.ops = NULL;
@@ -433,84 +432,7 @@
element_impl->element.ops->set_type =
xml_schema_element_set_type;
- element_impl->methods = axis2_hash_make(env);
- if(!element_impl->methods)
- {
- AXIS2_ERROR_SET(env->error, AXIS2_ERROR_NO_MEMORY, AXIS2_FAILURE);
- return NULL;
- }
- axis2_hash_set(element_impl->methods, "free", AXIS2_HASH_KEY_STRING,
- xml_schema_element_free);
- axis2_hash_set(element_impl->methods, "get_constraints", AXIS2_HASH_KEY_STRING,
- xml_schema_element_get_constraints);
- axis2_hash_set(element_impl->methods, "get_type", AXIS2_HASH_KEY_STRING,
- xml_schema_element_get_type);
- axis2_hash_set(element_impl->methods, "super_objs", AXIS2_HASH_KEY_STRING,
- xml_schema_element_super_objs);
- axis2_hash_set(element_impl->methods, "get_default_value", AXIS2_HASH_KEY_STRING,
- xml_schema_element_get_default_value);
- axis2_hash_set(element_impl->methods, "set_default_value", AXIS2_HASH_KEY_STRING,
- xml_schema_element_set_default_value);
- axis2_hash_set(element_impl->methods, "get_block", AXIS2_HASH_KEY_STRING,
- xml_schema_element_get_block);
- axis2_hash_set(element_impl->methods, "set_block", AXIS2_HASH_KEY_STRING,
- xml_schema_element_set_block);
- axis2_hash_set(element_impl->methods, "get_final", AXIS2_HASH_KEY_STRING,
- xml_schema_element_get_final);
- axis2_hash_set(element_impl->methods, "set_final", AXIS2_HASH_KEY_STRING,
- xml_schema_element_set_final);
- axis2_hash_set(element_impl->methods, "get_block_resolved", AXIS2_HASH_KEY_STRING,
- xml_schema_element_get_block_resolved);
- axis2_hash_set(element_impl->methods, "get_fixed_value", AXIS2_HASH_KEY_STRING,
- xml_schema_element_get_fixed_value);
- axis2_hash_set(element_impl->methods, "set_fixed_value", AXIS2_HASH_KEY_STRING,
- xml_schema_element_set_fixed_value);
- axis2_hash_set(element_impl->methods, "get_element_type", AXIS2_HASH_KEY_STRING,
- xml_schema_element_get_element_type);
- axis2_hash_set(element_impl->methods, "get_form", AXIS2_HASH_KEY_STRING,
- xml_schema_element_get_form);
- axis2_hash_set(element_impl->methods, "set_form", AXIS2_HASH_KEY_STRING,
- xml_schema_element_set_form);
- axis2_hash_set(element_impl->methods, "is_abstract", AXIS2_HASH_KEY_STRING,
- xml_schema_element_is_abstract);
- axis2_hash_set(element_impl->methods, "set_abstract", AXIS2_HASH_KEY_STRING,
- xml_schema_element_set_abstract);
- axis2_hash_set(element_impl->methods, "is_nillable", AXIS2_HASH_KEY_STRING,
- xml_schema_element_is_nillable);
- axis2_hash_set(element_impl->methods, "set_nillable", AXIS2_HASH_KEY_STRING,
- xml_schema_element_set_nillable);
- axis2_hash_set(element_impl->methods, "get_name", AXIS2_HASH_KEY_STRING,
- xml_schema_element_get_name);
- axis2_hash_set(element_impl->methods, "set_name", AXIS2_HASH_KEY_STRING,
- xml_schema_element_set_name);
- axis2_hash_set(element_impl->methods, "get_ref_qname", AXIS2_HASH_KEY_STRING,
- xml_schema_element_get_ref_qname);
- axis2_hash_set(element_impl->methods, "set_ref_qname", AXIS2_HASH_KEY_STRING,
- xml_schema_element_set_ref_qname);
- axis2_hash_set(element_impl->methods, "get_qname", AXIS2_HASH_KEY_STRING,
- xml_schema_element_get_qname);
- axis2_hash_set(element_impl->methods, "get_qname", AXIS2_HASH_KEY_STRING,
- xml_schema_element_get_qname);
- axis2_hash_set(element_impl->methods, "set_qname", AXIS2_HASH_KEY_STRING,
- xml_schema_element_set_qname);
- axis2_hash_set(element_impl->methods, "get_schema_type", AXIS2_HASH_KEY_STRING,
- xml_schema_element_get_schema_type);
- axis2_hash_set(element_impl->methods, "set_schema_type", AXIS2_HASH_KEY_STRING,
- xml_schema_element_set_schema_type);
- axis2_hash_set(element_impl->methods, "get_schema_type_qname", AXIS2_HASH_KEY_STRING,
- xml_schema_element_get_schema_type_qname);
- axis2_hash_set(element_impl->methods, "set_schema-type_qname", AXIS2_HASH_KEY_STRING,
- xml_schema_element_set_schema_type_qname);
- axis2_hash_set(element_impl->methods, "get_substitution_group", AXIS2_HASH_KEY_STRING,
- xml_schema_element_get_substitution_group);
- axis2_hash_set(element_impl->methods, "set_substitution_group", AXIS2_HASH_KEY_STRING,
- xml_schema_element_set_substitution_group);
- axis2_hash_set(element_impl->methods, "to_string", AXIS2_HASH_KEY_STRING,
- xml_schema_element_to_string);
- axis2_hash_set(element_impl->methods, "set_type", AXIS2_HASH_KEY_STRING,
- xml_schema_element_set_type);
-
- /*element_impl->type_recv = xml_schema_type_receiver_create(env); */
+ /*element_impl->type_recv = xml_schema_type_receiver_create(env); */
element_impl->particle = xml_schema_particle_create(env);
if(!element_impl->particle)
{
@@ -524,22 +446,25 @@
return NULL;
}
- axis2_hash_set(element_impl->ht_super, "XML_SCHEMA_ELEMENT",
+ axis2_hash_set(element_impl->ht_super, AXIS2_STRDUP("XML_SCHEMA_ELEMENT", env),
AXIS2_HASH_KEY_STRING, &(element_impl->element));
- axis2_hash_set(element_impl->ht_super, "XML_SCHEMA_PARTICLE",
+
+ axis2_hash_set(element_impl->ht_super, AXIS2_STRDUP("XML_SCHEMA_PARTICLE", env),
AXIS2_HASH_KEY_STRING, element_impl->particle);
annotated = XML_SCHEMA_PARTICLE_GET_BASE_IMPL(element_impl->particle, env);
if(NULL != annotated)
{
- axis2_hash_set(element_impl->ht_super, "XML_SCHEMA_ANNOTATED",
+ axis2_hash_set(element_impl->ht_super, AXIS2_STRDUP("XML_SCHEMA_ANNOTATED", env),
AXIS2_HASH_KEY_STRING, &(element_impl->element));
- axis2_hash_set(element_impl->ht_super, "XML_SCHEMA_OBJ",
+ axis2_hash_set(element_impl->ht_super, AXIS2_STRDUP("XML_SCHEMA_OBJ", env),
AXIS2_HASH_KEY_STRING, XML_SCHEMA_ANNOTATED_GET_BASE_IMPL(annotated, env));
}
xml_schema_particle_resolve_methods(
&(element_impl->element.base), env, element_impl->particle,
- element_impl->methods);
+ xml_schema_element_super_objs,
+ xml_schema_element_get_type,
+ xml_schema_element_free);
return &(element_impl->element);
}
@@ -559,39 +484,44 @@
XML_SCHEMA_PARTICLE_FREE(element_impl->particle, env);
element_impl->particle = NULL;
}
- if(NULL != element_impl->methods)
- {
- axis2_hash_free(element_impl->methods, env);
- element_impl->methods = NULL;
- }
if(NULL != element_impl->type_recv)
{
XML_SCHEMA_ANNOTATED_FREE(element_impl->type_recv, env);
element_impl->type_recv = NULL;
}
- if(NULL != element_impl->element.ops)
- {
- AXIS2_FREE(env->allocator, element_impl->element.ops);
- element_impl->element.ops = NULL;
- }
+
+
+
if(NULL != element_impl->schema_type)
{
- /*
if(XML_SCHEMA_TYPE_GET_TYPE(element_impl->schema_type, env)
== XML_SCHEMA_SIMPLE_TYPE)
{
+ /*
XML_SCHEMA_SIMPLE_TYPE_FREE(element_impl->schema_type, env);
element_impl->schema_type = NULL;
- }
- if(XML_SCHEMA_TYPE_GET_TYPE(element_impl->schema_type, env)
+ */
+ }else if(XML_SCHEMA_TYPE_GET_TYPE(element_impl->schema_type, env)
== XML_SCHEMA_COMPLEX_TYPE)
{
+ /*
XML_SCHEMA_COMPLEX_TYPE_FREE(element_impl->schema_type, env);
+ */
}
- */
- XML_SCHEMA_TYPE_FREE(element_impl->schema_type, env);
}
+ if(NULL != element_impl->element.base.ops)
+ {
+ AXIS2_FREE(env->allocator, element_impl->element.base.ops);
+ element_impl->element.base.ops = NULL;
+
+ }
+ if(NULL != element_impl->element.ops)
+ {
+ AXIS2_FREE(env->allocator, element_impl->element.ops);
+ element_impl->element.ops = NULL;
+ }
+
if(element_impl)
{
AXIS2_FREE(env->allocator, element_impl);
Modified: webservices/axis2/trunk/c/xml_schema/src/xml_schema_enum.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/xml_schema/src/xml_schema_enum.c?rev=429593&r1=429592&r2=429593&view=diff
==============================================================================
--- webservices/axis2/trunk/c/xml_schema/src/xml_schema_enum.c (original)
+++ webservices/axis2/trunk/c/xml_schema/src/xml_schema_enum.c Mon Aug 7 22:57:49 2006
@@ -218,13 +218,15 @@
xml_schema_enum_t *schema_enum,
const axis2_env_t *env,
xml_schema_enum_t *schema_enum_impl,
- axis2_hash_t *methods)
+ XML_SCHEMA_SUPER_OBJS_FN super_objs,
+ XML_SCHEMA_GET_TYPE_FN get_type,
+ XML_SCHEMA_FREE_FN free_fn)
+
{
xml_schema_enum_impl_t *this_sch_enum_impl = NULL;
AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
AXIS2_PARAM_CHECK(env->error, schema_enum_impl, AXIS2_FAILURE);
- AXIS2_PARAM_CHECK(env->error, methods, AXIS2_FAILURE);
this_sch_enum_impl = (xml_schema_enum_impl_t*) schema_enum_impl;
@@ -237,13 +239,10 @@
return AXIS2_FAILURE;
}
- schema_enum->ops->free = axis2_hash_get(methods, "free",
- AXIS2_HASH_KEY_STRING);
+ schema_enum->ops->free = free_fn;
- schema_enum->ops->super_objs = axis2_hash_get(methods, "super_objs",
- AXIS2_HASH_KEY_STRING);
- schema_enum->ops->get_type = axis2_hash_get(methods, "get_type",
- AXIS2_HASH_KEY_STRING);
+ schema_enum->ops->super_objs = super_objs;
+ schema_enum->ops->get_type = get_type;
schema_enum->ops->get_value =
this_sch_enum_impl->schema_enum.ops->get_value;
@@ -254,13 +253,9 @@
schema_enum->ops->equals =
this_sch_enum_impl->schema_enum.ops->equals;
- schema_enum->ops->get_values = axis2_hash_get(methods,
- "get_values", AXIS2_HASH_KEY_STRING);
- if(!schema_enum->ops->get_values)
schema_enum->ops->get_values =
this_sch_enum_impl->schema_enum.ops->get_values;
return AXIS2_SUCCESS;
-
}
Modified: webservices/axis2/trunk/c/xml_schema/src/xml_schema_external.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/xml_schema/src/xml_schema_external.c?rev=429593&r1=429592&r2=429593&view=diff
==============================================================================
--- webservices/axis2/trunk/c/xml_schema/src/xml_schema_external.c (original)
+++ webservices/axis2/trunk/c/xml_schema/src/xml_schema_external.c Mon Aug 7 22:57:49 2006
@@ -28,8 +28,6 @@
xml_schema_t *schema;
- axis2_hash_t *methods;
-
xml_schema_types_t obj_type;
axis2_hash_t *ht_super;
@@ -96,7 +94,6 @@
}
external_impl->schema = NULL;
external_impl->annotated = NULL;
- external_impl->methods = NULL;
external_impl->external.ops = NULL;
external_impl->external.base.ops = NULL;
external_impl->ht_super = NULL;
@@ -130,44 +127,15 @@
external_impl->external.ops->set_schema_location =
xml_schema_external_set_schema_location;
- external_impl->methods = axis2_hash_make(env);
external_impl->ht_super = axis2_hash_make(env);
- if(!external_impl->methods || !external_impl->ht_super)
+ if(!external_impl->ht_super)
{
xml_schema_external_free(&(external_impl->external), env);
AXIS2_ERROR_SET(env->error, AXIS2_ERROR_NO_MEMORY, AXIS2_FAILURE);
return NULL;
}
- axis2_hash_set(external_impl->methods, "free",
- AXIS2_HASH_KEY_STRING,
- xml_schema_external_free);
-
- axis2_hash_set(external_impl->methods, "get_type",
- AXIS2_HASH_KEY_STRING,
- xml_schema_external_get_type);
-
- axis2_hash_set(external_impl->methods, "super_objs",
- AXIS2_HASH_KEY_STRING,
- xml_schema_external_super_objs);
-
- axis2_hash_set(external_impl->methods, "get_schema_location",
- AXIS2_HASH_KEY_STRING,
- xml_schema_external_get_schema_location);
-
- axis2_hash_set(external_impl->methods, "set_schema_location",
- AXIS2_HASH_KEY_STRING,
- xml_schema_external_set_schema_location);
-
- axis2_hash_set(external_impl->methods, "get_schema",
- AXIS2_HASH_KEY_STRING,
- xml_schema_external_get_schema);
-
- axis2_hash_set(external_impl->methods, "set_schema",
- AXIS2_HASH_KEY_STRING,
- xml_schema_external_set_schema);
-
external_impl->annotated = xml_schema_annotated_create(env);
if(!external_impl->annotated)
@@ -176,17 +144,19 @@
return NULL;
}
- axis2_hash_set(external_impl->ht_super, "XML_SCHEMA_EXTERNAL",
+ axis2_hash_set(external_impl->ht_super, AXIS2_STRDUP("XML_SCHEMA_EXTERNAL", env),
AXIS2_HASH_KEY_STRING, &(external_impl->external));
- axis2_hash_set(external_impl->ht_super, "XML_SCHEMA_ANNOTATED",
+ axis2_hash_set(external_impl->ht_super, AXIS2_STRDUP("XML_SCHEMA_ANNOTATED", env),
AXIS2_HASH_KEY_STRING, external_impl->annotated);
- axis2_hash_set(external_impl->ht_super, "XML_SCHEMA_OBJ",
+ axis2_hash_set(external_impl->ht_super, AXIS2_STRDUP("XML_SCHEMA_OBJ", env),
AXIS2_HASH_KEY_STRING,
XML_SCHEMA_ANNOTATED_GET_BASE_IMPL(external_impl->annotated, env));
status = xml_schema_annotated_resolve_methods(
&(external_impl->external.base), env, external_impl->annotated,
- external_impl->methods);
+ xml_schema_external_super_objs,
+ xml_schema_external_get_type,
+ xml_schema_external_free);
return &(external_impl->external);
}
@@ -209,12 +179,6 @@
AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
external_impl = AXIS2_INTF_TO_IMPL(external);
- if(NULL != external_impl->methods)
- {
- axis2_hash_free(external_impl->methods, env);
- external_impl->methods = NULL;
- }
-
if(NULL != external_impl->ht_super)
{
axis2_hash_free(external_impl->ht_super, env);
@@ -258,25 +222,23 @@
xml_schema_external_t *external,
const axis2_env_t *env,
xml_schema_external_t *external_impl,
- axis2_hash_t *methods)
+ XML_SCHEMA_SUPER_OBJS_FN super_objs,
+ XML_SCHEMA_GET_TYPE_FN get_type,
+ XML_SCHEMA_FREE_FN free_fn)
{
xml_schema_external_impl_t *sch_ext_impl = NULL;
AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
AXIS2_PARAM_CHECK(env->error, external_impl, AXIS2_FAILURE);
- AXIS2_PARAM_CHECK(env->error, methods, AXIS2_FAILURE);
sch_ext_impl = (xml_schema_external_impl_t *) external_impl;
external->ops = AXIS2_MALLOC(env->allocator,
sizeof(xml_schema_external_ops_t));
- external->ops->free = axis2_hash_get(methods, "free",
- AXIS2_HASH_KEY_STRING);
- external->ops->super_objs = axis2_hash_get(methods, "super_objs",
- AXIS2_HASH_KEY_STRING);
- external->ops->get_type = axis2_hash_get(methods, "type",
- AXIS2_HASH_KEY_STRING);
+ external->ops->free = free_fn;
+ external->ops->super_objs = super_objs;
+ external->ops->get_type = get_type;
external->ops->set_schema =
sch_ext_impl->external.ops->set_schema;
@@ -287,7 +249,7 @@
external->ops->get_schema_location =
sch_ext_impl->external.ops->get_schema_location;
return xml_schema_annotated_resolve_methods(&(external->base),
- env, sch_ext_impl->annotated, methods);
+ env, sch_ext_impl->annotated, super_objs, get_type, free_fn);
}
xml_schema_t * AXIS2_CALL
Modified: webservices/axis2/trunk/c/xml_schema/src/xml_schema_facet.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/xml_schema/src/xml_schema_facet.c?rev=429593&r1=429592&r2=429593&view=diff
==============================================================================
--- webservices/axis2/trunk/c/xml_schema/src/xml_schema_facet.c (original)
+++ webservices/axis2/trunk/c/xml_schema/src/xml_schema_facet.c Mon Aug 7 22:57:49 2006
@@ -27,8 +27,6 @@
xml_schema_annotated_t *annotated;
- axis2_hash_t *methods;
-
axis2_bool_t fixed;
int obj_type;
@@ -114,7 +112,7 @@
facet_impl->facet.ops = NULL;
facet_impl->obj_type = type;
facet_impl->facet.base.ops = NULL;
- facet_impl->methods = NULL;
+
facet_impl->fixed = fixed;
facet_impl->value = AXIS2_STRDUP(value, env);
@@ -145,29 +143,6 @@
facet_impl->facet.ops->super_objs =
xml_schema_facet_super_objs;
- facet_impl->methods = axis2_hash_make(env);
- if(!facet_impl->methods)
- {
- xml_schema_facet_free(&(facet_impl->facet), env);
- AXIS2_ERROR_SET(env->error, AXIS2_ERROR_NO_MEMORY, AXIS2_FAILURE);
- return NULL;
- }
- axis2_hash_set(facet_impl->methods, "free", AXIS2_HASH_KEY_STRING,
- xml_schema_facet_free);
- axis2_hash_set(facet_impl->methods, "is_fixed",
- AXIS2_HASH_KEY_STRING, xml_schema_facet_is_fixed);
- axis2_hash_set(facet_impl->methods, "set_fixed",
- AXIS2_HASH_KEY_STRING, xml_schema_facet_set_fixed);
- axis2_hash_set(facet_impl->methods, "get_value",
- AXIS2_HASH_KEY_STRING, xml_schema_facet_get_value);
- axis2_hash_set(facet_impl->methods, "set_value",
- AXIS2_HASH_KEY_STRING, xml_schema_facet_set_value);
-
- axis2_hash_set(facet_impl->methods, "get_type",
- AXIS2_HASH_KEY_STRING, xml_schema_facet_get_type);
- axis2_hash_set(facet_impl->methods, "super_objs",
- AXIS2_HASH_KEY_STRING, xml_schema_facet_super_objs);
-
facet_impl->annotated = xml_schema_annotated_create(env);
if(!facet_impl->annotated)
@@ -182,18 +157,20 @@
xml_schema_facet_free(&(facet_impl->facet), env);
return NULL;
}
- axis2_hash_set(facet_impl->ht_super, "XML_SCHEMA_FACET",
+ axis2_hash_set(facet_impl->ht_super, AXIS2_STRDUP("XML_SCHEMA_FACET", env),
AXIS2_HASH_KEY_STRING, &(facet_impl->facet));
- axis2_hash_set(facet_impl->ht_super, "XML_SCHEMA_ANNOTATED",
+ axis2_hash_set(facet_impl->ht_super, AXIS2_STRDUP("XML_SCHEMA_ANNOTATED", env),
AXIS2_HASH_KEY_STRING, facet_impl->annotated);
- axis2_hash_set(facet_impl->ht_super, "XML_SCHEMA_OBJ",
+ axis2_hash_set(facet_impl->ht_super, AXIS2_STRDUP("XML_SCHEMA_OBJ", env),
AXIS2_HASH_KEY_STRING,
XML_SCHEMA_ANNOTATED_GET_BASE_IMPL(
facet_impl->annotated, env));
status = xml_schema_annotated_resolve_methods(
&(facet_impl->facet.base), env, facet_impl->annotated,
- facet_impl->methods);
+ xml_schema_facet_super_objs,
+ xml_schema_facet_get_type,
+ xml_schema_facet_free);
return &(facet_impl->facet);
}
@@ -206,11 +183,7 @@
AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
facet_impl = AXIS2_INTF_TO_IMPL(facet);
- if(NULL != facet_impl->methods)
- {
- axis2_hash_free(facet_impl->methods, env);
- facet_impl->methods = NULL;
- }
+
if(NULL != facet_impl->annotated)
{
XML_SCHEMA_ANNOTATED_FREE(facet_impl->annotated, env);
Modified: webservices/axis2/trunk/c/xml_schema/src/xml_schema_form.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/xml_schema/src/xml_schema_form.c?rev=429593&r1=429592&r2=429593&view=diff
==============================================================================
--- webservices/axis2/trunk/c/xml_schema/src/xml_schema_form.c (original)
+++ webservices/axis2/trunk/c/xml_schema/src/xml_schema_form.c Mon Aug 7 22:57:49 2006
@@ -33,8 +33,7 @@
axis2_hash_t *ht_super;
- axis2_hash_t *methods;
-
+
axis2_array_list_t *members;
};
@@ -91,7 +90,7 @@
form_impl->schema_enum = NULL;
form_impl->obj_type = XML_SCHEMA_FORM;
form_impl->ht_super = NULL;
- form_impl->methods = NULL;
+
form_impl->members = NULL;
form_impl->form.ops = AXIS2_MALLOC(env->allocator,
sizeof(xml_schema_form_ops_t));
@@ -135,27 +134,6 @@
AXIS2_ARRAY_LIST_ADD(form_impl->members, env,
AXIS2_STRDUP(XML_SCHEMA_FORM_NONE, env));
- form_impl->methods = axis2_hash_make(env);
- if(!form_impl->methods)
- {
- xml_schema_form_free(&(form_impl->form), env);
- AXIS2_ERROR_SET(env->error,
- AXIS2_ERROR_NO_MEMORY, AXIS2_FAILURE);
- return NULL;
- }
-
- axis2_hash_set(form_impl->methods, "free",
- AXIS2_HASH_KEY_STRING, xml_schema_form_free);
-
- axis2_hash_set(form_impl->methods, "super_objs",
- AXIS2_HASH_KEY_STRING, xml_schema_form_super_objs);
-
- axis2_hash_set(form_impl->methods, "get_type",
- AXIS2_HASH_KEY_STRING, xml_schema_form_get_type);
-
- axis2_hash_set(form_impl->methods, "get_values",
- AXIS2_HASH_KEY_STRING, xml_schema_form_get_values);
-
form_impl->schema_enum = xml_schema_enum_create(env, value);
if(!form_impl->schema_enum)
{
@@ -175,15 +153,17 @@
return NULL;
}
- axis2_hash_set(form_impl->ht_super, "XML_SCHEMA_FORM",
+ axis2_hash_set(form_impl->ht_super, AXIS2_STRDUP("XML_SCHEMA_FORM", env),
AXIS2_HASH_KEY_STRING, &(form_impl->form));
- axis2_hash_set(form_impl->ht_super, "XML_SCHEMA_ENUM",
+ axis2_hash_set(form_impl->ht_super,AXIS2_STRDUP("XML_SCHEMA_ENUM", env),
AXIS2_HASH_KEY_STRING, form_impl->schema_enum);
status = xml_schema_enum_resolve_methods(
&(form_impl->form.base), env, form_impl->schema_enum,
- form_impl->methods);
+ xml_schema_form_super_objs,
+ xml_schema_form_get_type,
+ xml_schema_form_free);
return &(form_impl->form);
}
@@ -221,12 +201,7 @@
axis2_hash_free(form_impl->ht_super, env);
form_impl->ht_super = NULL;
}
-
- if(form_impl->methods)
- {
- axis2_hash_free(form_impl->methods, env);
- form_impl->methods = NULL;
- }
+
if(form_impl->schema_enum)
{
Modified: webservices/axis2/trunk/c/xml_schema/src/xml_schema_group.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/xml_schema/src/xml_schema_group.c?rev=429593&r1=429592&r2=429593&view=diff
==============================================================================
--- webservices/axis2/trunk/c/xml_schema/src/xml_schema_group.c (original)
+++ webservices/axis2/trunk/c/xml_schema/src/xml_schema_group.c Mon Aug 7 22:57:49 2006
@@ -30,7 +30,6 @@
xml_schema_annotated_t *annotated;
xml_schema_types_t obj_type;
axis2_hash_t *ht_super;
- axis2_hash_t *methods;
axis2_char_t *name;
xml_schema_group_base_t *particle;
};
@@ -91,7 +90,6 @@
group_impl->annotated = NULL;
group_impl->obj_type = XML_SCHEMA_GROUP;
group_impl->ht_super = NULL;
- group_impl->methods = NULL;
group_impl->name = NULL;
group_impl->particle = NULL;
group_impl->group.base.ops = NULL;
@@ -124,28 +122,6 @@
group_impl->group.ops->set_particle =
xml_schema_group_set_particle;
- group_impl->methods = axis2_hash_make(env);
- if(!group_impl->methods)
- {
- xml_schema_group_free(&(group_impl->group), env);
- AXIS2_ERROR_SET(env->error, AXIS2_ERROR_NO_MEMORY, AXIS2_FAILURE);
- return NULL;
- }
- axis2_hash_set(group_impl->methods, "free", AXIS2_HASH_KEY_STRING,
- xml_schema_group_free);
- axis2_hash_set(group_impl->methods, "super_objs", AXIS2_HASH_KEY_STRING,
- xml_schema_group_super_objs);
- axis2_hash_set(group_impl->methods, "get_type", AXIS2_HASH_KEY_STRING,
- xml_schema_group_get_type);
- axis2_hash_set(group_impl->methods, "get_name",
- AXIS2_HASH_KEY_STRING, xml_schema_group_get_name);
- axis2_hash_set(group_impl->methods, "set_name",
- AXIS2_HASH_KEY_STRING, xml_schema_group_set_name);
- axis2_hash_set(group_impl->methods, "get_particle",
- AXIS2_HASH_KEY_STRING, xml_schema_group_get_particle);
- axis2_hash_set(group_impl->methods, "set_particle",
- AXIS2_HASH_KEY_STRING, xml_schema_group_set_particle);
-
group_impl->annotated = xml_schema_annotated_create(env);
if(!group_impl->annotated)
{
@@ -159,17 +135,19 @@
AXIS2_ERROR_SET(env->error, AXIS2_ERROR_NO_MEMORY, AXIS2_FAILURE);
return NULL;
}
- axis2_hash_set(group_impl->ht_super, "XML_SCHEMA_GROUP", AXIS2_HASH_KEY_STRING,
+ axis2_hash_set(group_impl->ht_super, AXIS2_STRDUP("XML_SCHEMA_GROUP", env), AXIS2_HASH_KEY_STRING,
&(group_impl->group));
- axis2_hash_set(group_impl->ht_super, "XML_SCHEMA_ANNOTATED", AXIS2_HASH_KEY_STRING,
+ axis2_hash_set(group_impl->ht_super, AXIS2_STRDUP("XML_SCHEMA_ANNOTATED", env), AXIS2_HASH_KEY_STRING,
group_impl->annotated);
- axis2_hash_set(group_impl->ht_super, "XML_SCHEMA_OBJ", AXIS2_HASH_KEY_STRING,
+ axis2_hash_set(group_impl->ht_super, AXIS2_STRDUP("XML_SCHEMA_OBJ", env), AXIS2_HASH_KEY_STRING,
XML_SCHEMA_ANNOTATED_GET_BASE_IMPL(group_impl->annotated, env));
status = xml_schema_annotated_resolve_methods(
&(group_impl->group.base), env, group_impl->annotated,
- group_impl->methods);
+ xml_schema_group_super_objs,
+ xml_schema_group_get_type,
+ xml_schema_group_free);
return &(group_impl->group);
}
@@ -200,12 +178,7 @@
group_impl->ht_super = NULL;
}
- if(NULL != group_impl->methods)
- {
- axis2_hash_free(group_impl->methods, env);
- group_impl->methods = NULL;
- }
-
+
if(NULL != group_impl->annotated)
{
XML_SCHEMA_ANNOTATED_FREE(group_impl->annotated, env);
Modified: webservices/axis2/trunk/c/xml_schema/src/xml_schema_group_base.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/xml_schema/src/xml_schema_group_base.c?rev=429593&r1=429592&r2=429593&view=diff
==============================================================================
--- webservices/axis2/trunk/c/xml_schema/src/xml_schema_group_base.c (original)
+++ webservices/axis2/trunk/c/xml_schema/src/xml_schema_group_base.c Mon Aug 7 22:57:49 2006
@@ -21,7 +21,7 @@
xml_schema_group_base_impl_t;
/**
- * @brief Other Extension Struct Impl
+ * @brief group base Struct Impl
* Axis2 Other Extension
*/
struct xml_schema_group_base_impl
@@ -34,8 +34,6 @@
axis2_hash_t *ht_super;
- axis2_hash_t *methods;
-
xml_schema_obj_collection_t *items;
};
@@ -92,7 +90,6 @@
group_base_impl->particle = NULL;
group_base_impl->obj_type = XML_SCHEMA_GROUP_BASE;
group_base_impl->ht_super = NULL;
- group_base_impl->methods = NULL;
group_base_impl->items = NULL;
group_base_impl->group_base.ops = NULL;
group_base_impl->group_base.base.ops = NULL;
@@ -124,33 +121,6 @@
group_base_impl->group_base.ops->to_string =
xml_schema_group_base_to_string;
- group_base_impl->methods = axis2_hash_make(env);
- if(!group_base_impl->methods)
- {
- xml_schema_group_base_free(&(group_base_impl->group_base), env);
- AXIS2_ERROR_SET(env->error, AXIS2_ERROR_NO_MEMORY, AXIS2_FAILURE);
- return NULL;
- }
- axis2_hash_set(group_base_impl->methods, "free",
- AXIS2_HASH_KEY_STRING,
- xml_schema_group_base_free);
-
- axis2_hash_set(group_base_impl->methods, "get_type",
- AXIS2_HASH_KEY_STRING,
- xml_schema_group_base_get_type);
-
- axis2_hash_set(group_base_impl->methods, "super_objs",
- AXIS2_HASH_KEY_STRING,
- xml_schema_group_base_super_objs);
-
- axis2_hash_set(group_base_impl->methods, "get_items",
- AXIS2_HASH_KEY_STRING,
- xml_schema_group_base_get_items);
-
- axis2_hash_set(group_base_impl->methods, "to_string",
- AXIS2_HASH_KEY_STRING,
- xml_schema_group_base_to_string);
-
group_base_impl->particle = xml_schema_particle_create(env);
if(!group_base_impl->particle)
{
@@ -166,18 +136,18 @@
AXIS2_ERROR_SET(env->error, AXIS2_ERROR_NO_MEMORY, AXIS2_FAILURE);
return NULL;
}
- axis2_hash_set(group_base_impl->ht_super, "XML_SCHEMA_GROUP_BASE",
+ axis2_hash_set(group_base_impl->ht_super, AXIS2_STRDUP("XML_SCHEMA_GROUP_BASE", env),
AXIS2_HASH_KEY_STRING, &(group_base_impl->group_base) );
- axis2_hash_set(group_base_impl->ht_super, "XML_SCHEMA_PARTICLE",
+ axis2_hash_set(group_base_impl->ht_super, AXIS2_STRDUP("XML_SCHEMA_PARTICLE", env),
AXIS2_HASH_KEY_STRING, group_base_impl->particle );
annotated = XML_SCHEMA_PARTICLE_GET_BASE_IMPL(group_base_impl->particle, env);
if(NULL != annotated)
{
- axis2_hash_set(group_base_impl->ht_super, "XML_SCHEMA_ANNOTATED",
+ axis2_hash_set(group_base_impl->ht_super, AXIS2_STRDUP("XML_SCHEMA_ANNOTATED", env),
AXIS2_HASH_KEY_STRING, annotated);
- axis2_hash_set(group_base_impl->ht_super, "XML_SCHEMA_OBJ",
+ axis2_hash_set(group_base_impl->ht_super, AXIS2_STRDUP("XML_SCHEMA_OBJ", env),
AXIS2_HASH_KEY_STRING, XML_SCHEMA_ANNOTATED_GET_BASE_IMPL(annotated, env));
}
@@ -185,7 +155,9 @@
status = xml_schema_particle_resolve_methods(
&(group_base_impl->group_base.base), env, group_base_impl->particle,
- group_base_impl->methods);
+ xml_schema_group_base_super_objs,
+ xml_schema_group_base_get_type,
+ xml_schema_group_base_free);
return &(group_base_impl->group_base);
}
@@ -239,12 +211,6 @@
group_base_impl->ht_super = NULL;
}
- if(NULL != group_base_impl->methods)
- {
- axis2_hash_free(group_base_impl->methods, env);
- group_base_impl->methods = NULL;
- }
-
if(NULL != group_base_impl->particle)
{
XML_SCHEMA_PARTICLE_FREE(group_base_impl->particle, env);
Modified: webservices/axis2/trunk/c/xml_schema/src/xml_schema_group_ref.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/xml_schema/src/xml_schema_group_ref.c?rev=429593&r1=429592&r2=429593&view=diff
==============================================================================
--- webservices/axis2/trunk/c/xml_schema/src/xml_schema_group_ref.c (original)
+++ webservices/axis2/trunk/c/xml_schema/src/xml_schema_group_ref.c Mon Aug 7 22:57:49 2006
@@ -35,8 +35,6 @@
axis2_hash_t *ht_super;
- axis2_hash_t *methods;
-
axis2_qname_t *ref_qname;
void *particle;
@@ -107,7 +105,6 @@
group_ref_impl->base = NULL;
group_ref_impl->obj_type = XML_SCHEMA_GROUP_REF;
group_ref_impl->ht_super = NULL;
- group_ref_impl->methods = NULL;
group_ref_impl->ref_qname = NULL;
group_ref_impl->particle = NULL;
group_ref_impl->group_ref.ops = NULL;
@@ -144,26 +141,6 @@
group_ref_impl->group_ref.ops->set_particle =
xml_schema_group_ref_set_particle;
- group_ref_impl->methods = axis2_hash_make(env);
- if(!group_ref_impl->methods)
- {
- xml_schema_group_ref_free(&(group_ref_impl->group_ref), env);
- AXIS2_ERROR_SET(env->error, AXIS2_ERROR_NO_MEMORY, AXIS2_FAILURE);
- return NULL;
- }
- axis2_hash_set(group_ref_impl->methods, "free", AXIS2_HASH_KEY_STRING,
- xml_schema_group_ref_free);
- axis2_hash_set(group_ref_impl->methods, "super_objs", AXIS2_HASH_KEY_STRING,
- xml_schema_group_ref_super_objs);
- axis2_hash_set(group_ref_impl->methods, "get_type", AXIS2_HASH_KEY_STRING,
- xml_schema_group_ref_get_type);
- axis2_hash_set(group_ref_impl->methods, "get_ref_qname",
- AXIS2_HASH_KEY_STRING, xml_schema_group_ref_get_ref_qname);
- axis2_hash_set(group_ref_impl->methods, "set_ref_qname",
- AXIS2_HASH_KEY_STRING, xml_schema_group_ref_set_ref_qname);
- axis2_hash_set(group_ref_impl->methods, "get_particle",
- AXIS2_HASH_KEY_STRING, xml_schema_group_ref_get_particle);
-
group_ref_impl->base = xml_schema_particle_create(env);
if(!group_ref_impl->base)
{
@@ -178,23 +155,27 @@
return NULL;
}
- axis2_hash_set(group_ref_impl->ht_super, "XML_SCHEMA_GROUP_REF",
+ axis2_hash_set(group_ref_impl->ht_super,
+ AXIS2_STRDUP("XML_SCHEMA_GROUP_REF", env),
AXIS2_HASH_KEY_STRING, &(group_ref_impl->group_ref) );
- axis2_hash_set(group_ref_impl->ht_super, "XML_SCHEMA_PARTICLE",
+
+ axis2_hash_set(group_ref_impl->ht_super, AXIS2_STRDUP("XML_SCHEMA_PARTICLE", env),
AXIS2_HASH_KEY_STRING, group_ref_impl->particle );
annotated = XML_SCHEMA_PARTICLE_GET_BASE_IMPL(group_ref_impl->particle, env);
if(NULL != annotated)
{
- axis2_hash_set(group_ref_impl->ht_super, "XML_SCHEMA_ANNOTATED",
+ axis2_hash_set(group_ref_impl->ht_super, AXIS2_STRDUP ("XML_SCHEMA_ANNOTATED", env),
AXIS2_HASH_KEY_STRING, annotated);
- axis2_hash_set(group_ref_impl->ht_super, "XML_SCHEMA_OBJ",
+ axis2_hash_set(group_ref_impl->ht_super, AXIS2_STRDUP("XML_SCHEMA_OBJ", env),
AXIS2_HASH_KEY_STRING, XML_SCHEMA_ANNOTATED_GET_BASE_IMPL(annotated, env));
}
status = xml_schema_particle_resolve_methods(
&(group_ref_impl->group_ref.base), env, group_ref_impl->base,
- group_ref_impl->methods);
+ xml_schema_group_ref_super_objs,
+ xml_schema_group_ref_get_type,
+ xml_schema_group_ref_free);
return &(group_ref_impl->group_ref);
}
@@ -226,12 +207,6 @@
group_ref_impl->ht_super = NULL;
}
- if(NULL != group_ref_impl->methods)
- {
- axis2_hash_free(group_ref_impl->methods, env);
- group_ref_impl->methods = NULL;
- }
-
if(NULL != group_ref_impl->base)
{
XML_SCHEMA_PARTICLE_FREE(group_ref_impl->base, env);
Modified: webservices/axis2/trunk/c/xml_schema/src/xml_schema_identity_constraint.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/xml_schema/src/xml_schema_identity_constraint.c?rev=429593&r1=429592&r2=429593&view=diff
==============================================================================
--- webservices/axis2/trunk/c/xml_schema/src/xml_schema_identity_constraint.c (original)
+++ webservices/axis2/trunk/c/xml_schema/src/xml_schema_identity_constraint.c Mon Aug 7 22:57:49 2006
@@ -36,7 +36,6 @@
/** keyref field */
axis2_qname_t *refer;
- axis2_hash_t *methods;
axis2_hash_t *ht_super;
xml_schema_types_t obj_type;
};
@@ -107,7 +106,6 @@
}
id_cns_impl->annotated = NULL;
- id_cns_impl->methods = NULL;
id_cns_impl->fields = NULL;
id_cns_impl->name = NULL;
id_cns_impl->selector = NULL;
@@ -149,35 +147,14 @@
id_cns_impl->id_constr.ops->set_selector =
xml_schema_identity_constraint_set_selector;
- id_cns_impl->methods = axis2_hash_make(env);
id_cns_impl->ht_super = axis2_hash_make(env);
- if(!id_cns_impl->methods || !id_cns_impl->ht_super)
+ if(!id_cns_impl->ht_super)
{
xml_schema_identity_constraint_free(&(id_cns_impl->id_constr), env);
AXIS2_ERROR_SET(env->error, AXIS2_ERROR_NO_MEMORY, AXIS2_FAILURE);
return NULL;
}
- axis2_hash_set(id_cns_impl->methods, "free", AXIS2_HASH_KEY_STRING,
- xml_schema_identity_constraint_free);
- axis2_hash_set(id_cns_impl->methods, "get_fields",
- AXIS2_HASH_KEY_STRING, xml_schema_identity_constraint_get_fields);
- axis2_hash_set(id_cns_impl->methods, "get_type",
- AXIS2_HASH_KEY_STRING, xml_schema_identity_constraint_get_type);
- axis2_hash_set(id_cns_impl->methods, "super_objs",
- AXIS2_HASH_KEY_STRING, xml_schema_identity_constraint_super_objs);
- axis2_hash_set(id_cns_impl->methods, "get_refer",
- AXIS2_HASH_KEY_STRING, xml_schema_identity_constraint_get_refer);
- axis2_hash_set(id_cns_impl->methods, "set_refer",
- AXIS2_HASH_KEY_STRING, xml_schema_identity_constraint_set_refer);
- axis2_hash_set(id_cns_impl->methods, "get_name",
- AXIS2_HASH_KEY_STRING, xml_schema_identity_constraint_get_name);
- axis2_hash_set(id_cns_impl->methods, "set_name",
- AXIS2_HASH_KEY_STRING, xml_schema_identity_constraint_set_name);
- axis2_hash_set(id_cns_impl->methods, "get_selector",
- AXIS2_HASH_KEY_STRING, xml_schema_identity_constraint_get_selector);
- axis2_hash_set(id_cns_impl->methods, "set_selector",
- AXIS2_HASH_KEY_STRING, xml_schema_identity_constraint_set_selector);
id_cns_impl->annotated = xml_schema_annotated_create(env);
if(!id_cns_impl->annotated)
@@ -186,17 +163,19 @@
return NULL;
}
- axis2_hash_set(id_cns_impl->ht_super, "XML_SCHEMA_IDENTITY_CONSTRAINT",
+ axis2_hash_set(id_cns_impl->ht_super, AXIS2_STRDUP("XML_SCHEMA_IDENTITY_CONSTRAINT", env),
AXIS2_HASH_KEY_STRING, &(id_cns_impl->id_constr));
- axis2_hash_set(id_cns_impl->ht_super, "XML_SCHEMA_ANNOTATED",
+ axis2_hash_set(id_cns_impl->ht_super, AXIS2_STRDUP("XML_SCHEMA_ANNOTATED", env),
AXIS2_HASH_KEY_STRING, id_cns_impl->annotated);
- axis2_hash_set(id_cns_impl->ht_super, "XML_SCHEMA_OBJ",
+ axis2_hash_set(id_cns_impl->ht_super, AXIS2_STRDUP("XML_SCHEMA_OBJ", env),
AXIS2_HASH_KEY_STRING,
XML_SCHEMA_ANNOTATED_GET_BASE_IMPL(id_cns_impl->annotated, env));
status = xml_schema_annotated_resolve_methods(
&(id_cns_impl->id_constr.base),
env, id_cns_impl->annotated,
- id_cns_impl->methods);
+ xml_schema_identity_constraint_super_objs,
+ xml_schema_identity_constraint_get_type,
+ xml_schema_identity_constraint_free);
return &(id_cns_impl->id_constr);
}
@@ -258,11 +237,6 @@
id_cns_impl->selector = NULL;
}
- if(NULL != id_cns_impl->methods)
- {
- axis2_hash_free(id_cns_impl->methods, env);
- id_cns_impl->methods = NULL;
- }
if(NULL != id_cns_impl->ht_super)
{
axis2_hash_free(id_cns_impl->ht_super, env);
Modified: webservices/axis2/trunk/c/xml_schema/src/xml_schema_import.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/xml_schema/src/xml_schema_import.c?rev=429593&r1=429592&r2=429593&view=diff
==============================================================================
--- webservices/axis2/trunk/c/xml_schema/src/xml_schema_import.c (original)
+++ webservices/axis2/trunk/c/xml_schema/src/xml_schema_import.c Mon Aug 7 22:57:49 2006
@@ -32,8 +32,6 @@
xml_schema_types_t obj_type;
- axis2_hash_t *methods;
-
}xml_schema_import_impl_t;
#define AXIS2_INTF_TO_IMPL(import) \
@@ -83,7 +81,6 @@
}
import_impl->ns = NULL;
import_impl->external = NULL;
- import_impl->methods = NULL;
import_impl->import.ops = NULL;
import_impl->import.base.ops = NULL;
import_impl->ht_super = NULL;
@@ -112,25 +109,14 @@
import_impl->import.ops->set_namespace =
xml_schema_import_set_namespace;
- import_impl->methods = axis2_hash_make(env);
import_impl->ht_super = axis2_hash_make(env);
- if(!import_impl->methods || !import_impl->ht_super)
+ if(!import_impl->ht_super)
{
xml_schema_import_free(&(import_impl->import), env);
AXIS2_ERROR_SET(env->error, AXIS2_ERROR_NO_MEMORY, AXIS2_FAILURE);
return NULL;
}
- axis2_hash_set(import_impl->methods, "free", AXIS2_HASH_KEY_STRING,
- xml_schema_import_free);
- axis2_hash_set(import_impl->methods, "get_type",
- AXIS2_HASH_KEY_STRING, xml_schema_import_get_type);
- axis2_hash_set(import_impl->methods, "super_objs",
- AXIS2_HASH_KEY_STRING, xml_schema_import_super_objs);
- axis2_hash_set(import_impl->methods, "get_namespace",
- AXIS2_HASH_KEY_STRING, xml_schema_import_get_namespace);
- axis2_hash_set(import_impl->methods, "set_namespace",
- AXIS2_HASH_KEY_STRING, xml_schema_import_set_namespace);
import_impl->external = xml_schema_external_create(env);
if(!import_impl->external)
@@ -139,25 +125,27 @@
return NULL;
}
- axis2_hash_set(import_impl->ht_super, "XML_SCHEMA_IMPORT",
+ axis2_hash_set(import_impl->ht_super, AXIS2_STRDUP("XML_SCHEMA_IMPORT", env),
AXIS2_HASH_KEY_STRING, &(import_impl->import));
- axis2_hash_set(import_impl->ht_super, "XML_SCHEMA_EXTERNAL",
+ axis2_hash_set(import_impl->ht_super, AXIS2_STRDUP("XML_SCHEMA_EXTERNAL", env),
AXIS2_HASH_KEY_STRING, import_impl->external);
annotated = XML_SCHEMA_EXTERNAL_GET_BASE_IMPL(import_impl->external, env);
if(NULL != annotated)
{
- axis2_hash_set(import_impl->ht_super, "XML_SCHEMA_ANNOTATED",
+ axis2_hash_set(import_impl->ht_super, AXIS2_STRDUP("XML_SCHEMA_ANNOTATED", env),
AXIS2_HASH_KEY_STRING, annotated);
- axis2_hash_set(import_impl->ht_super, "XML_SCHEMA_OBJ",
+ axis2_hash_set(import_impl->ht_super, AXIS2_STRDUP("XML_SCHEMA_OBJ", env),
AXIS2_HASH_KEY_STRING,
XML_SCHEMA_ANNOTATED_GET_BASE_IMPL(annotated, env));
}
status = xml_schema_external_resolve_methods(
&(import_impl->import.base), env, import_impl->external,
- import_impl->methods);
+ xml_schema_import_super_objs,
+ xml_schema_import_get_type,
+ xml_schema_import_free);
return &(import_impl->import);
}
@@ -170,11 +158,6 @@
AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
import_impl = AXIS2_INTF_TO_IMPL(import);
- if(NULL != import_impl->methods)
- {
- axis2_hash_free(import_impl->methods, env);
- import_impl->methods = NULL;
- }
if(NULL != import_impl->ht_super)
{
axis2_hash_free(import_impl->ht_super, env);
Modified: webservices/axis2/trunk/c/xml_schema/src/xml_schema_obj.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/xml_schema/src/xml_schema_obj.c?rev=429593&r1=429592&r2=429593&view=diff
==============================================================================
--- webservices/axis2/trunk/c/xml_schema/src/xml_schema_obj.c (original)
+++ webservices/axis2/trunk/c/xml_schema/src/xml_schema_obj.c Mon Aug 7 22:57:49 2006
@@ -225,13 +225,14 @@
xml_schema_obj_t *obj,
const axis2_env_t *env,
xml_schema_obj_t *obj_impl,
- axis2_hash_t *methods)
+ XML_SCHEMA_SUPER_OBJS_FN super_objs,
+ XML_SCHEMA_GET_TYPE_FN get_type,
+ XML_SCHEMA_FREE_FN free_fn)
{
xml_schema_obj_impl_t *obj_impl_l = NULL;
AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
AXIS2_PARAM_CHECK(env->error, obj_impl, AXIS2_FAILURE);
- AXIS2_PARAM_CHECK(env->error, methods, AXIS2_FAILURE);
obj_impl_l = (xml_schema_obj_impl_t *) obj_impl;
@@ -243,14 +244,11 @@
return AXIS2_FAILURE;
}
- obj->ops->free = axis2_hash_get(methods, "free",
- AXIS2_HASH_KEY_STRING);
+ obj->ops->free = free_fn;
- obj->ops->super_objs = axis2_hash_get(methods, "super_objs",
- AXIS2_HASH_KEY_STRING);
+ obj->ops->super_objs = super_objs;
- obj->ops->get_type = axis2_hash_get(methods, "get_type",
- AXIS2_HASH_KEY_STRING);
+ obj->ops->get_type = get_type;
obj->ops->get_line_num =
obj_impl_l->obj.ops->get_line_num;
Modified: webservices/axis2/trunk/c/xml_schema/src/xml_schema_obj_table.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/xml_schema/src/xml_schema_obj_table.c?rev=429593&r1=429592&r2=429593&view=diff
==============================================================================
--- webservices/axis2/trunk/c/xml_schema/src/xml_schema_obj_table.c (original)
+++ webservices/axis2/trunk/c/xml_schema/src/xml_schema_obj_table.c Mon Aug 7 22:57:49 2006
@@ -21,8 +21,7 @@
xml_schema_obj_table_impl_t;
/**
- * @brief Xml Schema Obj Struct Impl
- * Axis2 Xml Schema Obj
+ * @brief xml_schema_obj_table_impl
*/
struct xml_schema_obj_table_impl
{
@@ -140,6 +139,8 @@
xml_schema_obj_table_contains;
obj_table_impl->obj_table.ops->add =
xml_schema_obj_table_add;
+ obj_table_impl->obj_table.ops->get_hash_table =
+ xml_schema_obj_table_get_hash_table;
return &(obj_table_impl->obj_table);
}
Modified: webservices/axis2/trunk/c/xml_schema/src/xml_schema_particle.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/xml_schema/src/xml_schema_particle.c?rev=429593&r1=429592&r2=429593&view=diff
==============================================================================
--- webservices/axis2/trunk/c/xml_schema/src/xml_schema_particle.c (original)
+++ webservices/axis2/trunk/c/xml_schema/src/xml_schema_particle.c Mon Aug 7 22:57:49 2006
@@ -34,8 +34,6 @@
axis2_hash_t *ht_super;
- axis2_hash_t *methods;
-
long max_occurs;
axis2_char_t *max_occurs_string;
@@ -110,7 +108,6 @@
particle_impl->ht_super = NULL;
particle_impl->particle.ops = NULL;
particle_impl->particle.base.ops = NULL;
- particle_impl->methods = NULL;
particle_impl->max_occurs_string = NULL;
particle_impl->min_occurs_string = NULL;
@@ -149,28 +146,6 @@
particle_impl->particle.ops->set_min_occurs =
xml_schema_particle_set_min_occurs;
- particle_impl->methods = axis2_hash_make(env);
- if(!particle_impl->methods)
- {
- xml_schema_particle_free(&(particle_impl->particle), env);
- AXIS2_ERROR_SET(env->error, AXIS2_ERROR_NO_MEMORY, AXIS2_FAILURE);
- return NULL;
- }
- axis2_hash_set(particle_impl->methods, "free", AXIS2_HASH_KEY_STRING,
- xml_schema_particle_free);
- axis2_hash_set(particle_impl->methods, "super_objs", AXIS2_HASH_KEY_STRING,
- xml_schema_particle_super_objs);
- axis2_hash_set(particle_impl->methods, "get_type", AXIS2_HASH_KEY_STRING,
- xml_schema_particle_get_type);
- axis2_hash_set(particle_impl->methods, "get_max_occurs",
- AXIS2_HASH_KEY_STRING, xml_schema_particle_get_max_occurs);
- axis2_hash_set(particle_impl->methods, "set_max_occurs",
- AXIS2_HASH_KEY_STRING, xml_schema_particle_set_max_occurs);
- axis2_hash_set(particle_impl->methods, "get_min_occurs",
- AXIS2_HASH_KEY_STRING, xml_schema_particle_get_min_occurs);
- axis2_hash_set(particle_impl->methods, "set_min_occurs",
- AXIS2_HASH_KEY_STRING, xml_schema_particle_set_min_occurs);
-
particle_impl->annotated = xml_schema_annotated_create(env);
if(!particle_impl->annotated)
{
@@ -185,17 +160,19 @@
AXIS2_ERROR_SET(env->error, AXIS2_ERROR_NO_MEMORY, AXIS2_FAILURE);
return NULL;
}
- axis2_hash_set(particle_impl->ht_super, "XML_SCHEMA_PARTICLE", AXIS2_HASH_KEY_STRING,
+ axis2_hash_set(particle_impl->ht_super, AXIS2_STRDUP("XML_SCHEMA_PARTICLE", env), AXIS2_HASH_KEY_STRING,
&(particle_impl->particle));
- axis2_hash_set(particle_impl->ht_super, "XML_SCHEMA_ANNOTATED", AXIS2_HASH_KEY_STRING,
+ axis2_hash_set(particle_impl->ht_super, AXIS2_STRDUP("XML_SCHEMA_ANNOTATED", env), AXIS2_HASH_KEY_STRING,
particle_impl->annotated);
- axis2_hash_set(particle_impl->ht_super, "XML_SCHEMA_OBJ", AXIS2_HASH_KEY_STRING,
+ axis2_hash_set(particle_impl->ht_super, AXIS2_STRDUP("XML_SCHEMA_OBJ", env), AXIS2_HASH_KEY_STRING,
XML_SCHEMA_ANNOTATED_GET_BASE_IMPL(particle_impl->annotated, env));
status = xml_schema_annotated_resolve_methods(
&(particle_impl->particle.base), env, particle_impl->annotated,
- particle_impl->methods);
+ xml_schema_particle_super_objs,
+ xml_schema_particle_get_type,
+ xml_schema_particle_free);
return &(particle_impl->particle);
}
@@ -215,11 +192,7 @@
particle_impl->ht_super = NULL;
}
- if(NULL != particle_impl->methods)
- {
- axis2_hash_free(particle_impl->methods, env);
- particle_impl->methods = NULL;
- }
+
if(NULL != particle_impl->annotated)
{
@@ -281,13 +254,14 @@
xml_schema_particle_t *particle,
const axis2_env_t *env,
xml_schema_particle_t *particle_impl,
- axis2_hash_t *methods)
+ XML_SCHEMA_SUPER_OBJS_FN super_objs,
+ XML_SCHEMA_GET_TYPE_FN get_type,
+ XML_SCHEMA_FREE_FN free_fn)
{
xml_schema_particle_impl_t *sch_particle_impl = NULL;
AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
AXIS2_PARAM_CHECK(env->error, particle_impl, AXIS2_FAILURE);
- AXIS2_PARAM_CHECK(env->error, methods, AXIS2_FAILURE);
sch_particle_impl = (xml_schema_particle_impl_t *) particle_impl;
@@ -299,39 +273,25 @@
return AXIS2_FAILURE;
}
- particle->ops->free = axis2_hash_get(methods, "free",
- AXIS2_HASH_KEY_STRING);
- particle->ops->super_objs = axis2_hash_get(methods, "super_objs",
- AXIS2_HASH_KEY_STRING);
- particle->ops->get_type = axis2_hash_get(methods, "get_type",
- AXIS2_HASH_KEY_STRING);
-
- particle->ops->get_max_occurs = axis2_hash_get(methods, "get_max_occurs",
- AXIS2_HASH_KEY_STRING);
- if(!particle->ops->get_max_occurs)
- particle->ops->get_max_occurs =
- sch_particle_impl->particle.ops->get_max_occurs;
-
- particle->ops->set_max_occurs = axis2_hash_get(methods, "set_max_occurs",
- AXIS2_HASH_KEY_STRING);
- if(!particle->ops->set_max_occurs)
- particle->ops->set_max_occurs =
- sch_particle_impl->particle.ops->set_max_occurs;
-
- particle->ops->get_min_occurs = axis2_hash_get(methods, "get_min_occurs",
- AXIS2_HASH_KEY_STRING);
- if(!particle->ops->get_min_occurs)
- particle->ops->get_min_occurs =
- sch_particle_impl->particle.ops->get_min_occurs;
-
- particle->ops->set_min_occurs = axis2_hash_get(methods, "set_min_occurs",
- AXIS2_HASH_KEY_STRING);
- if(!particle->ops->set_min_occurs)
- particle->ops->set_min_occurs =
- sch_particle_impl->particle.ops->set_min_occurs;
+ particle->ops->free = free_fn;
+ particle->ops->super_objs = super_objs;
+
+ particle->ops->get_type = get_type;
+
+ particle->ops->get_max_occurs =
+ sch_particle_impl->particle.ops->get_max_occurs;
+
+ particle->ops->set_max_occurs =
+ sch_particle_impl->particle.ops->set_max_occurs;
+
+ particle->ops->get_min_occurs =
+ sch_particle_impl->particle.ops->get_min_occurs;
+
+ particle->ops->set_min_occurs =
+ sch_particle_impl->particle.ops->set_min_occurs;
return xml_schema_annotated_resolve_methods(&(particle->base),
- env, sch_particle_impl->annotated, methods);
+ env, sch_particle_impl->annotated, super_objs, get_type, free_fn);
}
long AXIS2_CALL
Modified: webservices/axis2/trunk/c/xml_schema/src/xml_schema_redefine.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/xml_schema/src/xml_schema_redefine.c?rev=429593&r1=429592&r2=429593&view=diff
==============================================================================
--- webservices/axis2/trunk/c/xml_schema/src/xml_schema_redefine.c (original)
+++ webservices/axis2/trunk/c/xml_schema/src/xml_schema_redefine.c Mon Aug 7 22:57:49 2006
@@ -34,8 +34,6 @@
xml_schema_obj_table_t *schema_types;
- axis2_hash_t *methods;
-
axis2_hash_t *ht_super;
xml_schema_types_t obj_type;
@@ -104,7 +102,6 @@
return NULL;
}
redefine_impl->external = NULL;
- redefine_impl->methods = NULL;
redefine_impl->redefine.ops = NULL;
redefine_impl->redefine.base.ops = NULL;
redefine_impl->attr_groups = NULL;
@@ -143,26 +140,14 @@
redefine_impl->redefine.ops->get_schema_types =
xml_schema_redefine_get_schema_types;
- redefine_impl->methods = axis2_hash_make(env);
redefine_impl->ht_super = axis2_hash_make(env);
- if(!redefine_impl->methods || !redefine_impl->ht_super)
+ if(!redefine_impl->ht_super)
{
xml_schema_redefine_free(&(redefine_impl->redefine), env);
AXIS2_ERROR_SET(env->error, AXIS2_ERROR_NO_MEMORY, AXIS2_FAILURE);
return NULL;
}
- axis2_hash_set(redefine_impl->methods, "free", AXIS2_HASH_KEY_STRING,
- xml_schema_redefine_free);
- axis2_hash_set(redefine_impl->methods, "get_type", AXIS2_HASH_KEY_STRING,
- xml_schema_redefine_get_type);
- axis2_hash_set(redefine_impl->methods, "super_objs", AXIS2_HASH_KEY_STRING,
- xml_schema_redefine_super_objs);
- axis2_hash_set(redefine_impl->methods, "get_items",
- AXIS2_HASH_KEY_STRING, xml_schema_redefine_get_items);
- axis2_hash_set(redefine_impl->methods, "get_group",
- AXIS2_HASH_KEY_STRING, xml_schema_redefine_get_group);
-
redefine_impl->external = xml_schema_external_create(env);
if(!redefine_impl->external)
{
@@ -171,9 +156,9 @@
}
- axis2_hash_set(redefine_impl->ht_super, "XML_SCHEMA_REDEFINE",
+ axis2_hash_set(redefine_impl->ht_super, AXIS2_STRDUP("XML_SCHEMA_REDEFINE", env),
AXIS2_HASH_KEY_STRING, &(redefine_impl->redefine));
- axis2_hash_set(redefine_impl->ht_super, "XML_SCHEMA_EXTERNAL",
+ axis2_hash_set(redefine_impl->ht_super, AXIS2_STRDUP("XML_SCHEMA_EXTERNAL", env),
AXIS2_HASH_KEY_STRING, redefine_impl->external);
annotated = XML_SCHEMA_EXTERNAL_GET_BASE_IMPL(redefine_impl->external, env);
@@ -189,7 +174,9 @@
status = xml_schema_external_resolve_methods(
&(redefine_impl->redefine.base), env, redefine_impl->external,
- redefine_impl->methods);
+ xml_schema_redefine_super_objs,
+ xml_schema_redefine_get_type,
+ xml_schema_redefine_free);
return &(redefine_impl->redefine);
}
@@ -203,11 +190,7 @@
AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
redefine_impl = AXIS2_INTF_TO_IMPL(redefine);
- if(NULL != redefine_impl->methods)
- {
- axis2_hash_free(redefine_impl->methods, env);
- redefine_impl->methods = NULL;
- }
+
if(NULL != redefine_impl->ht_super)
{
axis2_hash_free(redefine_impl->ht_super, env);
Modified: webservices/axis2/trunk/c/xml_schema/src/xml_schema_simple_content.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/xml_schema/src/xml_schema_simple_content.c?rev=429593&r1=429592&r2=429593&view=diff
==============================================================================
--- webservices/axis2/trunk/c/xml_schema/src/xml_schema_simple_content.c (original)
+++ webservices/axis2/trunk/c/xml_schema/src/xml_schema_simple_content.c Mon Aug 7 22:57:49 2006
@@ -29,8 +29,7 @@
xml_schema_simple_content_t sim_content;
xml_schema_annotated_t *annotated;
-
- axis2_hash_t *methods;
+
void *content;
@@ -89,7 +88,6 @@
}
sim_cnt_impl->annotated = NULL;
- sim_cnt_impl->methods = NULL;
sim_cnt_impl->content = NULL;
sim_cnt_impl->sim_content.base.ops = NULL;
sim_cnt_impl->sim_content.ops = NULL;
@@ -121,27 +119,6 @@
sim_cnt_impl->sim_content.ops->to_string =
xml_schema_simple_content_to_string;
- sim_cnt_impl->methods = axis2_hash_make(env);
-
- if(!sim_cnt_impl->methods)
- {
- xml_schema_simple_content_free(&(sim_cnt_impl->sim_content), env);
- AXIS2_ERROR_SET(env->error, AXIS2_ERROR_NO_MEMORY, AXIS2_FAILURE);
- return NULL;
- }
- axis2_hash_set(sim_cnt_impl->methods, "free", AXIS2_HASH_KEY_STRING,
- xml_schema_simple_content_free);
- axis2_hash_set(sim_cnt_impl->methods, "get_type", AXIS2_HASH_KEY_STRING,
- xml_schema_simple_content_get_type);
- axis2_hash_set(sim_cnt_impl->methods, "super_objs", AXIS2_HASH_KEY_STRING,
- xml_schema_simple_content_super_objs);
- axis2_hash_set(sim_cnt_impl->methods, "get_content",
- AXIS2_HASH_KEY_STRING, xml_schema_simple_content_get_content);
- axis2_hash_set(sim_cnt_impl->methods, "set_content",
- AXIS2_HASH_KEY_STRING, xml_schema_simple_content_set_content);
- axis2_hash_set(sim_cnt_impl->methods, "to_string",
- AXIS2_HASH_KEY_STRING, xml_schema_simple_content_to_string);
-
sim_cnt_impl->ht_super = axis2_hash_make(env);
if(!sim_cnt_impl->ht_super)
{
@@ -154,19 +131,21 @@
xml_schema_simple_content_free(&(sim_cnt_impl->sim_content), env);
return NULL;
}
- axis2_hash_set(sim_cnt_impl->ht_super, "XML_SCHEMA_SIMPLE_CONTENT",
+ axis2_hash_set(sim_cnt_impl->ht_super, AXIS2_STRDUP("XML_SCHEMA_SIMPLE_CONTENT", env),
AXIS2_HASH_KEY_STRING, &(sim_cnt_impl->sim_content));
- axis2_hash_set(sim_cnt_impl->ht_super, "XML_SCHEMA_ANNOTATED",
+ axis2_hash_set(sim_cnt_impl->ht_super, AXIS2_STRDUP("XML_SCHEMA_ANNOTATED", env),
AXIS2_HASH_KEY_STRING, sim_cnt_impl->annotated);
- axis2_hash_set(sim_cnt_impl->ht_super, "XML_SCHEMA_OBJ",
+ axis2_hash_set(sim_cnt_impl->ht_super, AXIS2_STRDUP("XML_SCHEMA_OBJ", env),
AXIS2_HASH_KEY_STRING,
XML_SCHEMA_ANNOTATED_GET_BASE_IMPL(sim_cnt_impl->annotated, env));
status = xml_schema_annotated_resolve_methods(
&(sim_cnt_impl->sim_content.base), env, sim_cnt_impl->annotated,
- sim_cnt_impl->methods);
+ xml_schema_simple_content_super_objs,
+ xml_schema_simple_content_get_type,
+ xml_schema_simple_content_free);
return &(sim_cnt_impl->sim_content);
}
@@ -185,11 +164,7 @@
/** TODO */
}
- if(NULL != sim_cnt_impl->methods)
- {
- axis2_hash_free(sim_cnt_impl->methods, env);
- sim_cnt_impl->methods = NULL;
- }
+
if(NULL != sim_cnt_impl->annotated)
{
XML_SCHEMA_ANNOTATED_FREE(sim_cnt_impl->annotated, env);
Modified: webservices/axis2/trunk/c/xml_schema/src/xml_schema_simple_content_extension.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/xml_schema/src/xml_schema_simple_content_extension.c?rev=429593&r1=429592&r2=429593&view=diff
==============================================================================
--- webservices/axis2/trunk/c/xml_schema/src/xml_schema_simple_content_extension.c (original)
+++ webservices/axis2/trunk/c/xml_schema/src/xml_schema_simple_content_extension.c Mon Aug 7 22:57:49 2006
@@ -39,8 +39,6 @@
axis2_hash_t *ht_super;
- axis2_hash_t *methods;
-
};
#define AXIS2_INTF_TO_IMPL(sim_content_ext) \
@@ -152,34 +150,13 @@
xml_schema_simple_content_extension_set_base_type_name;
sim_content_ext_impl->ht_super = axis2_hash_make(env);
- sim_content_ext_impl->methods = axis2_hash_make(env);
- if(!sim_content_ext_impl->methods || !sim_content_ext_impl->ht_super)
+ if(!sim_content_ext_impl->ht_super)
{
xml_schema_simple_content_extension_free(
&(sim_content_ext_impl->sim_content_ext), env);
return NULL;
}
- axis2_hash_set(sim_content_ext_impl->methods, "free", AXIS2_HASH_KEY_STRING,
- xml_schema_simple_content_extension_free);
- axis2_hash_set(sim_content_ext_impl->methods, "get_type", AXIS2_HASH_KEY_STRING,
- xml_schema_simple_content_extension_get_type);
- axis2_hash_set(sim_content_ext_impl->methods, "super_objs", AXIS2_HASH_KEY_STRING,
- xml_schema_simple_content_extension_super_objs);
-
- axis2_hash_set(sim_content_ext_impl->methods, "get_any_attribute", AXIS2_HASH_KEY_STRING,
- xml_schema_simple_content_extension_get_any_attribute);
-
- axis2_hash_set(sim_content_ext_impl->methods, "set_any_attribute", AXIS2_HASH_KEY_STRING,
- xml_schema_simple_content_extension_set_any_attribute);
-
- axis2_hash_set(sim_content_ext_impl->methods, "get_attributes", AXIS2_HASH_KEY_STRING,
- xml_schema_simple_content_extension_get_attributes);
- axis2_hash_set(sim_content_ext_impl->methods, "get_base_type_name", AXIS2_HASH_KEY_STRING,
- xml_schema_simple_content_extension_get_base_type_name);
- axis2_hash_set(sim_content_ext_impl->methods, "set_base_type_name", AXIS2_HASH_KEY_STRING,
- xml_schema_simple_content_extension_set_base_type_name);
-
sim_content_ext_impl->annotated = xml_schema_annotated_create(env);
if(!sim_content_ext_impl->annotated)
{
@@ -194,16 +171,24 @@
env);
return NULL;
}
- axis2_hash_set(sim_content_ext_impl->ht_super, "XML_SCHEMA_SIMPLE_CONTENT_EXTENSION",
+ axis2_hash_set(sim_content_ext_impl->ht_super,
+ AXIS2_STRDUP("XML_SCHEMA_SIMPLE_CONTENT_EXTENSION", env),
AXIS2_HASH_KEY_STRING,&(sim_content_ext_impl->sim_content_ext));
- axis2_hash_set(sim_content_ext_impl->ht_super, "XML_SCHEMA_ANNOTATED",
+
+ axis2_hash_set(sim_content_ext_impl->ht_super,
+ AXIS2_STRDUP("XML_SCHEMA_ANNOTATED", env),
AXIS2_HASH_KEY_STRING,(sim_content_ext_impl->annotated));
- axis2_hash_set(sim_content_ext_impl->ht_super, "XML_SCHEMA_OBJ",
+
+ axis2_hash_set(sim_content_ext_impl->ht_super,
+ AXIS2_STRDUP("XML_SCHEMA_OBJ", env),
AXIS2_HASH_KEY_STRING,
XML_SCHEMA_ANNOTATED_GET_BASE_IMPL(sim_content_ext_impl->annotated, env));
xml_schema_annotated_resolve_methods(&(sim_content_ext_impl->sim_content_ext.base),
- env, sim_content_ext_impl->annotated, sim_content_ext_impl->methods);
+ env, sim_content_ext_impl->annotated,
+ xml_schema_simple_content_extension_super_objs,
+ xml_schema_simple_content_extension_get_type,
+ xml_schema_simple_content_extension_free);
return &(sim_content_ext_impl->sim_content_ext);
}
Modified: webservices/axis2/trunk/c/xml_schema/src/xml_schema_simple_content_restriction.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/xml_schema/src/xml_schema_simple_content_restriction.c?rev=429593&r1=429592&r2=429593&view=diff
==============================================================================
--- webservices/axis2/trunk/c/xml_schema/src/xml_schema_simple_content_restriction.c (original)
+++ webservices/axis2/trunk/c/xml_schema/src/xml_schema_simple_content_restriction.c Mon Aug 7 22:57:49 2006
@@ -41,8 +41,7 @@
xml_schema_simple_type_t *base_type;
xml_schema_types_t obj_type;
-
- axis2_hash_t *methods;
+
axis2_hash_t *ht_super;
};
@@ -155,7 +154,6 @@
sim_content_res_impl->base_type = NULL;
sim_content_res_impl->ht_super = NULL;
sim_content_res_impl->obj_type = XML_SCHEMA_SIMPLE_CONTENT_RESTRICTION;
- sim_content_res_impl->methods = NULL;
sim_content_res_impl->sim_content_res.base.ops = NULL;
sim_content_res_impl->sim_content_res.ops = AXIS2_MALLOC(env->allocator,
@@ -206,50 +204,6 @@
sim_content_res_impl->sim_content_res.ops->get_facets =
xml_schema_simple_content_restriction_get_facets;
- sim_content_res_impl->methods = axis2_hash_make(env);
- if(!sim_content_res_impl->methods)
- {
- xml_schema_simple_content_restriction_free(
- &(sim_content_res_impl->sim_content_res), env);
- return NULL;
- }
-
- axis2_hash_set(sim_content_res_impl->methods, "free", AXIS2_HASH_KEY_STRING,
- xml_schema_simple_content_restriction_free);;
-
- axis2_hash_set(sim_content_res_impl->methods, "get_type",
- AXIS2_HASH_KEY_STRING, xml_schema_simple_content_restriction_get_type);
-
- axis2_hash_set(sim_content_res_impl->methods, "super_objs",
- AXIS2_HASH_KEY_STRING,
- xml_schema_simple_content_restriction_super_objs);
-
- axis2_hash_set(sim_content_res_impl->methods, "get_any_attribute", AXIS2_HASH_KEY_STRING,
- xml_schema_simple_content_restriction_get_any_attribute);
-
- axis2_hash_set(sim_content_res_impl->methods, "set_any_attribute",
- AXIS2_HASH_KEY_STRING,
- xml_schema_simple_content_restriction_set_any_attribute);
-
- axis2_hash_set(sim_content_res_impl->methods, "get_attribute",
- AXIS2_HASH_KEY_STRING,
- xml_schema_simple_content_restriction_get_attributes);
-
- axis2_hash_set(sim_content_res_impl->methods, "get_base_type_name", AXIS2_HASH_KEY_STRING,
- xml_schema_simple_content_restriction_get_base_type_name);
-
- axis2_hash_set(sim_content_res_impl->methods, "set_base_type_name", AXIS2_HASH_KEY_STRING,
- xml_schema_simple_content_restriction_set_base_type_name);
-
- axis2_hash_set(sim_content_res_impl->methods, "set_base_type", AXIS2_HASH_KEY_STRING,
- xml_schema_simple_content_restriction_set_base_type);
-
- axis2_hash_set(sim_content_res_impl->methods, "get_base_type", AXIS2_HASH_KEY_STRING,
- xml_schema_simple_content_restriction_get_base_type);
-
- axis2_hash_set(sim_content_res_impl->methods, "get_facets", AXIS2_HASH_KEY_STRING,
- xml_schema_simple_content_restriction_get_facets);
-
sim_content_res_impl->annotated = xml_schema_annotated_create(env);
if(!sim_content_res_impl->annotated)
{
@@ -280,7 +234,10 @@
XML_SCHEMA_ANNOTATED_GET_BASE_IMPL(sim_content_res_impl->annotated, env));
xml_schema_annotated_resolve_methods(&(sim_content_res_impl->sim_content_res.base),
- env, sim_content_res_impl->annotated, sim_content_res_impl->methods);
+ env, sim_content_res_impl->annotated,
+ xml_schema_simple_content_restriction_super_objs,
+ xml_schema_simple_content_restriction_get_type,
+ xml_schema_simple_content_restriction_free);
return &(sim_content_res_impl->sim_content_res);
}
Modified: webservices/axis2/trunk/c/xml_schema/src/xml_schema_simple_type.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/xml_schema/src/xml_schema_simple_type.c?rev=429593&r1=429592&r2=429593&view=diff
==============================================================================
--- webservices/axis2/trunk/c/xml_schema/src/xml_schema_simple_type.c (original)
+++ webservices/axis2/trunk/c/xml_schema/src/xml_schema_simple_type.c Mon Aug 7 22:57:49 2006
@@ -34,8 +34,6 @@
/** parent type */
xml_schema_type_t *schema_type;
- axis2_hash_t *methods;
-
axis2_hash_t *ht_super;
xml_schema_types_t obj_type;
@@ -98,7 +96,6 @@
return NULL;
}
- simple_type->methods = NULL;
simple_type->content = NULL;
simple_type->schema_type = NULL;
simple_type->simple_type.ops = NULL;
@@ -142,43 +139,39 @@
simple_type->simple_type.ops->super_objs =
xml_schema_simple_type_super_objs;
- simple_type->methods = axis2_hash_make(env);
simple_type->ht_super = axis2_hash_make(env);
- if(!simple_type->methods || !simple_type->ht_super)
+ if(!simple_type->ht_super)
{
xml_schema_simple_type_free(&(simple_type->simple_type), env);
AXIS2_ERROR_SET(env->error, AXIS2_ERROR_NO_MEMORY, AXIS2_FAILURE);
return NULL;
}
- axis2_hash_set(simple_type->methods, "free", AXIS2_HASH_KEY_STRING,
- xml_schema_simple_type_free);
- axis2_hash_set(simple_type->methods, "get_content",
- AXIS2_HASH_KEY_STRING, xml_schema_simple_type_get_content);
- axis2_hash_set(simple_type->methods, "set_content",
- AXIS2_HASH_KEY_STRING, xml_schema_simple_type_set_content);
- axis2_hash_set(simple_type->methods, "get_type",
- AXIS2_HASH_KEY_STRING, xml_schema_simple_type_get_type);
- axis2_hash_set(simple_type->methods, "super_objs",
- AXIS2_HASH_KEY_STRING, xml_schema_simple_type_super_objs);
-
- axis2_hash_set(simple_type->ht_super, "XML_SCHEMA_SIMPLE_TYPE",
+ axis2_hash_set(simple_type->ht_super,
+ AXIS2_STRDUP("XML_SCHEMA_SIMPLE_TYPE", env),
AXIS2_HASH_KEY_STRING, &(simple_type->simple_type));
- axis2_hash_set(simple_type->ht_super, "XML_SCHEMA_TYPE",
+
+ axis2_hash_set(simple_type->ht_super,
+ AXIS2_STRDUP("XML_SCHEMA_TYPE", env),
AXIS2_HASH_KEY_STRING, simple_type->schema_type);
annotated = XML_SCHEMA_TYPE_GET_BASE_IMPL(simple_type->schema_type, env);
if(NULL != annotated)
{
- axis2_hash_set(simple_type->ht_super, "XML_SCHEMA_ANNOTATED",
+ axis2_hash_set(simple_type->ht_super,
+ AXIS2_STRDUP("XML_SCHEMA_ANNOTATED", env),
AXIS2_HASH_KEY_STRING, annotated);
- axis2_hash_set(simple_type->ht_super, "XML_SCHEMA_OBJ",
+ axis2_hash_set(simple_type->ht_super,
+ AXIS2_STRDUP("XML_SCHEMA_OBJ", env),
AXIS2_HASH_KEY_STRING,
XML_SCHEMA_ANNOTATED_GET_BASE_IMPL(annotated, env));
}
status = xml_schema_type_resolve_methods(&(simple_type->simple_type.base),
- env, simple_type->schema_type, simple_type->methods);
+ env, simple_type->schema_type,
+ xml_schema_simple_type_super_objs,
+ xml_schema_simple_type_get_type,
+ xml_schema_simple_type_free);
return &(simple_type->simple_type);
}
@@ -192,11 +185,6 @@
AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
simple_type_impl = AXIS2_INTF_TO_IMPL(simple_type);
- if(NULL != simple_type_impl->methods)
- {
- axis2_hash_free(simple_type_impl->methods, env);
- simple_type_impl->methods = NULL;
- }
if(NULL != simple_type_impl->ht_super)
{
axis2_hash_free(simple_type_impl->ht_super, env);
@@ -268,7 +256,10 @@
type_impl_l->simple_type.ops->set_content;
return xml_schema_type_resolve_methods(&(simple_type->base),
- env, type_impl_l->schema_type , methods);
+ env, type_impl_l->schema_type ,
+ xml_schema_simple_type_super_objs,
+ xml_schema_simple_type_get_type,
+ xml_schema_simple_type_free);
}
xml_schema_simple_type_content_t* AXIS2_CALL
Modified: webservices/axis2/trunk/c/xml_schema/src/xml_schema_simple_type_content.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/xml_schema/src/xml_schema_simple_type_content.c?rev=429593&r1=429592&r2=429593&view=diff
==============================================================================
--- webservices/axis2/trunk/c/xml_schema/src/xml_schema_simple_type_content.c (original)
+++ webservices/axis2/trunk/c/xml_schema/src/xml_schema_simple_type_content.c Mon Aug 7 22:57:49 2006
@@ -30,8 +30,6 @@
xml_schema_annotated_t *annotated;
- axis2_hash_t *methods;
-
axis2_hash_t *ht_super;
xml_schema_types_t obj_type;
@@ -78,7 +76,6 @@
sim_type_cont_impl->annotated = NULL;
sim_type_cont_impl->sim_type_cont.ops = NULL;
sim_type_cont_impl->sim_type_cont.base.ops = NULL;
- sim_type_cont_impl->methods = NULL;
sim_type_cont_impl->ht_super = NULL;
sim_type_cont_impl->obj_type = XML_SCHEMA_SIMPLE_TYPE_CONTENT;
@@ -101,21 +98,14 @@
sim_type_cont_impl->sim_type_cont.ops->super_objs =
xml_schema_simple_type_content_super_objs;
- sim_type_cont_impl->methods = axis2_hash_make(env);
sim_type_cont_impl->ht_super = axis2_hash_make(env);
- if(!sim_type_cont_impl->methods || !sim_type_cont_impl->ht_super)
+ if(!sim_type_cont_impl->ht_super)
{
xml_schema_simple_type_content_free(&(sim_type_cont_impl->sim_type_cont), env);
AXIS2_ERROR_SET(env->error, AXIS2_ERROR_NO_MEMORY, AXIS2_FAILURE);
return NULL;
}
- axis2_hash_set(sim_type_cont_impl->methods, "free", AXIS2_HASH_KEY_STRING,
- xml_schema_simple_type_content_free);
- axis2_hash_set(sim_type_cont_impl->methods, "get_type",
- AXIS2_HASH_KEY_STRING, xml_schema_simple_type_content_get_type);
- axis2_hash_set(sim_type_cont_impl->methods, "super_objs",
- AXIS2_HASH_KEY_STRING, xml_schema_simple_type_content_super_objs);
-
+
sim_type_cont_impl->annotated = xml_schema_annotated_create(env);
if(!sim_type_cont_impl->annotated)
{
@@ -123,19 +113,25 @@
return NULL;
}
- axis2_hash_set(sim_type_cont_impl->ht_super, "XML_SCHEMA_SIMPLE_TYPE_CONTENT",
+ axis2_hash_set(sim_type_cont_impl->ht_super,
+ AXIS2_STRDUP("XML_SCHEMA_SIMPLE_TYPE_CONTENT", env),
AXIS2_HASH_KEY_STRING, &(sim_type_cont_impl->sim_type_cont));
- axis2_hash_set(sim_type_cont_impl->ht_super, "XML_SCHEMA_ANNOTATED",
+ axis2_hash_set(sim_type_cont_impl->ht_super,
+ AXIS2_STRDUP("XML_SCHEMA_ANNOTATED", env),
AXIS2_HASH_KEY_STRING, sim_type_cont_impl->annotated);
- axis2_hash_set(sim_type_cont_impl->ht_super, "XML_SCHEMA_OBJ",
+ axis2_hash_set(sim_type_cont_impl->ht_super,
+ AXIS2_STRDUP("XML_SCHEMA_OBJ", env),
AXIS2_HASH_KEY_STRING,
XML_SCHEMA_ANNOTATED_GET_BASE_IMPL(sim_type_cont_impl->annotated, env));
status = xml_schema_annotated_resolve_methods(
- &(sim_type_cont_impl->sim_type_cont.base), env, sim_type_cont_impl->annotated,
- sim_type_cont_impl->methods);
+ &(sim_type_cont_impl->sim_type_cont.base), env,
+ sim_type_cont_impl->annotated,
+ xml_schema_simple_type_content_super_objs,
+ xml_schema_simple_type_content_get_type,
+ xml_schema_simple_type_content_free);
return &(sim_type_cont_impl->sim_type_cont);
}
@@ -149,11 +145,7 @@
AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
sim_type_cont_impl = AXIS2_INTF_TO_IMPL(sim_type_cont);
- if(NULL != sim_type_cont_impl->methods)
- {
- axis2_hash_free(sim_type_cont_impl->methods, env);
- sim_type_cont_impl->methods = NULL;
- }
+
if(NULL != sim_type_cont_impl->ht_super)
{
axis2_hash_free(sim_type_cont_impl->ht_super, env);
@@ -200,13 +192,14 @@
xml_schema_simple_type_content_t *sim_type_cont,
const axis2_env_t *env,
xml_schema_simple_type_content_t *sim_type_cont_impl,
- axis2_hash_t *methods)
+ XML_SCHEMA_SUPER_OBJS_FN super_objs,
+ XML_SCHEMA_GET_TYPE_FN get_type,
+ XML_SCHEMA_FREE_FN free_fn)
{
xml_schema_simple_type_content_impl_t *sim_type_cont_impl_l = NULL;
AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
AXIS2_PARAM_CHECK(env->error, sim_type_cont_impl, AXIS2_FAILURE);
- AXIS2_PARAM_CHECK(env->error, methods, AXIS2_FAILURE);
sim_type_cont_impl_l =
(xml_schema_simple_type_content_impl_t *) sim_type_cont_impl;
@@ -219,15 +212,12 @@
return AXIS2_FAILURE;
}
- sim_type_cont->ops->free = axis2_hash_get(methods, "free",
- AXIS2_HASH_KEY_STRING);
- sim_type_cont->ops->get_type = axis2_hash_get(methods, "get_type",
- AXIS2_HASH_KEY_STRING);
- sim_type_cont->ops->super_objs = axis2_hash_get(methods, "super_objs",
- AXIS2_HASH_KEY_STRING);
+ sim_type_cont->ops->free = free_fn;
+ sim_type_cont->ops->get_type = get_type;
+ sim_type_cont->ops->super_objs = super_objs;
return xml_schema_annotated_resolve_methods(&(sim_type_cont->base),
- env, sim_type_cont_impl_l->annotated, methods);
+ env, sim_type_cont_impl_l->annotated, super_objs, get_type, free_fn);
}
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org