/[smeserver]/cdrom.image/sme9/updates/storage/formats/multipath.py
ViewVC logotype

Annotation of /cdrom.image/sme9/updates/storage/formats/multipath.py

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.2 - (hide annotations) (download) (as text)
Sun Dec 22 04:27:52 2013 UTC (10 years, 7 months ago) by wellsi
Branch: MAIN
CVS Tags: HEAD
Changes since 1.1: +0 -0 lines
Content type: text/x-python
FILE REMOVED
anaconda updates now handled via patches

1 charliebrady 1.1 # multipath.py
2     # multipath device formats
3     #
4     # Copyright (C) 2009 Red Hat, Inc.
5     #
6     # This program is free software; you can redistribute it and/or modify
7     # it under the terms of the GNU General Public License as published by
8     # the Free Software Foundation; either version 2 of the License, or
9     # (at your option) any later version.
10     #
11     # This program is distributed in the hope that it will be useful,
12     # but WITHOUT ANY WARRANTY; without even the implied warranty of
13     # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14     # GNU General Public License for more details.
15     #
16     # You should have received a copy of the GNU General Public License
17     # along with this program. If not, see <http://www.gnu.org/licenses/>.
18     #
19     # Any Red Hat trademarks that are incorporated in the source code or
20     # documentation are not subject to the GNU General Public License and
21     # may only be used or replicated with the express permission of
22     # Red Hat, Inc.
23     #
24     # Red Hat Author(s): Peter Jones <pjones@redhat.com>
25     #
26    
27     from ..storage_log import log_method_call
28     from ..errors import *
29     from . import DeviceFormat, register_device_format
30    
31     import gettext
32     _ = lambda x: gettext.ldgettext("anaconda", x)
33    
34     import logging
35     log = logging.getLogger("storage")
36    
37     class MultipathMember(DeviceFormat):
38     """ A multipath member disk. """
39     _type = "multipath_member"
40     _name = "multipath member device"
41     _udev_types = ["multipath_member"]
42     _formattable = False # can be formatted
43     _supported = True # is supported
44     _linuxNative = False # for clearpart
45     _packages = ["device-mapper-multipath"] # required packages
46     _resizable = False # can be resized
47     _bootable = False # can be used as boot
48     _maxSize = 0 # maximum size in MB
49     _minSize = 0 # minimum size in MB
50     _hidden = True # hide devices with this formatting?
51    
52     def __init__(self, *args, **kwargs):
53     """ Create a DeviceFormat instance.
54    
55     Keyword Arguments:
56    
57     device -- path to the underlying device
58     uuid -- this format's UUID
59     exists -- indicates whether this is an existing format
60    
61     On initialization this format is like DeviceFormat
62    
63     """
64     log_method_call(self, *args, **kwargs)
65     DeviceFormat.__init__(self, *args, **kwargs)
66    
67     # Initialize the attribute that will hold the block object.
68     self._member = None
69    
70     def __str__(self):
71     s = DeviceFormat.__str__(self)
72     s += (" member = %(member)r" % {"member": self.member})
73     return s
74    
75     def _getMember(self):
76     return self._member
77    
78     def _setMember(self, member):
79     self._member = member
80    
81     member = property(lambda s: s._getMember(),
82     lambda s,m: s._setMember(m))
83    
84     def create(self, *args, **kwargs):
85     log_method_call(self, device=self.device,
86     type=self.type, status=self.status)
87     raise MultipathMemberError("creation of multipath members is non-sense")
88    
89     def destroy(self, *args, **kwargs):
90     log_method_call(self, device=self.device,
91     type=self.type, status=self.status)
92     raise MultipathMemberError("destruction of multipath members is non-sense")
93    
94     register_device_format(MultipathMember)
95    

admin@koozali.org
ViewVC Help
Powered by ViewVC 1.2.1 RSS 2.0 feed