minor libnxcl refactoring; added missing "comments" column in "dc_tables" table
authorVictor Kirhenshtein <victor@netxms.org>
Thu, 17 Jul 2014 19:36:26 +0000 (22:36 +0300)
committerVictor Kirhenshtein <victor@netxms.org>
Thu, 17 Jul 2014 19:36:26 +0000 (22:36 +0300)
include/nxclapi.h
sql/schema.in
src/libnxcl/comm.cpp
src/libnxcl/datacoll.cpp
src/libnxcl/libnxcl.h
src/libnxcl/main.cpp
src/libnxcl/session.cpp
src/libnxcl/users.cpp
src/server/core/template.cpp
src/server/tools/nxdbmgr/upgrade.cpp

index 3701d83..b42d03d 100644 (file)
@@ -2167,7 +2167,7 @@ UINT32 LIBNXCL_EXPORTABLE NXCGetSessionList(NXC_SESSION hSession, UINT32 *pdwNum
                                            NXC_CLIENT_SESSION_INFO **ppList);
 UINT32 LIBNXCL_EXPORTABLE NXCKillSession(NXC_SESSION hSession, UINT32 dwSessionId);
 UINT32 LIBNXCL_EXPORTABLE NXCGetCurrentUserId(NXC_SESSION hSession);
-UINT32 LIBNXCL_EXPORTABLE NXCGetCurrentSystemAccess(NXC_SESSION hSession);
+UINT64 LIBNXCL_EXPORTABLE NXCGetCurrentSystemAccess(NXC_SESSION hSession);
 
 /** Data collection **/
 UINT32 LIBNXCL_EXPORTABLE NXCOpenNodeDCIList(NXC_SESSION hSession, UINT32 dwNodeId, NXC_DCI_LIST **ppItemList);
index 3a50e9b..51e373d 100644 (file)
@@ -610,6 +610,7 @@ CREATE TABLE dc_tables
        proxy_node integer not null,    // ID of proxy node (for SNMP and agent items)
        perftab_settings SQL_TEXT null,                 // Settings for displaying graph on performance tab
        transformation_script SQL_TEXT null,
+       comments SQL_TEXT null,
        PRIMARY KEY(item_id)
 ) TABLE_TYPE;
 
index 0d22ebc..1053abd 100644 (file)
@@ -201,7 +201,7 @@ THREAD_RESULT THREAD_CALL NetReceiver(NXCL_Session *pSession)
                ProcessEventDBUpdate(pSession, pMsg);
                break;
             case CMD_NOTIFY:
-               pSession->OnNotify(pMsg);
+               pSession->onNotify(pMsg);
                break;
                                case CMD_SITUATION_CHANGE:
                                        ProcessSituationChange(pSession, pMsg);
@@ -388,7 +388,7 @@ UINT32 LIBNXCL_EXPORTABLE NXCConnect(UINT32 dwFlags, const TCHAR *pszServer, con
                         {
                            dwRetCode = pResp->GetVariableLong(VID_RCC);
                            if (dwRetCode == RCC_SUCCESS)
-                              pSession->ParseLoginMessage(pResp);
+                              pSession->parseLoginMessage(pResp);
                            delete pResp;
                         }
                         else
index 3941c86..4795401 100644 (file)
@@ -63,6 +63,7 @@ UINT32 LIBNXCL_EXPORTABLE NXCCloseNodeDCIList(NXC_SESSION hSession, NXC_DCI_LIST
          safe_free(pItemList->pItems[i].pszFormula);
                        safe_free(pItemList->pItems[i].pszCustomUnitName);
                        safe_free(pItemList->pItems[i].pszPerfTabSettings);
+                       safe_free(pItemList->pItems[i].comments);
       }
       safe_free(pItemList->pItems);
       free(pItemList);
@@ -256,6 +257,7 @@ UINT32 LIBNXCL_EXPORTABLE NXCDeleteDCI(NXC_SESSION hSession, NXC_DCI_LIST *pItem
             safe_free(pItemList->pItems[i].pszFormula);
                                safe_free(pItemList->pItems[i].pszCustomUnitName);
                                safe_free(pItemList->pItems[i].pszPerfTabSettings);
+                               safe_free(pItemList->pItems[i].comments);
             pItemList->dwNumItems--;
             memmove(&pItemList->pItems[i], &pItemList->pItems[i + 1],
                     sizeof(NXC_DCI) * (pItemList->dwNumItems - i));
index 7929c50..9f949c2 100644 (file)
@@ -129,7 +129,7 @@ private:
        MUTEX m_mutexSendMsg;
 
    UINT32 m_dwUserId;          // Id of logged-in user
-   UINT64 m_dwSystemAccess;    // System access rights for current user
+   UINT64 m_systemAccess;    // System access rights for current user
 
    int m_hCurrFile;
    UINT32 m_dwFileRqId;
@@ -233,17 +233,17 @@ public:
 
    UINT32 PrepareFileTransfer(const TCHAR *pszFile, UINT32 dwRqId);
    UINT32 WaitForFileTransfer(UINT32 dwTimeout);
-   void AbortFileTransfer(void);
+   void abortFileTransfer();
 
-   void SetClientData(void *pData) { m_pClientData = pData; }
-   void *GetClientData(void) { return m_pClientData; }
+   void setClientData(void *pData) { m_pClientData = pData; }
+   void *getClientData() { return m_pClientData; }
 
-   void OnNotify(CSCPMessage *pMsg);
-   void ParseLoginMessage(CSCPMessage *pMsg);
-   UINT32 GetCurrentUserId(void) { return m_dwUserId; }
-   UINT32 GetCurrentSystemAccess(void) { return m_dwSystemAccess; }
-   BOOL NeedPasswordChange(void) { return (m_dwFlags & NXC_SF_CHANGE_PASSWD) ? TRUE : FALSE; }
-   BOOL IsDBConnLost() { return (m_dwFlags & NXC_SF_BAD_DBCONN) ? TRUE : FALSE; }
+   void onNotify(CSCPMessage *pMsg);
+   void parseLoginMessage(CSCPMessage *pMsg);
+   UINT32 getCurrentUserId() { return m_dwUserId; }
+   UINT64 getCurrentSystemAccess() { return m_systemAccess; }
+   BOOL needPasswordChange() { return (m_dwFlags & NXC_SF_CHANGE_PASSWD) ? TRUE : FALSE; }
+   BOOL isDBConnLost() { return (m_dwFlags & NXC_SF_BAD_DBCONN) ? TRUE : FALSE; }
 
    void setLastLock(const TCHAR *pszLock) { nx_strncpy(m_szLastLock, pszLock, MAX_LOCKINFO_LEN); }
    const TCHAR *getLastLock() { return m_szLastLock; }
index 77b3304..d8a672b 100644 (file)
@@ -136,7 +136,7 @@ UINT32 LIBNXCL_EXPORTABLE NXCUnsubscribe(NXC_SESSION hSession, UINT32 dwChannels
 void LIBNXCL_EXPORTABLE NXCSetClientData(NXC_SESSION hSession, void *pData)
 {
        if (hSession != NULL)
-               ((NXCL_Session *)hSession)->SetClientData(pData);
+               ((NXCL_Session *)hSession)->setClientData(pData);
 }
 
 /**
@@ -144,7 +144,7 @@ void LIBNXCL_EXPORTABLE NXCSetClientData(NXC_SESSION hSession, void *pData)
  */
 void LIBNXCL_EXPORTABLE *NXCGetClientData(NXC_SESSION hSession)
 {
-       return (hSession != NULL) ? ((NXCL_Session *)hSession)->GetClientData() : NULL;
+       return (hSession != NULL) ? ((NXCL_Session *)hSession)->getClientData() : NULL;
 }
 
 /**
@@ -152,7 +152,7 @@ void LIBNXCL_EXPORTABLE *NXCGetClientData(NXC_SESSION hSession)
  */
 BOOL LIBNXCL_EXPORTABLE NXCNeedPasswordChange(NXC_SESSION hSession)
 {
-   return ((NXCL_Session *)hSession)->NeedPasswordChange();
+   return ((NXCL_Session *)hSession)->needPasswordChange();
 }
 
 /**
@@ -160,7 +160,7 @@ BOOL LIBNXCL_EXPORTABLE NXCNeedPasswordChange(NXC_SESSION hSession)
  */
 BOOL LIBNXCL_EXPORTABLE NXCIsDBConnLost(NXC_SESSION hSession)
 {
-   return ((NXCL_Session *)hSession)->IsDBConnLost();
+   return ((NXCL_Session *)hSession)->isDBConnLost();
 }
 
 /**
index 9249083..481dc94 100644 (file)
@@ -937,12 +937,10 @@ UINT32 NXCL_Session::WaitForFileTransfer(UINT32 dwTimeout)
    return dwResult;
 }
 
-
-//
-// Abort file transfer
-//
-
-void NXCL_Session::AbortFileTransfer(void)
+/**
+ * Abort file transfer
+ */
+void NXCL_Session::abortFileTransfer()
 {
    MutexLock(m_mutexFileRq);
    if (m_hCurrFile != -1)
@@ -974,10 +972,10 @@ UINT32 NXCL_Session::SimpleCommand(WORD wCmd)
 /**
  * Parse login response message
  */
-void NXCL_Session::ParseLoginMessage(CSCPMessage *pMsg)
+void NXCL_Session::parseLoginMessage(CSCPMessage *pMsg)
 {
    m_dwUserId = pMsg->GetVariableLong(VID_USER_ID);
-   m_dwSystemAccess = pMsg->GetVariableInt64(VID_USER_SYS_RIGHTS);
+   m_systemAccess = pMsg->GetVariableInt64(VID_USER_SYS_RIGHTS);
    if (pMsg->GetVariableShort(VID_CHANGE_PASSWD_FLAG))
       m_dwFlags |= NXC_SF_CHANGE_PASSWD;
    if (!pMsg->GetVariableShort(VID_DBCONN_STATUS))
@@ -1046,12 +1044,10 @@ void NXCL_Session::watchdogThread()
    }
 }
 
-
-//
-// Handler for CMD_NOTIFY message
-//
-
-void NXCL_Session::OnNotify(CSCPMessage *pMsg)
+/**
+ * Handler for CMD_NOTIFY message
+ */
+void NXCL_Session::onNotify(CSCPMessage *pMsg)
 {
    UINT32 dwCode;
 
index 01f9f18..7bc3c6c 100644 (file)
@@ -468,13 +468,13 @@ UINT32 LIBNXCL_EXPORTABLE NXCKillSession(NXC_SESSION hSession, UINT32 dwSessionI
  */
 UINT32 LIBNXCL_EXPORTABLE NXCGetCurrentUserId(NXC_SESSION hSession)
 {
-   return ((NXCL_Session *)hSession)->GetCurrentUserId();
+   return ((NXCL_Session *)hSession)->getCurrentUserId();
 }
 
 /**
  * Get system access rights of currently logged in user
  */
-UINT32 LIBNXCL_EXPORTABLE NXCGetCurrentSystemAccess(NXC_SESSION hSession)
+UINT64 LIBNXCL_EXPORTABLE NXCGetCurrentSystemAccess(NXC_SESSION hSession)
 {
-   return ((NXCL_Session *)hSession)->GetCurrentSystemAccess();
+   return ((NXCL_Session *)hSession)->getCurrentSystemAccess();
 }
index 70e5392..5f66571 100644 (file)
@@ -375,7 +375,8 @@ void Template::loadItemsFromDB()
        hStmt = DBPrepare(g_hCoreDB,
                   _T("SELECT item_id,template_id,template_item_id,name,")
                                  _T("description,flags,source,snmp_port,polling_interval,retention_time,")
-              _T("status,system_tag,resource_id,proxy_node,perftab_settings,transformation_script,comments FROM dc_tables WHERE node_id=?"));
+              _T("status,system_tag,resource_id,proxy_node,perftab_settings,")
+              _T("transformation_script,comments FROM dc_tables WHERE node_id=?"));
        if (hStmt != NULL)
        {
                DBBind(hStmt, 1, DB_SQLTYPE_INTEGER, m_dwId);
index 3b8ba11..487610f 100644 (file)
@@ -392,11 +392,8 @@ static BOOL RecreateTData(const TCHAR *className, bool multipleTables, bool inde
  */
 static BOOL H_UpgradeFromV328(int currVersion, int newVersion)
 {
-       //Add column comments to table
-       if (!SQLQuery(_T("ALTER TABLE items ADD comments $SQL:TEXT")))
-      if (!g_bIgnoreErrors)
-         return FALSE;
-
+       CHK_EXEC(SQLQuery(_T("ALTER TABLE items ADD comments $SQL:TEXT")));
+       CHK_EXEC(SQLQuery(_T("ALTER TABLE dc_tables ADD comments $SQL:TEXT")));
    CHK_EXEC(SQLQuery(_T("UPDATE metadata SET var_value='329' WHERE var_name='SchemaVersion'")));
    return TRUE;
 }