コード例 #1
0
ファイル: Messenger.cs プロジェクト: yonglehou/sharpsnmplib
        public static Variable[,] GetTable(VersionCode version, IPEndPoint endpoint, OctetString community, ObjectIdentifier table, int timeout, int maxRepetitions, IObjectRegistry registry)
        {
            if (version == VersionCode.V3)
            {
                throw new NotSupportedException("SNMP v3 is not supported");
            }

            var canContinue = registry == null || registry.ValidateTable(table);
            if (!canContinue)
            {
                throw new ArgumentException(string.Format(CultureInfo.InvariantCulture, "not a table OID: {0}", table));
            }

            IList<Variable> list = new List<Variable>();
            var rows = version == VersionCode.V1 ? Walk(version, endpoint, community, table, list, timeout, WalkMode.WithinSubtree) : BulkWalk(version, endpoint, community, table, list, timeout, maxRepetitions, WalkMode.WithinSubtree, null, null);

            if (rows == 0)
            {
                return new Variable[0, 0];
            }

            var cols = list.Count / rows;
            var k = 0;
            var result = new Variable[rows, cols];

            for (var j = 0; j < cols; j++)
            {
                for (var i = 0; i < rows; i++)
                {
                    result[i, j] = list[k];
                    k++;
                }
            }

            return result;
        }
コード例 #2
0
ファイル: TrapV1Message.cs プロジェクト: xxjeng/nuxleus
 public string ToString(IObjectRegistry objects)
 {
     return string.Format(
         CultureInfo.InvariantCulture,
         "SNMPv1 trap: {0}",
         ((TrapV1Pdu)_pdu).ToString(objects));
 }
コード例 #3
0
ファイル: TrapV1Pdu.cs プロジェクト: ekona/sharpsnmplib
 public string ToString(IObjectRegistry objects)
 {
     return string.Format(
         CultureInfo.InvariantCulture,
         "SNMPv1 TRAP PDU: agent address: {0}; time stamp: {1}; enterprise: {2}; generic: {3}; specific: {4}; varbind count: {5}",
         AgentAddress,
         TimeStamp,
         Enterprise.ToString(objects),
         Generic,
         Specific.ToString(CultureInfo.InvariantCulture),
         Variables.Count.ToString(CultureInfo.InvariantCulture));
 }
コード例 #4
0
ファイル: Variable.cs プロジェクト: ekona/sharpsnmplib
 public string ToString(IObjectRegistry objects)
 {
     return string.Format(CultureInfo.InvariantCulture, "Variable: Id: {0}; Data: {1}", Id.ToString(objects), Data);
 }
コード例 #5
0
 public string ToString(IObjectRegistry objects)
 {
     return string.Format(
         CultureInfo.InvariantCulture,
         "SNMPv2 trap: time stamp: {0}; community: {1}; enterprise: {2}; varbind count: {3}",
         TimeStamp.ToString(CultureInfo.InvariantCulture),
         Community,
         Enterprise.ToString(objects),
         Variables.Count.ToString(CultureInfo.InvariantCulture));
 }
コード例 #6
0
        public static string GetStringOf(ObjectIdentifier id, IObjectRegistry objects)
        {
            if (id == null)
            {
                throw new ArgumentNullException("id");
            }
            
            if (objects == null)
            {
                return id.ToString();
            }

            string result = objects.Tree.Search(id.ToNumerical()).AlternativeText;
            return string.IsNullOrEmpty(result) ? id.ToString() : result;
        }
コード例 #7
0
 public string ToString(IObjectRegistry objects)
 {
     return(string.Format(CultureInfo.InvariantCulture, "Variable: Id: {0}; Data: {1}", Id.ToString(objects), Data));
 }
コード例 #8
0
        public static Variable[,] GetTable(VersionCode version, IPEndPoint endpoint, OctetString community, ObjectIdentifier table, int timeout, int maxRepetitions, IObjectRegistry registry)
        {
            if (version == VersionCode.V3)
            {
                throw new NotSupportedException("SNMP v3 is not supported");
            }

            var canContinue = registry == null || registry.ValidateTable(table);

            if (!canContinue)
            {
                throw new ArgumentException(string.Format(CultureInfo.InvariantCulture, "not a table OID: {0}", table));
            }

            IList <Variable> list = new List <Variable>();
            var rows = version == VersionCode.V1 ? Walk(version, endpoint, community, table, list, timeout, WalkMode.WithinSubtree) : BulkWalk(version, endpoint, community, table, list, timeout, maxRepetitions, WalkMode.WithinSubtree, null, null);

            if (rows == 0)
            {
                return(new Variable[0, 0]);
            }

            var cols   = list.Count / rows;
            var k      = 0;
            var result = new Variable[rows, cols];

            for (var j = 0; j < cols; j++)
            {
                for (var i = 0; i < rows; i++)
                {
                    result[i, j] = list[k];
                    k++;
                }
            }

            return(result);
        }
コード例 #9
0
 public string ToString(IObjectRegistry objects)
 {
     return string.Format(
         CultureInfo.InvariantCulture,
         "INFORM request message: time stamp: {0}; community: {1}; enterprise: {2}; varbind count: {3}",
         TimeStamp.ToString(CultureInfo.InvariantCulture),
         this.Community(),
         Enterprise.ToString(objects),
         this.Variables().Count.ToString(CultureInfo.InvariantCulture));
 }
コード例 #10
0
ファイル: ObjectRegistry.cs プロジェクト: xxjeng/nuxleus
 public static string GetTextual(ObjectIdentifier id, IObjectRegistry registry)
 {
     if (id == null)
     {
         throw new ArgumentNullException("id");
     }
     
     IObjectRegistry objects = registry ?? ObjectRegistry.Default;
     return objects.Translate(id.ToNumerical());
 }