~checkbox-dev/checkbox/0.7

« back to all changes in this revision

Viewing changes to registries/modprobe.py

  • Committer: Marc Tardif
  • Date: 2009-03-09 14:19:09 UTC
  • mfrom: (492.1.1 trunk)
  • Revision ID: marc.tardif@canonical.com-20090309141909-qvy04u5o7v6e2fhc
Merged changes from trunk.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#
 
2
# This file is part of Checkbox.
 
3
#
 
4
# Copyright 2009 Canonical Ltd.
 
5
#
 
6
# Checkbox 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 3 of the License, or
 
9
# (at your option) any later version.
 
10
#
 
11
# Checkbox 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 Checkbox.  If not, see <http://www.gnu.org/licenses/>.
 
18
#
 
19
import posixpath
 
20
 
 
21
from checkbox.properties import Path
 
22
from checkbox.registries.directory import RecursiveDirectoryRegistry
 
23
from checkbox.registries.filename import FilenameRegistry
 
24
 
 
25
class ModprobeRegistry(RecursiveDirectoryRegistry):
 
26
    """Registry for files contained in /etc/modprobe.d."""
 
27
 
 
28
    directory = Path(default="/etc/modprobe.d")
 
29
 
 
30
    def items(self):
 
31
        items = []
 
32
        for file in self.split("\n"):
 
33
            filename = posixpath.join(str(self.directory), file)
 
34
            info = FilenameRegistry(filename)
 
35
            info.filename = filename
 
36
            key = len(items)
 
37
            items.append((key, info))
 
38
 
 
39
        return items
 
40
 
 
41
 
 
42
factory = ModprobeRegistry