Project

General

Profile

Statistics
| Branch: | Tag: | Revision:

vigiboard / build / lib / vigiboard / model / vigiboard_bdd / perfdatasource.py @ 1c1ef2ef

History | View | Annotate | Download (2.01 KB)

1
# -*- coding: utf-8 -*-
2
# vim:set expandtab tabstop=4 shiftwidth=4:
3
"""Modèle pour la table PerfDataSource"""
4

    
5
from sqlalchemy.orm import mapper
6
from sqlalchemy import Table, ForeignKey, Column
7
from sqlalchemy.types import String, Float
8
from vigiboard.model import metadata
9

    
10
from vigiboard.config.vigiboard_config import vigiboard_config
11

    
12
# Generation par SQLAutoCode
13

    
14
perfdatasource = Table(
15
    vigiboard_config['vigiboard_bdd.basename'] + 'perfdatasource',
16
    metadata,
17
    Column(u'hostname',
18
        String(length=100, convert_unicode=True, assert_unicode=None),
19
        ForeignKey(vigiboard_config['vigiboard_bdd.basename'] + u'host.name'),
20
        primary_key=True, nullable=False),
21
    Column(u'servicename',
22
        String(length=100, convert_unicode=True, assert_unicode=None),
23
        ForeignKey(
24
            vigiboard_config['vigiboard_bdd.basename'] + u'service.name'
25
        ), index=True, primary_key=True, nullable=False),
26
    Column(u'graphname',
27
        String(length=100, convert_unicode=True, assert_unicode=None),
28
        ForeignKey(vigiboard_config['vigiboard_bdd.basename'] + u'graph.name'),
29
        index=True,primary_key=False, nullable=False),
30
    Column(u'type',
31
        String(length=100, convert_unicode=True, assert_unicode=None),
32
        primary_key=False, nullable=False),
33
    Column(u'label',
34
        String(length=255, convert_unicode=True, assert_unicode=None),
35
        primary_key=False),
36
    Column(u'factor',
37
        Float(precision=None, asdecimal=False),
38
        primary_key=False, nullable=False),
39
    mysql_engine='InnoDB',
40
    mysql_charset='utf8'
41
)
42

    
43
# Classe a mapper
44

    
45
class PerfDataSource(object):
46
    
47
    """
48
    Classe liée avec la table associée
49
    """
50
    
51
    def __init__(self, hostname, servicename, graphname, typeperf = '',
52
            label = '', factor = 0.0):
53
        self.hostname = hostname
54
        self.servicename = servicename
55
        self.graphname = graphname
56
        self.type = typeperf
57
        self.label = label
58
        self.factor = factor
59

    
60
mapper(PerfDataSource, perfdatasource)