[Initng-svn] r4010 - initng/trunk/plugins/nge

svn at initng.thinktux.net svn at initng.thinktux.net
Thu May 4 12:28:23 CEST 2006


Author: jimmy
Date: Thu May  4 12:28:22 2006
New Revision: 4010

Modified:
   initng/trunk/plugins/nge/initng_nge.c
   initng/trunk/plugins/nge/initng_nge.h
   initng/trunk/plugins/nge/libngeclient.c
   initng/trunk/plugins/nge/libngeclient.h
   initng/trunk/plugins/nge/nge.c
   initng/trunk/plugins/nge/nge_raw.c

Log:
Add percentage status to nge when system is starting - stopping.


Modified: initng/trunk/plugins/nge/initng_nge.c
==============================================================================
--- initng/trunk/plugins/nge/initng_nge.c	(original)
+++ initng/trunk/plugins/nge/initng_nge.c	Thu May  4 12:28:22 2006
@@ -423,11 +423,22 @@
 					 strlen(service->current_state->state_name),
 					 sizeof(char));
 
+	if(g.sys_state == STATE_STARTING)
 	len = sprintf(buffert,
-				  "<event type=\"service_state_change\" service=\"%s\" is=\"%i\" state=\"%s\" />\n",
+				  "<event type=\"service_state_change\" service=\"%s\" is=\"%i\" state=\"%s\" percent_started=\"%i\"/>\n",
+				  service->name, service->current_state->is,
+				  service->current_state->state_name, initng_active_db_percent_started());
+	else if(g.sys_state == STATE_STOPPING)
+	len = sprintf(buffert,
+				  "<event type=\"service_state_change\" service=\"%s\" is=\"%i\" state=\"%s\" percent_stopped=\"%i\"/>\n",
+				  service->name, service->current_state->is,
+				  service->current_state->state_name, initng_active_db_percent_stopped());
+	else
+	len = sprintf(buffert,
+				  "<event type=\"service_state_change\" service=\"%s\" is=\"%i\" state=\"%s\"/>\n",
 				  service->name, service->current_state->is,
 				  service->current_state->state_name);
-
+	
 	/*printf("astatus_change: %s %i %s\n",
 	   service->name, service->current_state->is,
 	   service->current_state->state_name); */

Modified: initng/trunk/plugins/nge/initng_nge.h
==============================================================================
--- initng/trunk/plugins/nge/initng_nge.h	(original)
+++ initng/trunk/plugins/nge/initng_nge.h	Thu May  4 12:28:22 2006
@@ -23,4 +23,4 @@
 #define NGE_REAL NGE_PREFIX "nge"
 #define NGE_TEST NGE_PREFIX "nge-test"
 
-#define NGE_VERSION 2
+#define NGE_VERSION 3

Modified: initng/trunk/plugins/nge/libngeclient.c
==============================================================================
--- initng/trunk/plugins/nge/libngeclient.c	(original)
+++ initng/trunk/plugins/nge/libngeclient.c	Thu May  4 12:28:22 2006
@@ -391,6 +391,8 @@
 																	  "is");
 	event->payload.service_state_change.state_name = ngeclient_get_option(tag,
 																		  "state");
+	event->payload.service_state_change.percent_started = ngeclient_get_int(tag, "percent_started");
+	event->payload.service_state_change.percent_stopped = ngeclient_get_int(tag, "percent_stopped");
 }
 
 /* called on a <event type="system_state_change"  */

Modified: initng/trunk/plugins/nge/libngeclient.h
==============================================================================
--- initng/trunk/plugins/nge/libngeclient.h	(original)
+++ initng/trunk/plugins/nge/libngeclient.h	Thu May  4 12:28:22 2006
@@ -80,6 +80,8 @@
 			char *service;
 			e_is is;
 			char *state_name;
+			int percent_started;
+			int percent_stopped;
 		} service_state_change;
 
 		/* system_state_change  and initial_system_state */

Modified: initng/trunk/plugins/nge/nge.c
==============================================================================
--- initng/trunk/plugins/nge/nge.c	(original)
+++ initng/trunk/plugins/nge/nge.c	Thu May  4 12:28:22 2006
@@ -57,7 +57,7 @@
 	fprintf(stdout, "Dissonnected from initng.\n");
 }
 
-static void service_change(char *service, e_is is, char *state)
+static void service_change(char *service, e_is is, char *state, int pstart, int pstop)
 {
 	switch (is)
 	{
@@ -68,8 +68,8 @@
 		case IS_STOPPING:
 		case IS_WAITING:
 		default:
-			fprintf(stdout, "Service \"%s\" have state \"%s\" (%i)\n",
-					service, state, is);
+			fprintf(stdout, "Service \"%s\" have state \"%s\" (%i)  %i:%i\n",
+					service, state, is, pstart, pstop);
 			break;
 	}
 }
@@ -129,7 +129,9 @@
 		case INITIAL_SERVICE_STATE_CHANGE:
 			service_change(e->payload.service_state_change.service,
 						   e->payload.service_state_change.is,
-						   e->payload.service_state_change.state_name);
+						   e->payload.service_state_change.state_name,
+						   e->payload.service_state_change.percent_started,
+						   e->payload.service_state_change.percent_stopped);
 			return;
 		case SYSTEM_STATE_CHANGE:
 		case INITIAL_SYSTEM_STATE_CHANGE:
@@ -169,7 +171,7 @@
 
 
 	/* open correct socket */
-	if (strcmp(argv[0], "ngde") == 0)
+	if (strstr(argv[0], "ngde"))
 		c = ngeclient_connect(NGE_TEST);
 	else
 		c = ngeclient_connect(NGE_REAL);

Modified: initng/trunk/plugins/nge/nge_raw.c
==============================================================================
--- initng/trunk/plugins/nge/nge_raw.c	(original)
+++ initng/trunk/plugins/nge/nge_raw.c	Thu May  4 12:28:22 2006
@@ -54,7 +54,7 @@
 	int got;
 
 	/* open correct socket */
-	if (strcmp(argv[0], "ngde_raw") == 0)
+	if (strstr(argv[0], "ngde"))
 		c = ngeclient_connect(NGE_TEST);
 	else
 		c = ngeclient_connect(NGE_REAL);


More information about the Initng-svn mailing list