* { font-family: Consolas, Lucida Console, Courier New; font-size: 100%; }
h1 { font-size: 150%; }
td.linenos { background-color: #f0f0f0; padding-right: 10px; }
span.lineno { background-color: #f0f0f0; padding: 0 5px 0 5px; }
pre { line-height: 100%; width: 100%; }
.highlight span { width: 100%; display:-moz-inline-stack; display:inline-block; zoom:1; *display:inline; }
body { background: #ffffff; }
body .c { color: #999988; font-style: italic } /* Comment */
body .err { color: #a61717; background-color: #e3d2d2 } /* Error */
body .k { font-weight: bold } /* Keyword */
body .o { font-weight: bold } /* Operator */
body .cm { color: #999988; font-style: italic } /* Comment.Multiline */
body .cp { color: #999999; font-weight: bold } /* Comment.Preproc */
body .c1 { color: #999988; font-style: italic } /* Comment.Single */
body .cs { color: #999999; font-weight: bold; font-style: italic } /* Comment.Special */
body .gd { color: #000000; background-color: #ffdddd } /* Generic.Deleted */
body .ge { font-style: italic } /* Generic.Emph */
body .gr { color: #aa0000 } /* Generic.Error */
body .gh { color: #999999 } /* Generic.Heading */
body .gi { color: #000000; background-color: #ddffdd } /* Generic.Inserted */
body .go { color: #888888 } /* Generic.Output */
body .gp { color: #555555 } /* Generic.Prompt */
body .gs { font-weight: bold } /* Generic.Strong */
body .gu { color: #aaaaaa } /* Generic.Subheading */
body .gt { color: #aa0000 } /* Generic.Traceback */
body .kc { font-weight: bold } /* Keyword.Constant */
body .kd { font-weight: bold } /* Keyword.Declaration */
body .kp { font-weight: bold } /* Keyword.Pseudo */
body .kr { font-weight: bold } /* Keyword.Reserved */
body .kt { color: #445588; font-weight: bold } /* Keyword.Type */
body .m { color: #009999 } /* Literal.Number */
body .s { color: #bb8844 } /* Literal.String */
body .na { color: #008080 } /* Name.Attribute */
body .nb { color: #999999 } /* Name.Builtin */
body .nc { color: #445588; font-weight: bold } /* Name.Class */
body .no { color: #008080 } /* Name.Constant */
body .ni { color: #800080 } /* Name.Entity */
body .ne { color: #990000; font-weight: bold } /* Name.Exception */
body .nf { color: #990000; font-weight: bold } /* Name.Function */
body .nn { color: #555555 } /* Name.Namespace */
body .nt { color: #000080 } /* Name.Tag */
body .nv { color: #008080 } /* Name.Variable */
body .ow { font-weight: bold } /* Operator.Word */
body .w { color: #bbbbbb } /* Text.Whitespace */
body .mf { color: #009999 } /* Literal.Number.Float */
body .mh { color: #009999 } /* Literal.Number.Hex */
body .mi { color: #009999 } /* Literal.Number.Integer */
body .mo { color: #009999 } /* Literal.Number.Oct */
body .sb { color: #bb8844 } /* Literal.String.Backtick */
body .sc { color: #bb8844 } /* Literal.String.Char */
body .sd { color: #bb8844 } /* Literal.String.Doc */
body .s2 { color: #bb8844 } /* Literal.String.Double */
body .se { color: #bb8844 } /* Literal.String.Escape */
body .sh { color: #bb8844 } /* Literal.String.Heredoc */
body .si { color: #bb8844 } /* Literal.String.Interpol */
body .sx { color: #bb8844 } /* Literal.String.Other */
body .sr { color: #808000 } /* Literal.String.Regex */
body .s1 { color: #bb8844 } /* Literal.String.Single */
body .ss { color: #bb8844 } /* Literal.String.Symbol */
body .bp { color: #999999 } /* Name.Builtin.Pseudo */
body .vc { color: #008080 } /* Name.Variable.Class */
body .vg { color: #008080 } /* Name.Variable.Global */
body .vi { color: #008080 } /* Name.Variable.Instance */
body .il { color: #009999 } /* Literal.Number.Integer.Long */
Info
Revision:3295
Author:victor
Date:2008-06-04 20:55:09 +0300 (Wed, 04 Jun 2008)
Comment:Added missing file
Changes
U trunk/src/server/core/Makefile.am
A trunk/src/server/core/nxsl_classes.cpp
Diff
Modified: trunk/src/server/core/Makefile.am
===================================================================
--- trunk/src/server/core/Makefile.am 2008-06-04 17:54:03 UTC (rev 3294)
+++ trunk/src/server/core/Makefile.am 2008-06-04 17:55:09 UTC (rev 3295)
@@ -14,7 +14,8 @@
modules.cpp netinfo.cpp netobj.cpp netsrv.cpp \
node.cpp nortel.cpp np.cpp nxmp_data.cpp \
nxmp_lex.yy.cpp nxmp_lexer.cpp \
- nxmp_parser.cpp nxmp_parser.tab.cpp objects.cpp \
+ nxmp_parser.cpp nxmp_parser.tab.cpp \
+ nxsl_classes.cpp objects.cpp \
objtools.cpp package.cpp poll.cpp radius.cpp \
rootobj.cpp script.cpp session.cpp situation.cpp \
sms.cpp snmp.cpp snmptrap.cpp subnet.cpp syncer.cpp \
Added: trunk/src/server/core/nxsl_classes.cpp
===================================================================
--- trunk/src/server/core/nxsl_classes.cpp (rev 0)
+++ trunk/src/server/core/nxsl_classes.cpp 2008-06-04 17:55:09 UTC (rev 3295)
@@ -0,0 +1,158 @@
+/* $Id$ */
+/*
+** NetXMS - Network Management System
+** Copyright (C) 2003, 2004, 2005, 2006, 2007 Victor Kirhenshtein
+**
+** This program is free software; you can redistribute it and/or modify
+** it under the terms of the GNU General Public License as published by
+** the Free Software Foundation; either version 2 of the License, or
+** (at your option) any later version.
+**
+** This program is distributed in the hope that it will be useful,
+** but WITHOUT ANY WARRANTY; without even the implied warranty of
+** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+** GNU General Public License for more details.
+**
+** You should have received a copy of the GNU General Public License
+** along with this program; if not, write to the Free Software
+** Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+**
+** File: nxsl_classes.cpp
+**
+**/
+
+#include "nxcore.h"
+
+
+//
+// Implementation of "NetXMS node" class
+//
+
+NXSL_NodeClass::NXSL_NodeClass()
+ :NXSL_Class()
+{
+ strcpy(m_szName, "NetXMS_Node");
+}
+
+NXSL_Value *NXSL_NodeClass::GetAttr(NXSL_Object *pObject, char *pszAttr)
+{
+ Node *pNode;
+ NXSL_Value *pValue = NULL;
+ char szBuffer[256];
+
+ pNode = (Node *)pObject->Data();
+ if (!strcmp(pszAttr, "name"))
+ {
+ pValue = new NXSL_Value(pNode->Name());
+ }
+ else if (!strcmp(pszAttr, "id"))
+ {
+ pValue = new NXSL_Value(pNode->Id());
+ }
+ else if (!strcmp(pszAttr, "ipAddr"))
+ {
+ IpToStr(pNode->IpAddr(), szBuffer);
+ pValue = new NXSL_Value(szBuffer);
+ }
+ else if (!strcmp(pszAttr, "isAgent"))
+ {
+ pValue = new NXSL_Value((LONG)((pNode->Flags() & NF_IS_NATIVE_AGENT) ? 1 : 0));
+ }
+ else if (!strcmp(pszAttr, "isSNMP"))
+ {
+ pValue = new NXSL_Value((LONG)((pNode->Flags() & NF_IS_SNMP) ? 1 : 0));
+ }
+ else if (!strcmp(pszAttr, "isBridge"))
+ {
+ pValue = new NXSL_Value((LONG)((pNode->Flags() & NF_IS_BRIDGE) ? 1 : 0));
+ }
+ else if (!strcmp(pszAttr, "isRouter"))
+ {
+ pValue = new NXSL_Value((LONG)((pNode->Flags() & NF_IS_ROUTER) ? 1 : 0));
+ }
+ else if (!strcmp(pszAttr, "isPrinter"))
+ {
+ pValue = new NXSL_Value((LONG)((pNode->Flags() & NF_IS_PRINTER) ? 1 : 0));
+ }
+ else if (!strcmp(pszAttr, "isCDP"))
+ {
+ pValue = new NXSL_Value((LONG)((pNode->Flags() & NF_IS_CDP) ? 1 : 0));
+ }
+ else if (!strcmp(pszAttr, "isSONMP"))
+ {
+ pValue = new NXSL_Value((LONG)((pNode->Flags() & NF_IS_SONMP) ? 1 : 0));
+ }
+ else if (!strcmp(pszAttr, "isLLDP"))
+ {
+ pValue = new NXSL_Value((LONG)((pNode->Flags() & NF_IS_LLDP) ? 1 : 0));
+ }
+ else if (!strcmp(pszAttr, "snmpVersion"))
+ {
+ pValue = new NXSL_Value((LONG)pNode->GetSNMPVersion());
+ }
+ else if (!strcmp(pszAttr, "snmpOID"))
+ {
+ pValue = new NXSL_Value(pNode->GetSNMPObjectId());
+ }
+ else if (!strcmp(pszAttr, "agentVersion"))
+ {
+ pValue = new NXSL_Value(pNode->GetAgentVersion());
+ }
+ else if (!strcmp(pszAttr, "platformName"))
+ {
+ pValue = new NXSL_Value(pNode->GetPlatformName());
+ }
+ return pValue;
+}
+
+
+//
+// Implementation of "NetXMS event" class
+//
+
+NXSL_EventClass::NXSL_EventClass()
+ :NXSL_Class()
+{
+ strcpy(m_szName, "NetXMS_Event");
+}
+
+NXSL_Value *NXSL_EventClass::GetAttr(NXSL_Object *pObject, char *pszAttr)
+{
+ Event *event;
+ NXSL_Value *value = NULL;
+
+ event = (Event *)pObject->Data();
+ if (!strcmp(pszAttr, "code"))
+ {
+ value = new NXSL_Value(event->Code());
+ }
+ else if (!strcmp(pszAttr, "id"))
+ {
+ value = new NXSL_Value(event->Id());
+ }
+ else if (!strcmp(pszAttr, "timestamp"))
+ {
+ value = new NXSL_Value(event->TimeStamp());
+ }
+ else if (!strcmp(pszAttr, "message"))
+ {
+ value = new NXSL_Value(event->Message());
+ }
+ else if (!strcmp(pszAttr, "userTag"))
+ {
+ value = new NXSL_Value(event->UserTag());
+ }
+ else if (!strcmp(pszAttr, "parameters"))
+ {
+ value = new NXSL_Value(event->GetParameter(0));
+ }
+ return value;
+}
+
+
+//
+// Class objects
+//
+
+NXSL_NodeClass g_nxslNodeClass;
+NXSL_EventClass g_nxslEventClass;
Received on Wed Jun 04 2008 - 20:55:10 EEST
This archive was generated by hypermail 2.2.0 : Wed Jun 04 2008 - 20:52:16 EEST