]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
a little more cleanup
authorMichael Jerris <mike@jerris.com>
Sun, 5 Oct 2008 05:23:41 +0000 (05:23 +0000)
committerMichael Jerris <mike@jerris.com>
Sun, 5 Oct 2008 05:23:41 +0000 (05:23 +0000)
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@9846 d0543943-73ff-0310-b7d9-9358b9ac24b2

src/mod/languages/mod_managed/mod_managed.cpp

index e4d8d407053980fd0e75a3d31585fcd7906b8384..cb4e6ef4ddb5cf6aca6b73a6731d054d5020cab1 100644 (file)
  */  \r
 \r
 #include <switch.h>\r
-\r
 #include "freeswitch_managed.h" \r
 \r
 #ifdef _MANAGED\r
 #include <mscoree.h>\r
 using namespace System;\r
 using namespace System::Runtime::InteropServices;\r
+#define MOD_MANAGED_VERSION "Microsoft CLR Version"\r
+#else\r
+#define MOD_MANAGED_VERSION "Mono Version"\r
 #endif\r
 \r
 SWITCH_BEGIN_EXTERN_C \r
@@ -60,6 +62,8 @@ SWITCH_STANDARD_API(managed_loadassembly); /* Load assembly */
 #define MOD_MANAGED_ASM_V3 2\r
 #define MOD_MANAGED_ASM_V4 0\r
 #define MOD_MANAGED_DLL MOD_MANAGED_ASM_NAME ".dll"\r
+#define MOD_MANAGED_IMAGE_NAME "FreeSWITCH"\r
+#define MOD_MANAGED_CLASS_NAME "Loader"\r
 \r
 mod_managed_globals globals = { 0 };\r
 \r
@@ -129,8 +133,7 @@ switch_status_t setMonoDirs()
                }\r
        }\r
 \r
-       if(!found) \r
-       {   // Check registry\r
+       if (!found) {   // Check registry\r
                DWORD size = MAX_PATH;\r
                if (ERROR_SUCCESS == RegGetValue(HKEY_LOCAL_MACHINE, "SOFTWARE\\Novell\\Mono\\2.0", "FrameworkAssemblyDirectory", RRF_RT_REG_SZ, NULL, &libPath, &size)) {\r
                        size = MAX_PATH;\r
@@ -140,8 +143,7 @@ switch_status_t setMonoDirs()
                }\r
        }\r
 \r
-       if (!found)\r
-       { // Scan program files for Mono-2something\r
+       if (!found) { // Scan program files for Mono-2something\r
                HANDLE hFind;\r
                WIN32_FIND_DATA findData;\r
                switch_snprintf(findPath, MAX_PATH, "%s\\Mono-2*", progFilesPath);\r
@@ -172,7 +174,6 @@ switch_status_t setMonoDirs()
        // On other platforms, it should just work if it hasn't been relocated\r
        mono_set_dirs(NULL, NULL);\r
        return SWITCH_STATUS_SUCCESS;\r
-\r
 #endif \r
 }\r
 \r
@@ -240,19 +241,18 @@ MonoMethod * getMethod(const char *name, MonoClass * klass)
        return method;\r
 }\r
 \r
-\r
 switch_status_t findLoader() \r
 {\r
        /* Find loader class and methods */ \r
        MonoClass * loaderClass;\r
        MonoImage * img = mono_assembly_get_image(globals.mod_mono_asm);\r
 \r
-       if (!(loaderClass = mono_class_from_name(img, "FreeSWITCH", "Loader"))) {\r
-               switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "Could not find FreeSWITCH.Loader class.\n");\r
+       if (!(loaderClass = mono_class_from_name(img, MOD_MANAGED_IMAGE_NAME, MOD_MANAGED_CLASS_NAME))) {\r
+               switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "Could not find " MOD_MANAGED_IMAGE_NAME "." MOD_MANAGED_CLASS_NAME " class.\n");\r
                return SWITCH_STATUS_FALSE;\r
        }\r
 \r
-       if (!(globals.loadMethod = getMethod("FreeSWITCH.Loader:Load()", loaderClass))) {\r
+       if (!(globals.loadMethod = getMethod(MOD_MANAGED_IMAGE_NAME "." MOD_MANAGED_CLASS_NAME ":Load()", loaderClass))) {\r
                return SWITCH_STATUS_FALSE;\r
        }\r
 \r
@@ -289,14 +289,14 @@ switch_status_t loadRuntime()
 switch_status_t findLoader() \r
 {\r
        try {\r
-               FreeSwitchManaged::loadMethod = FreeSwitchManaged::mod_dotnet_managed->GetType("FreeSWITCH.Loader")->GetMethod("Load");\r
+               FreeSwitchManaged::loadMethod = FreeSwitchManaged::mod_dotnet_managed->GetType(MOD_MANAGED_IMAGE_NAME "." MOD_MANAGED_CLASS_NAME)->GetMethod("Load");\r
        } catch(Exception^ ex) {\r
                IntPtr msg = Marshal::StringToHGlobalAnsi(ex->ToString());\r
-               switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "Could not load FreeSWITCH.Loader class: %s\n", static_cast<const char*>(msg.ToPointer()));\r
+               switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "Could not load " MOD_MANAGED_IMAGE_NAME "." MOD_MANAGED_CLASS_NAME " class: %s\n", static_cast<const char*>(msg.ToPointer()));\r
                Marshal::FreeHGlobal(msg);\r
                return SWITCH_STATUS_FALSE;\r
        }\r
-       switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Found all FreeSWITCH.Loader functions.\n");\r
+       switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Found all " MOD_MANAGED_IMAGE_NAME "." MOD_MANAGED_CLASS_NAME " functions.\n");\r
        return SWITCH_STATUS_SUCCESS;\r
 }\r
 #endif\r
@@ -306,11 +306,8 @@ SWITCH_MODULE_LOAD_FUNCTION(mod_managed_load)
        int success;\r
        /* connect my internal structure to the blank pointer passed to me */ \r
        *module_interface = switch_loadable_module_create_module_interface(pool, modname);\r
-#ifdef _MANAGED\r
-       switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_INFO, "Loading mod_managed (Common Language Infrastructure), Microsoft CLR Version\n");\r
-#else\r
-       switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_INFO, "Loading mod_managed (Common Language Infrastructure), Mono Version\n");\r
-#endif\r
+       switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_INFO, "Loading mod_managed (Common Language Infrastructure), " MOD_MANAGED_VERSION "\n");\r
+\r
        globals.pool = pool;\r
        \r
        if (loadRuntime() != SWITCH_STATUS_SUCCESS) {                   \r
@@ -321,13 +318,12 @@ SWITCH_MODULE_LOAD_FUNCTION(mod_managed_load)
                return SWITCH_STATUS_FALSE;\r
        }\r
 #ifdef _MANAGED\r
-       Object ^objResult;\r
        try {\r
-               objResult = FreeSwitchManaged::loadMethod->Invoke(nullptr, nullptr);\r
+               Object ^objResult = FreeSwitchManaged::loadMethod->Invoke(nullptr, nullptr);\r
                success = *reinterpret_cast<bool^>(objResult);\r
                switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Load completed successfully.\n");\r
        }\r
-       catch(Exception^ ex)    {\r
+       catch(Exception^ ex) {\r
                IntPtr msg = Marshal::StringToHGlobalAnsi(ex->ToString());\r
                switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "Load did not return true. %s\n", static_cast<const char*>(msg.ToPointer()));\r
                Marshal::FreeHGlobal(msg);\r
@@ -338,10 +334,8 @@ SWITCH_MODULE_LOAD_FUNCTION(mod_managed_load)
        mono_thread_attach(globals.domain);\r
 \r
        /* Run loader */ \r
-       MonoObject * objResult;\r
        MonoObject * exception = NULL;\r
-\r
-       objResult = mono_runtime_invoke(globals.loadMethod, NULL, NULL, &exception);\r
+       MonoObject * objResult = mono_runtime_invoke(globals.loadMethod, NULL, NULL, &exception);\r
        success = *(int *) mono_object_unbox(objResult);\r
 \r
        if (exception) {\r
@@ -370,13 +364,11 @@ SWITCH_MODULE_LOAD_FUNCTION(mod_managed_load)
 \r
 SWITCH_STANDARD_API(managedrun_api_function) \r
 {\r
-       int success;\r
        if (switch_strlen_zero(cmd)) {\r
                stream->write_function(stream, "-ERR no args specified!\n");    \r
                return SWITCH_STATUS_SUCCESS;\r
        }\r
-       success = executeBackgroundDelegate(cmd);\r
-       if (success) {\r
+       if (executeBackgroundDelegate(cmd)) {\r
                stream->write_function(stream, "+OK\n");\r
        } else {        \r
                stream->write_function(stream, "-ERR ExecuteBackground returned false (unknown module or exception?).\n");\r
@@ -384,44 +376,36 @@ SWITCH_STANDARD_API(managedrun_api_function)
        return SWITCH_STATUS_SUCCESS;\r
 }\r
 \r
-\r
 SWITCH_STANDARD_API(managed_api_function) \r
 {\r
-       int success;\r
        if (switch_strlen_zero(cmd)) {\r
                stream->write_function(stream, "-ERR no args specified!\n");    \r
                return SWITCH_STATUS_SUCCESS;\r
        }\r
-       success = executeDelegate(cmd, stream, stream->param_event);\r
-       if (!success) {\r
+       if (!(executeDelegate(cmd, stream, stream->param_event))) {\r
                switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "Execute failed for %s (unknown module or exception).\n", cmd); \r
        }\r
        return SWITCH_STATUS_SUCCESS;\r
 }\r
 \r
-\r
 SWITCH_STANDARD_APP(managed_app_function) \r
 {\r
-       int success;\r
        if (switch_strlen_zero(data)) {\r
                switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "No args specified!\n");\r
                return;\r
        }\r
-       success = runDelegate(data, session);\r
-       if (!success) {\r
+       if (!(runDelegate(data, session))) {\r
                switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "Application run failed for %s (unknown module or exception).\n", data);\r
        }\r
 }\r
 \r
 SWITCH_STANDARD_API(managed_loadassembly)\r
 {\r
-       int success;\r
        if (switch_strlen_zero(cmd)) {\r
                stream->write_function(stream, "-ERR no args specified!\n");    \r
                return SWITCH_STATUS_SUCCESS;\r
        }\r
-       success = loadAssemblyDelegate(cmd);\r
-       if (success) {\r
+       if (loadAssemblyDelegate(cmd)) {\r
                stream->write_function(stream, "+OK\n");\r
        } else {        \r
                stream->write_function(stream, "-ERR LoadAssembly returned false (invalid file or exception).\n");\r