Fixing build issues in windows
diff --git a/build/win32/makefile b/build/win32/makefile
index 6941c32..eb4030a 100644
--- a/build/win32/makefile
+++ b/build/win32/makefile
@@ -22,7 +22,9 @@
 		 $(SAVANSRC)\src\handlers\*.c \

 		 $(SAVANSRC)\src\util\*.c \

 		 $(SAVANSRC)\src\subscribers\*.c \

-		 $(SAVANSRC)\src\msgreceivers\*.c 

+		 $(SAVANSRC)\src\msgreceivers\*.c \

+		 $(SAVANSRC)\src\storage\common\*.c \

+		 $(SAVANSRC)\src\storage\inmemory\*.c 

 		

 #compiler options

 CC = @cl.exe

@@ -119,7 +121,7 @@
 $(SAVANDISTDIR)\lib\$(SAVAN_CLIENT).dll :

 	if not exist $(SAVANINTDIR)\client mkdir $(SAVANINTDIR)\client

 	$(CC) $(CFLAGS) $(SAVAN_CLIENT_SRC) /Fo$(SAVANINTDIR)\client\ /c

-	$(LD) $(LDFLAGS) $(LIBS) $(SAVANINTDIR)\client\*.obj /DLL \

+	$(LD) $(LDFLAGS) $(LIBS) $(SAVANDLL).lib $(SAVANINTDIR)\client\*.obj /DLL \

 	/OUT:$(SAVANDISTDIR)\lib\$(SAVAN_CLIENT).dll /IMPLIB:$(SAVANDISTDIR)\lib\$(SAVAN_CLIENT).lib

 	-@$(_VC_MANIFEST_EMBED_DLL)

 

@@ -130,7 +132,7 @@
 

 $(SAVANDISTDIR)\services\subscription\subscription.dll :

 	$(CC) $(CFLAGS) $(SAVANSRC)\src\subs_mgr\*.c /Fo$(SAVANINTDIR)\samples\subscription\ /c

-	$(LD) $(LDFLAGS) $(LIBS) $(SAVANINTDIR)\samples\subscription\*.obj  $(SAVAN_CLIENT).lib /DLL \

+	$(LD) $(LDFLAGS) $(LIBS) $(SAVANDLL).lib $(SAVANINTDIR)\samples\subscription\*.obj  $(SAVAN_CLIENT).lib /DLL \

 	/OUT:$(SAVANDISTDIR)\services\subscription\subscription.dll

 	-@$(_VC_MANIFEST_EMBED_DLL)

 	@copy $(SAVANSRC)\src\subs_mgr\services.xml $(SAVANDISTDIR)\services\subscription\

@@ -163,7 +165,7 @@
 

 subscriber: $(SAVANDISTDIR)\bin\samples\savan\subscriber.exe

 	

-dist: clean distdir intdir savan savan_client publisher listener subscription subscriber copy_include copy_samples copy_extra

+dist: clean distdir intdir savan savan_client listener subscription subscriber copy_include copy_samples copy_extra

 

 

 	 

diff --git a/include/savan_storage_mgr.h b/include/savan_storage_mgr.h
index af35203..9584142 100644
--- a/include/savan_storage_mgr.h
+++ b/include/savan_storage_mgr.h
@@ -112,7 +112,7 @@
  * @param storage_mgr
  * @param env environment object
  */
-void AXIS2_CALL 
+AXIS2_EXTERN void AXIS2_CALL 
 savan_storage_mgr_free(
     savan_storage_mgr_t *storage_mgr,
     const axutil_env_t *envv);
diff --git a/src/handlers/savan_in_handler.c b/src/handlers/savan_in_handler.c
index 612b892..7c60d71 100644
--- a/src/handlers/savan_in_handler.c
+++ b/src/handlers/savan_in_handler.c
@@ -87,7 +87,7 @@
     {
         AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "[savan] Could not create the database. Check \
             whether database path is correct and accessible. Exit loading the Savan module");
-        AXIS2_LOG_HANDLE(env, SAVAN_ERROR_DATABASE_CREATION_ERROR, AXIS2_FAILURE);
+        AXIS2_HANDLE_ERROR(env, SAVAN_ERROR_DATABASE_CREATION_ERROR, AXIS2_FAILURE);
 
         return AXIS2_FAILURE;
     }
diff --git a/src/handlers/savan_out_handler.c b/src/handlers/savan_out_handler.c
index d8b6946..a94b9bd 100644
--- a/src/handlers/savan_out_handler.c
+++ b/src/handlers/savan_out_handler.c
@@ -88,7 +88,7 @@
     {
         AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "[savan] Could not create the database. Check \
             whether database path is correct and accessible. Exit loading the Savan module");
-        AXIS2_LOG_HANDLE(env, SAVAN_ERROR_DATABASE_CREATION_ERROR, AXIS2_FAILURE);
+        AXIS2_HANDLE_ERROR(env, SAVAN_ERROR_DATABASE_CREATION_ERROR, AXIS2_FAILURE);
 
         return AXIS2_FAILURE;
     }
diff --git a/src/msgreceivers/savan_msg_recv.c b/src/msgreceivers/savan_msg_recv.c
index 2815583..3f853f7 100644
--- a/src/msgreceivers/savan_msg_recv.c
+++ b/src/msgreceivers/savan_msg_recv.c
@@ -22,6 +22,7 @@
 #include <axiom_soap_fault.h>
 #include <axutil_property.h>
 #include <axis2_addr.h>
+#include <axutil_error.h>
 
 #include <savan_util.h>
 #include <savan_constants.h>
@@ -362,7 +363,7 @@
     {
         AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "[savan] Could not create the data resource. Check \
             whether resource path is correct and accessible. Exit loading the Savan module");
-        AXIS2_LOG_HANDLE(env, SAVAN_ERROR_DATABASE_CREATION_ERROR, AXIS2_FAILURE);
+        AXIS2_HANDLE_ERROR(env, SAVAN_ERROR_DATABASE_CREATION_ERROR, AXIS2_FAILURE);
 
         return AXIS2_FAILURE;
     }
diff --git a/src/storage/inmemory/storage_mgr_inmemory.c b/src/storage/inmemory/storage_mgr_inmemory.c
new file mode 100644
index 0000000..dd84de6
--- /dev/null
+++ b/src/storage/inmemory/storage_mgr_inmemory.c
@@ -0,0 +1,26 @@
+/*
+ * Copyright 2004,2005 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.
+ */
+ 
+#include <savan_storage_mgr.h>
+
+AXIS2_EXTERN savan_storage_mgr_t * AXIS2_CALL
+savan_storage_mgr_create(
+    const axutil_env_t *env,
+    axis2_conf_t *conf)
+{
+	return NULL;
+}
+
diff --git a/src/subs_mgr/subs_mgr.c b/src/subs_mgr/subs_mgr.c
index c6d77f2..5d6a007 100644
--- a/src/subs_mgr/subs_mgr.c
+++ b/src/subs_mgr/subs_mgr.c
@@ -102,7 +102,7 @@
     storage_mgr = savan_util_get_storage_mgr(env, conf_ctx, conf);
     if(!storage_mgr)
     {
-        AXIS2_LOG_HANDLE(env, SAVAN_ERROR_DATABASE_CREATION_ERROR, AXIS2_FAILURE);
+        AXIS2_HANDLE_ERROR(env, SAVAN_ERROR_DATABASE_CREATION_ERROR, AXIS2_FAILURE);
         return NULL;
     }
     if(savan_storage_mgr_insert_subscriber(storage_mgr, env, subscriber))
@@ -165,7 +165,7 @@
     storage_mgr = savan_util_get_storage_mgr(env, conf_ctx, conf);
     if(!storage_mgr)
     {
-        AXIS2_LOG_HANDLE(env, SAVAN_ERROR_DATABASE_CREATION_ERROR, AXIS2_FAILURE);
+        AXIS2_HANDLE_ERROR(env, SAVAN_ERROR_DATABASE_CREATION_ERROR, AXIS2_FAILURE);
         return NULL;
     }
 
@@ -252,7 +252,7 @@
     storage_mgr = savan_util_get_storage_mgr(env, conf_ctx, conf);
     if(!storage_mgr)
     {
-        AXIS2_LOG_HANDLE(env, SAVAN_ERROR_DATABASE_CREATION_ERROR, AXIS2_FAILURE);
+        AXIS2_HANDLE_ERROR(env, SAVAN_ERROR_DATABASE_CREATION_ERROR, AXIS2_FAILURE);
         return NULL;
     }
     subscriber = savan_storage_mgr_retrieve_subscriber(storage_mgr, env, subs_id);
@@ -385,3 +385,12 @@
     return subs_list_node;
 }
 
+AXIS2_EXTERN axiom_node_t *AXIS2_CALL
+savan_subs_mgr_get_topic_list(
+    const axutil_env_t *env,
+    axiom_node_t *node,
+    axis2_msg_ctx_t *msg_ctx)
+{
+	return NULL;
+}
+
diff --git a/src/subs_mgr/subs_mgr_skel.c b/src/subs_mgr/subs_mgr_skel.c
index dd5cd97..4e85335 100644
--- a/src/subs_mgr/subs_mgr_skel.c
+++ b/src/subs_mgr/subs_mgr_skel.c
@@ -132,7 +132,7 @@
     {
         AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "[savan] Could not create the database. Check \
             whether database path is correct and accessible. Exit loading the Savan module");
-        AXIS2_LOG_HANDLE(env, SAVAN_ERROR_DATABASE_CREATION_ERROR, AXIS2_FAILURE);
+        AXIS2_ERROR_HANDLE(env, SAVAN_ERROR_DATABASE_CREATION_ERROR, AXIS2_FAILURE);
 
         return AXIS2_FAILURE;
     }*/