00001 00002 /* 00003 * Licensed to the Apache Software Foundation (ASF) under one or more 00004 * contributor license agreements. See the NOTICE file distributed with 00005 * this work for additional information regarding copyright ownership. 00006 * The ASF licenses this file to You under the Apache License, Version 2.0 00007 * (the "License"); you may not use this file except in compliance with 00008 * the License. You may obtain a copy of the License at 00009 * 00010 * http://www.apache.org/licenses/LICENSE-2.0 00011 * 00012 * Unless required by applicable law or agreed to in writing, software 00013 * distributed under the License is distributed on an "AS IS" BASIS, 00014 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 00015 * See the License for the specific language governing permissions and 00016 * limitations under the License. 00017 */ 00018 00019 #ifndef AXIS2_HTTP_SVR_THREAD_H 00020 #define AXIS2_HTTP_SVR_THREAD_H 00021 00033 #include <axis2_const.h> 00034 #include <axis2_defines.h> 00035 #include <axutil_env.h> 00036 #include <axis2_http_worker.h> 00037 00038 #ifdef __cplusplus 00039 extern "C" 00040 { 00041 #endif 00042 00044 typedef struct axis2_http_svr_thread axis2_http_svr_thread_t; 00045 00050 AXIS2_EXTERN axis2_status_t AXIS2_CALL 00051 axis2_http_svr_thread_run( 00052 axis2_http_svr_thread_t * svr_thread, 00053 const axutil_env_t * env); 00054 00059 AXIS2_EXTERN axis2_status_t AXIS2_CALL 00060 axis2_http_svr_thread_destroy( 00061 axis2_http_svr_thread_t * svr_thread, 00062 const axutil_env_t * env); 00063 00068 AXIS2_EXTERN int AXIS2_CALL 00069 axis2_http_svr_thread_get_local_port( 00070 const axis2_http_svr_thread_t * svr_thread, 00071 const axutil_env_t * env); 00072 00077 AXIS2_EXTERN axis2_bool_t AXIS2_CALL 00078 axis2_http_svr_thread_is_running( 00079 axis2_http_svr_thread_t * svr_thread, 00080 const axutil_env_t * env); 00081 00087 AXIS2_EXTERN axis2_status_t AXIS2_CALL 00088 axis2_http_svr_thread_set_worker( 00089 axis2_http_svr_thread_t * svr_thread, 00090 const axutil_env_t * env, 00091 axis2_http_worker_t * worker); 00092 00097 AXIS2_EXTERN void AXIS2_CALL 00098 axis2_http_svr_thread_free( 00099 axis2_http_svr_thread_t * svr_thread, 00100 const axutil_env_t * env); 00101 00106 AXIS2_EXTERN axis2_http_svr_thread_t *AXIS2_CALL 00107 00108 axis2_http_svr_thread_create( 00109 const axutil_env_t * env, 00110 int port); 00111 00113 #ifdef __cplusplus 00114 } 00115 #endif 00116 00117 #endif /* AXIS2_HTTP_SVR_THREAD_H */