You are viewing a plain text version of this content. The canonical link for it is here.
Posted to savan-dev@ws.apache.org by da...@apache.org on 2009/03/04 03:59:40 UTC
svn commit: r749887 -
/webservices/savan/trunk/c/samples/client/subscriber/subscriber.c
Author: damitha
Date: Wed Mar 4 02:59:40 2009
New Revision: 749887
URL: http://svn.apache.org/viewvc?rev=749887&view=rev
Log:
Sending messages like subscribe, renew according to user input
Modified:
webservices/savan/trunk/c/samples/client/subscriber/subscriber.c
Modified: webservices/savan/trunk/c/samples/client/subscriber/subscriber.c
URL: http://svn.apache.org/viewvc/webservices/savan/trunk/c/samples/client/subscriber/subscriber.c?rev=749887&r1=749886&r2=749887&view=diff
==============================================================================
--- webservices/savan/trunk/c/samples/client/subscriber/subscriber.c (original)
+++ webservices/savan/trunk/c/samples/client/subscriber/subscriber.c Wed Mar 4 02:59:40 2009
@@ -42,6 +42,7 @@
axis2_status_t status = AXIS2_FAILURE;
savan_client_t *savan_client = NULL;
axis2_char_t *subs_status = NULL;
+ int action = 0;
/* Set up the environment */
env = axutil_env_create_all("subscriber.log", AXIS2_LOG_LEVEL_TRACE);
@@ -60,7 +61,7 @@
}
printf ("Event source endpoint : %s\n", address);
-
+
/* Create EPR with given address */
endpoint_ref = axis2_endpoint_ref_create(env, address);
@@ -109,63 +110,74 @@
/* Create a savan client */
savan_client = savan_client_create(env);
- /* Send request */
- status = savan_client_subscribe(savan_client, env, svc_client, savan_options);
-
- if (status == AXIS2_SUCCESS)
- {
- printf("Subscribe successful\n");
- printf("Subscription ID: %s\n", savan_client_get_sub_id(savan_client));
- }
- else
- {
- printf("Subscription Failed\n");
- exit(0);
+ printf("Select the action:\n"\
+ "1 subscribe\n"\
+ "2 renew\n"\
+ "3 get status\n"\
+ "4 unsubscribe\n"\
+ "5 start weather event source\n"\
+ "6 stop weather event source\n");
+
+ scanf("%d", &action);
+
+ if(1 == action) /* Send subscribe message */
+ {
+ status = savan_client_subscribe(savan_client, env, svc_client, savan_options);
+
+ if (status == AXIS2_SUCCESS)
+ {
+ printf("Subscribe successful\n");
+ printf("Subscription ID: %s\n", savan_client_get_sub_id(savan_client));
+ }
+ else
+ {
+ printf("Subscription Failed\n");
+ exit(0);
+ }
+ }
+ else if(2 == action)
+ {
+ printf("Renewing subscription...\n");
+ address = savan_client_get_sub_url(savan_client);
+ printf("address:%s\n", address);
+ endpoint_ref = axis2_options_get_to(options, env);
+ axis2_endpoint_ref_set_address(endpoint_ref, env, address);
+ /*axutil_hash_set(savan_options, SAVAN_OP_KEY_EXPIRES, AXIS2_HASH_KEY_STRING, "2010-02-12T06:54Z");*/
+ axutil_hash_set(savan_options, SAVAN_OP_KEY_EXPIRES, AXIS2_HASH_KEY_STRING, "2009-04-26T21:07:00.000-08:00");
+ /*axutil_hash_set(savan_options, SAVAN_OP_KEY_EXPIRES, AXIS2_HASH_KEY_STRING, "P3Y6M4DT12H30M5S");*/
+ status = savan_client_renew(savan_client, env, svc_client, savan_options);
+ if (status == AXIS2_SUCCESS)
+ {
+ printf("Renew successful\n");
+ }
+ }
+ else if(3 == action)
+ {
+ printf("Getting status of subscription...\n");
+ address = savan_client_get_sub_url(savan_client);
+ endpoint_ref = axis2_options_get_to(options, env);
+ axis2_endpoint_ref_set_address(endpoint_ref, env, address);
+ axis2_svc_client_remove_all_headers(svc_client, env);
+ subs_status = savan_client_get_status(savan_client, env, svc_client);
+ if (subs_status)
+ {
+ printf("GetStatus successful\n");
+ }
+ }
+ else if(4 == action)
+ {
+ printf("Unsubscribing...\n");
+ address = savan_client_get_sub_url(savan_client);
+ endpoint_ref = axis2_options_get_to(options, env);
+ axis2_endpoint_ref_set_address(endpoint_ref, env, address);
+ axis2_svc_client_remove_all_headers(svc_client, env);
+ status = savan_client_unsubscribe(savan_client, env, svc_client);
+ if (status == AXIS2_SUCCESS)
+ {
+ printf("Unsubscribe successful\n");
+ }
}
- /*AXIS2_SLEEP(16);*/
- AXIS2_SLEEP(1);
-
-
- printf("Renewing subscription...\n");
- address = savan_client_get_sub_url(savan_client);
- printf("address:%s\n", address);
- endpoint_ref = axis2_options_get_to(options, env);
- axis2_endpoint_ref_set_address(endpoint_ref, env, address);
- /*axutil_hash_set(savan_options, SAVAN_OP_KEY_EXPIRES, AXIS2_HASH_KEY_STRING, "2010-02-12T06:54Z");*/
- axutil_hash_set(savan_options, SAVAN_OP_KEY_EXPIRES, AXIS2_HASH_KEY_STRING, "2009-04-26T21:07:00.000-08:00");
- /*axutil_hash_set(savan_options, SAVAN_OP_KEY_EXPIRES, AXIS2_HASH_KEY_STRING, "P3Y6M4DT12H30M5S");*/
- status = savan_client_renew(savan_client, env, svc_client, savan_options);
- if (status == AXIS2_SUCCESS)
- {
- printf("Renew successful\n");
- }
-
- AXIS2_SLEEP(1);
-
- printf("Getting status of subscription...\n");
- address = savan_client_get_sub_url(savan_client);
- endpoint_ref = axis2_options_get_to(options, env);
- axis2_endpoint_ref_set_address(endpoint_ref, env, address);
- axis2_svc_client_remove_all_headers(svc_client, env);
- subs_status = savan_client_get_status(savan_client, env, svc_client);
- if (subs_status)
- {
- printf("GetStatus successful\n");
- }
-
- printf("Unsubscribing...\n");
- address = savan_client_get_sub_url(savan_client);
- endpoint_ref = axis2_options_get_to(options, env);
- axis2_endpoint_ref_set_address(endpoint_ref, env, address);
- axis2_svc_client_remove_all_headers(svc_client, env);
- /*status = savan_client_unsubscribe(savan_client, env, svc_client);
- if (status == AXIS2_SUCCESS)
- {
- printf("Unsubscribe successful\n");
- }*/
-
-
if (svc_client)
{
axis2_svc_client_free(svc_client, env);
@@ -198,7 +210,7 @@
options = axis2_options_create(env);
axis2_options_set_to(options, env, endpoint_ref);
axis2_options_set_action(options, env,
- "http://ws.apache.org/axis2/c/savan/samples/pubilsher/start");
+ "http://ws.apache.org/axis2/c/savan/samples/weather/start");
/* Create service client */
svc_client = axis2_svc_client_create(env, home);