summaryrefslogtreecommitdiffstats
path: root/tags/cpp-0.1.incubating-M1-RC3b/sca/runtime/ws_service/axis2c/src/Axis2EntryPointService_skeleton.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tags/cpp-0.1.incubating-M1-RC3b/sca/runtime/ws_service/axis2c/src/Axis2EntryPointService_skeleton.cpp')
-rw-r--r--tags/cpp-0.1.incubating-M1-RC3b/sca/runtime/ws_service/axis2c/src/Axis2EntryPointService_skeleton.cpp253
1 files changed, 0 insertions, 253 deletions
diff --git a/tags/cpp-0.1.incubating-M1-RC3b/sca/runtime/ws_service/axis2c/src/Axis2EntryPointService_skeleton.cpp b/tags/cpp-0.1.incubating-M1-RC3b/sca/runtime/ws_service/axis2c/src/Axis2EntryPointService_skeleton.cpp
deleted file mode 100644
index c2a06e05c0..0000000000
--- a/tags/cpp-0.1.incubating-M1-RC3b/sca/runtime/ws_service/axis2c/src/Axis2EntryPointService_skeleton.cpp
+++ /dev/null
@@ -1,253 +0,0 @@
-/*
- * Copyright 2006 The Apache Software Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-#if defined(WIN32) || defined (_WINDOWS)
-#pragma warning(disable: 4786)
-#pragma warning(disable: 4091)
-#endif
-
-#include <axis2_svc_skeleton.h>
-#include <axis2_array_list.h>
-#include <axis2_log_default.h>
-#include <axis2_error_default.h>
-#include <axiom.h>
-#include <stdio.h>
-
-#include <sdo_axiom.h>
-using namespace commonj::sdo;
-using namespace commonj::sdo_axiom;
-
-#include "tuscany/sca/util/Utils.h"
-using namespace tuscany::sca;
-
-#include "tuscany/sca/ws/EntryPointProxy.h"
-#include "Axis2Utils.h"
-using namespace tuscany::sca::ws;
-
-
-int AXIS2_CALL
-Axis2EntryPointService_free(axis2_svc_skeleton_t *svc_skeleton,
- const axis2_env_t *env);
-
-/*
- * This method invokes the right service method
- */
-axiom_node_t* AXIS2_CALL
-Axis2EntryPointService_invoke(axis2_svc_skeleton_t *svc_skeleton,
- const axis2_env_t *env,
- axiom_node_t *node,
- axis2_msg_ctx_t *msg_ctx);
-
-int AXIS2_CALL Axis2EntryPointService_init(axis2_svc_skeleton_t *svc_skeleton,
- const axis2_env_t *env);
-
-EntryPointProxy* entryPointProxy = NULL;
-
-axis2_svc_skeleton_t *
-axis2_Axis2EntryPointService_create(axis2_env_t *env)
-{
- axis2_svc_skeleton_t *svc_skeleton = NULL;
- svc_skeleton = (axis2_svc_skeleton_t *) AXIS2_MALLOC((env)->allocator,
- sizeof(axis2_svc_skeleton_t));
-
-
- svc_skeleton->ops = (axis2_svc_skeleton_ops_t *) AXIS2_MALLOC(
- (env)->allocator, sizeof(axis2_svc_skeleton_ops_t));
-
- svc_skeleton->func_array = NULL;
-
- svc_skeleton->ops->free = Axis2EntryPointService_free;
- svc_skeleton->ops->init = Axis2EntryPointService_init;
- svc_skeleton->ops->invoke = Axis2EntryPointService_invoke;
- /*svc_skeleton->ops->on_fault = Axis2Service_on_fault;*/
-
- if(entryPointProxy == NULL)
- {
- entryPointProxy = EntryPointProxy::getInstance();
- }
-
- return svc_skeleton;
-}
-
-int AXIS2_CALL
-Axis2EntryPointService_init(axis2_svc_skeleton_t *svc_skeleton,
- const axis2_env_t *env)
-{
- // This method never seems to be called - an old Axis2C artifact?
-
- svc_skeleton->func_array = axis2_array_list_create(env, 0);
- return AXIS2_SUCCESS;
-}
-
-int AXIS2_CALL
-Axis2EntryPointService_free(axis2_svc_skeleton_t *svc_skeleton,
- const axis2_env_t *env)
-{
- /*if(svc_skeleton->func_array)
- {
- AXIS2_ARRAY_LIST_FREE(svc_skeleton->func_array, env);
- svc_skeleton->func_array = NULL;
- }*/
-
- if(svc_skeleton->ops)
- {
- AXIS2_FREE((env)->allocator, svc_skeleton->ops);
- svc_skeleton->ops = NULL;
- }
-
- if(svc_skeleton)
- {
- AXIS2_FREE((env)->allocator, svc_skeleton);
- svc_skeleton = NULL;
- }
- return AXIS2_SUCCESS;
-}
-
-/*
- * This method invokes the right service method
- */
-axiom_node_t* AXIS2_CALL
-Axis2EntryPointService_invoke(axis2_svc_skeleton_t *svc_skeleton,
- const axis2_env_t *env,
- axiom_node_t *node,
- axis2_msg_ctx_t *msg_ctx)
-{
- axiom_node_t *returnNode = node;
-
- /* Depending on the function name invoke the
- * corresponding Axis2Service method
- */
- if (node)
- {
- if (AXIOM_NODE_GET_NODE_TYPE(node, env) == AXIOM_ELEMENT)
- {
- axiom_element_t *element = NULL;
- element = (axiom_element_t *)AXIOM_NODE_GET_DATA_ELEMENT(node, env);
- if (element)
- {
- // This gets the operation name from the root element name - this is correct for DocLit Wrapped style
- axis2_char_t *op_name = AXIOM_ELEMENT_GET_LOCALNAME(element, env);
- if (op_name)
- {
- char* systemRoot = Axis2Utils::getAxisServiceParameterValue(env, msg_ctx, "TuscanySystemRoot");
- char* fullEntryPointName = Axis2Utils::getAxisServiceParameterValue(env, msg_ctx, "TuscanyEntryPoint");
-
- AXIS2_LOG_INFO((env)->log, "Axis2EntryPointService invoke called with system root: %s entrypoint name: %s operation name: %s", systemRoot, fullEntryPointName, op_name);
-
- //LOGINFO_2(4, "Axis2EntryPointService invoke called with system root: %s and entrypoint name: %s", systemRoot, fullEntryPointName);
- //LOGINFO_1(4, "Axis2EntryPointService invoke called with operation", op_name);
- entryPointProxy->init(systemRoot, fullEntryPointName);
-
- //Utils::printTypes(entryPointProxy->getDataFactory());
-
- AxiomHelper* axiomHelper = AxiomHelper::getHelper();
- if (entryPointProxy->getDataFactory() == 0)
- {
- AXIS2_LOG_ERROR((env)->log, AXIS2_LOG_SI, "Axis2EntryPointService_invoke: EntryPoint has no SCA implementation");
- return 0;
- }
-
- char* om_str = NULL;
- om_str = AXIOM_NODE_TO_STRING(node, env);
- if (om_str)
- {
- AXIS2_LOG_INFO((env)->log, "Axis2EntryPointService invoke has request OM: %s\n", om_str);
- }
-
- DataObjectPtr inputDataObject = axiomHelper->toSdo(node, entryPointProxy->getDataFactory());
-
- //printf("Axis2EntryPoint inputDataObject: (%d)\n", inputDataObject);
-
- if(!inputDataObject)
- {
- AXIS2_LOG_ERROR((env)->log, AXIS2_LOG_SI, "Axis2EntryPointService_invoke: Could not convert received Axiom node to SDO");
- //LOGERROR(0, "Axis2EntryPointService_invoke: Failure whilst invoking EntryPoint");
- /** TODO: return a SOAP fault here */
- return 0;
- }
- //Utils::printDO(inputDataObject);
-
- DataObjectPtr outputDataObject = entryPointProxy->invoke(op_name, inputDataObject);
-
- //printf("Axis2EntryPoint outputDataObject: %d\n", outputDataObject);
- //Utils::printDO(outputDataObject);
- //printf("Axis2EntryPoint outputDataObject printed\n");
- if(!outputDataObject)
- {
- AXIS2_LOG_ERROR((env)->log, AXIS2_LOG_SI, "Axis2EntryPointService_invoke: Failure whilst invoking EntryPoint");
- //LOGERROR(0, "Axis2EntryPointService_invoke: Failure whilst invoking EntryPoint");
- /** TODO: return a SOAP fault here */
- return 0;
- }
-
- returnNode = axiomHelper->toAxiomNode(outputDataObject);
-
- om_str = NULL;
- om_str = AXIOM_NODE_TO_STRING(returnNode, env);
- if (om_str)
- {
- AXIS2_LOG_INFO((env)->log, "Axis2EntryPointService invoke has response OM : %s\n", om_str);
- }
-
- AxiomHelper::releaseHelper(axiomHelper);
-
- //LOGEXIT(1, "Axis2EntryPointService_invoke");
- return returnNode;
- }
- }
- }
- }
-
- AXIS2_LOG_ERROR((env)->log, AXIS2_LOG_SI, "Axis2EntryPointService_invoke: invalid OM parameters in request");
- //LOGERROR(0, "Axis2Service service ERROR: invalid OM parameters in request\n");
-
- /** TODO: return a SOAP fault here */
- return node;
-}
-
-
-extern "C"
-{
-/**
- * Following block distinguish the exposed part of the dll.
- */
-
-AXIS2_EXPORT int axis2_get_instance(axis2_svc_skeleton **inst,
- axis2_env_t *env)
-{
- *inst = axis2_Axis2EntryPointService_create(env);
- /*if(NULL != *inst)
- {
- status = *inst->init();
- }*/
- if(!(*inst))
- {
- return AXIS2_FAILURE;
- }
-
- return AXIS2_SUCCESS;
-}
-
-AXIS2_EXPORT int axis2_remove_instance(axis2_svc_skeleton_t *inst,
- axis2_env_t *env)
-{
- axis2_status_t status = AXIS2_FAILURE;
- if (inst)
- {
- status = AXIS2_SVC_SKELETON_FREE(inst, env);
- }
- return status;
-}
-}