From 99ee72457dcc6924ff371cc6503d7451d02d5723 Mon Sep 17 00:00:00 2001 From: nbysani2 Date: Fri, 13 Mar 2009 03:10:00 +0000 Subject: [PATCH] filled out a test module git-svn-id: https://subversion.cs.uiuc.edu/svn/bang/eoh2009@168 69d76c3e-0761-0410-948c-9895a8bb34fc --- src/modules/test-module.c | 55 ++++++++++++++++++++++++++++++++++++++- 1 file changed, 54 insertions(+), 1 deletion(-) diff --git a/src/modules/test-module.c b/src/modules/test-module.c index 3676b09..3989a50 100644 --- a/src/modules/test-module.c +++ b/src/modules/test-module.c @@ -15,6 +15,54 @@ char BANG_module_name[5] = "test"; unsigned char BANG_module_version[] = {0,0,1}; BANG_api *api; +static BANG_job* new_test_job(int auth, int peer) { + BANG_job *new = malloc(sizeof(BANG_job)); + + new->data = malloc(5); + strcpy(new->data,"test"); + new->length = 5; + new->job_number = 123; + new->peer = peer; + new->authority = auth; + + return new; +} + +void test_job_available(BANG_module_info *info, int peer) { + api->BANG_request_job(info, peer); +} +void test_job_done(BANG_module_info *info, BANG_job *job) { + fprintf(stderr,"job %s\n", (char*) job->data); + fprintf(stderr,"job number %d\n", job->job_number); + + int reassert = job->peer; + api->BANG_assert_authority(info, reassert); +} + +void test_outgoing_jobs(BANG_module_info *info, int peer) { + fprintf(stderr,"sending out a job.\n"); + + BANG_job *job = new_test_job(api->BANG_get_my_id(info), peer); + api->BANG_send_job(info, job); +} + +void test_incoming_job(BANG_module_info *info, BANG_job *job) { + fprintf(stderr,"job %s\n", (char*) job->data); + fprintf(stderr,"job number %d\n", job->job_number); + + api->BANG_finished_request(info, job); +} + +void test_peer_added(BANG_module_info *info, int peer) { + fprintf(stderr,"peer added %d\n,",peer); + api->BANG_assert_authority(info, peer); +} + +void test_peer_removed(BANG_module_info* info, int peer) { + info = NULL; + fprintf(stderr,"peer removed %d\n,",peer); +} + BANG_callbacks* BANG_module_init(BANG_api *get_api) { api = get_api; fprintf(stderr,"TEST:\t Module with name %s is initializing with version %d.%d.%d.\n", @@ -24,7 +72,12 @@ BANG_callbacks* BANG_module_init(BANG_api *get_api) { BANG_module_version[2]); BANG_callbacks *callbacks = malloc(sizeof(BANG_callbacks)); - memset(callbacks,0,sizeof(BANG_callbacks)); + callbacks->jobs_available = &test_job_available; + callbacks->job_done = &test_job_done; + callbacks->outgoing_jobs = &test_outgoing_jobs; + callbacks->incoming_job = &test_incoming_job; + callbacks->peer_added = &test_peer_added; + callbacks->peer_removed = &test_peer_removed; return callbacks; }