~ubuntu-branches/ubuntu/wily/torrus/wily-proposed

« back to all changes in this revision

Viewing changes to perllib/Torrus/DevDiscover/AlliedTelesyn_PBC18.pm

  • Committer: Package Import Robot
  • Author(s): Bernhard Schmidt
  • Date: 2014-10-05 21:16:04 UTC
  • mfrom: (1.2.5)
  • mto: (6.1.2 experimental)
  • mto: This revision was merged to the branch mainline in revision 13.
  • Revision ID: package-import@ubuntu.com-20141005211604-qqkvq1k0uqiv3bvk
Tags: upstream-2.08
ImportĀ upstreamĀ versionĀ 2.08

Show diffs side-by-side

added added

removed removed

Lines of Context:
15
15
#  along with this program; if not, write to the Free Software
16
16
#  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
17
17
 
18
 
# $Id$
19
18
# Marc Haber <mh+torrus-devel@zugschlus.de>
20
19
# Redesigned by Stanislav Sinyagin
21
20
 
24
23
package Torrus::DevDiscover::AlliedTelesyn_PBC18;
25
24
 
26
25
use strict;
 
26
use warnings;
 
27
 
27
28
use Torrus::Log;
28
29
 
29
30
 
85
86
    
86
87
    # Modules table
87
88
 
88
 
    my $oid = $dd->oiddef('ATMCCommon-MIB::mcModuleType');
 
89
    my $base = $dd->oiddef('ATMCCommon-MIB::mcModuleType');
89
90
    
90
 
    my $table = $session->get_table( -baseoid => $oid );    
 
91
    my $table = $session->get_table( -baseoid => $base );    
91
92
    if( not defined( $table ) )
92
93
    {
93
94
        return 0;
95
96
    
96
97
    $devdetails->storeSnmpVars( $table );
97
98
    
98
 
    foreach my $INDEX ( $devdetails->getSnmpIndices($oid) )
 
99
    foreach my $INDEX ( $devdetails->getSnmpIndices($base) )
99
100
    {
100
 
        my $moduleType = $devdetails->snmpVar( $oid . '.' . $INDEX );
 
101
        my $moduleType = $devdetails->snmpVar( $base . '.' . $INDEX );
101
102
        if( $moduleType == 0 )
102
103
        {
103
104
            next;
153
154
        my $name = $devdetails->snmpVar
154
155
            ( $dd->oiddef('ATMCCommon-MIB::mcModuleName') .'.'.$INDEX );
155
156
 
156
 
        if( length( $name ) > 0 )
 
157
        if( defined($name) and $name ne '' )
157
158
        {
158
159
            $data->{'PBC18'}{$INDEX}{'moduleName'} = $name;
159
160
        }
215
216
        
216
217
    foreach my $INDEX ( sort {$a<=>$b} keys %{$data->{'PBC18'}} )
217
218
    {
218
 
        my $param = { 'pbc-module-index' => $INDEX };
 
219
        my $modParam = { 'pbc-module-index' => $INDEX };
219
220
        
220
221
        if( defined( $data->{'PBC18'}{$INDEX}{'moduleDesc'} ) )
221
222
        {
222
 
            $param->{'legend'} =
 
223
            $modParam->{'legend'} =
223
224
                'Module type: ' . $data->{'PBC18'}{$INDEX}{'moduleDesc'};
224
225
        }
225
226
 
226
227
        if( defined( $data->{'PBC18'}{$INDEX}{'moduleName'} ) )
227
228
        {
228
 
            $param->{'comment'} =
 
229
            $modParam->{'comment'} =
229
230
                $data->{'PBC18'}{$INDEX}{'moduleName'};
230
231
        }
231
232
        
232
 
        my $modNode = $cb->addSubtree( $devNode, 'Module_' . $INDEX, $param );
 
233
        my $modNode =
 
234
            $cb->addSubtree( $devNode, 'Module_' . $INDEX, $modParam );
233
235
 
234
236
        my $mgParam = {
235
237
            'ds-type'              => 'rrd-multigraph',
258
260
            $mgParam->{'line-order-' . $dsname} = $n;
259
261
            $mgParam->{'ds-expr-' . $dsname} = '{Port_' . $portName . '}';
260
262
            
261
 
            my $param = {
 
263
            my $portParam = {
262
264
                'rrd-ds' => 'Port' . $portName,
263
265
                'snmp-object' =>
264
266
                    $data->{'PBC18'}{$INDEX}{'portAvailable'}{$portName},
265
267
                };
266
268
 
267
 
            $cb->addLeaf( $modNode, 'Port_' . $portName, $param );
 
269
            $cb->addLeaf( $modNode, 'Port_' . $portName, $portParam );
268
270
            $n++;
269
271
        }
270
272
 
271
273
        $cb->addLeaf( $modNode, 'AllPorts', $mgParam );        
272
274
    }
 
275
    return;
273
276
}
274
277
 
275
278