Update deprecation warnings
[pyi2ncommon] / src / cnfline / cnfline.py
1 # The software in this package is distributed under the GNU General
2 # Public License version 2 (with a special exception described below).
3 #
4 # A copy of GNU General Public License (GPL) is included in this distribution,
5 # in the file COPYING.GPL.
6 #
7 # As a special exception, if other files instantiate templates or use macros
8 # or inline functions from this file, or you compile this file and link it
9 # with other works to produce a work based on this file, this file
10 # does not by itself cause the resulting work to be covered
11 # by the GNU General Public License.
12 #
13 # However the source code for this file must still be made available
14 # in accordance with section (3) of the GNU General Public License.
15 #
16 # This exception does not invalidate any other reasons why a work based
17 # on this file might be covered by the GNU General Public License.
18 #
19 # Copyright (c) 2016-2018 Intra2net AG <info@intra2net.com>
20
21 """
22 .. note:: DEPRECATED! Please do not extend this or add new uses of this module,
23           use :py:mod:`pyi2ncommon.arnied_api` or :py:mod:`pyi2ncommon.cnfvar`
24           instead!
25 """
26
27 class CnfLine(object):
28     """Represents an arnied cnfline"""
29
30     def __init__(self,
31                  name='',
32                  instance=0,
33                  data='',
34                  line_no=1,
35                  parent_line_no=0):
36         self.name = name
37         self.instance = instance
38         self.data = data
39         self.line_no = line_no
40         self.parent_line_no = parent_line_no
41
42         if len(self.name) == 0:
43             raise ValueError("You can't leave the cnfvar name empty")
44
45         if line_no == 0:
46             raise ValueError('Zero is not a valid line number')
47
48     def __str__(self):
49         """Build cnfline string representation"""
50
51         # Sanity checks
52         if len(self.name) == 0:
53             raise ValueError("Can't display empty cnfvar name")
54         if self.line_no == 0:
55             raise ValueError('Zero is not a valid line number')
56
57         if self.parent_line_no:
58             rtn = '{0} ({1})'.format(self.line_no, self.parent_line_no)
59         else:
60             rtn = '{0}'.format(self.line_no)
61
62         rtn += ' {0},{1}: "{2}"'.format(self.name, self.instance, self.data)
63
64         return rtn