Package backend :: Package server :: Package repomd :: Module domain
[hide private]
[frames] | no frames]

Source Code for Module backend.server.repomd.domain

  1  # 
  2  # Copyright (c) 2008--2018 Red Hat, Inc. 
  3  # 
  4  # This software is licensed to you under the GNU General Public License, 
  5  # version 2 (GPLv2). There is NO WARRANTY for this software, express or 
  6  # implied, including the implied warranties of MERCHANTABILITY or FITNESS 
  7  # FOR A PARTICULAR PURPOSE. You should have received a copy of GPLv2 
  8  # along with this software; if not, see 
  9  # http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt. 
 10  # 
 11  # Red Hat trademarks are not licensed under GPLv2. No permission is 
 12  # granted to use or replicate Red Hat trademarks that are incorporated 
 13  # in this software or its documentation. 
 14  # 
 15  # 
 16  #   Domain Classes for generating repository metadata from RHN info. 
 17  # 
 18   
 19   
20 -class Channel:
21 22 """ A pure data object representing an RHN Channel. """ 23
24 - def __init__(self, channel_id):
25 self.id = channel_id 26 27 self.label = None 28 self.name = None 29 self.checksum_type = None 30 31 self.num_packages = 0 32 self.packages = [] 33 self.errata = [] 34 self.updateinfo = None 35 self.comps = None 36 self.modules = None
37 38
39 -class Package:
40 41 """ A pure data object representing an RHN Package. """ 42
43 - def __init__(self, package_id):
44 self.id = package_id 45 46 self.name = None 47 self.version = None 48 self.release = None 49 self.epoch = 0 50 self.arch = None 51 52 self.checksum = None 53 self.checksum_type = None 54 self.summary = None 55 self.description = None 56 self.vendor = None 57 self.build_time = None 58 self.package_size = None 59 self.payload_size = None 60 self.installed_size = None 61 self.header_start = None 62 self.header_end = None 63 self.package_group = None 64 self.build_host = None 65 self.copyright = None 66 self.filename = None 67 self.source_rpm = None 68 69 self.files = [] 70 71 self.provides = [] 72 self.requires = [] 73 self.conflicts = [] 74 self.obsoletes = [] 75 self.supplements = [] 76 self.enhances = [] 77 self.suggests = [] 78 self.recommends = [] 79 80 self.changelog = []
81 82
83 -class Erratum:
84 85 """ An object representing a single update to a channel. """ 86
87 - def __init__(self, erratum_id):
88 self.id = erratum_id 89 self.readable_id = None 90 self.title = None 91 self.advisory_type = None 92 self.version = None 93 94 self.issued = None 95 self.updated = None 96 97 self.synopsis = None 98 self.description = None 99 100 self.bz_references = [] 101 self.cve_references = [] 102 103 # We don't want to pickle a single package multiple times, 104 # So here's a list to store the ids and we can swap out the 105 # Actual objects when its time to pickle. This should be replaced 106 # With something that keeps the concepts seperate. 107 self.package_ids = [] 108 self.packages = []
109 110
111 -class RepoMD:
112
113 - def __init__(self, repomd_id, filename):
114 self.id = repomd_id 115 self.filename = filename
116