def set_doc_name(self, doc, name):
     """Sets the document name.
     Raises CardinalityError if already defined.
     """
     if not self.doc_name_set:
         doc.name = name
         self.doc_name_set = True
         return True
     else:
         raise CardinalityError('Document::Name')
 def set_doc_comment(self, doc, comment):
     """
     Set document comment.
     Raise CardinalityError if comment already set.
     """
     if not self.doc_comment_set:
         self.doc_comment_set = True
         doc.comment = comment
     else:
         raise CardinalityError("Document::Comment")
Beispiel #3
0
 def set_pkg_comment(self, doc, text):
     """Set's the package's comment.
     Raises CardinalityError if comment already set.
     Raises OrderError if no package previously defined.
     """
     self.assert_package_exists()
     if not self.package_comment_set:
         self.package_comment_set = True
         doc.package.comment = text
     else:
         raise CardinalityError('Package::Comment')
 def set_pkg_cr_text(self, doc, text):
     """Sets the package's license comment.
     Raises OrderError if no package previously defined.
     Raises CardinalityError if already set.
     """
     self.assert_package_exists()
     if not self.package_cr_text_set:
         self.package_cr_text_set = True
         doc.package.cr_text = text
     else:
         raise CardinalityError('Package::CopyrightText')
 def set_pkg_summary(self, doc, text):
     """Set's the package summary.
     Raises CardinalityError if summary already set.
     Raises OrderError if no package previously defined.
     """
     self.assert_package_exists()
     if not self.package_summary_set:
         self.package_summary_set = True
         doc.package.summary = text
     else:
         raise CardinalityError('Package::Summary')
 def set_pkg_desc(self, doc, text):
     """Set's the package's description.
     Raises CardinalityError if description already set.
     Raises OrderError if no package previously defined.
     """
     self.assert_package_exists()
     if not self.package_desc_set:
         self.package_desc_set = True
         doc.package.description = text
     else:
         raise CardinalityError('Package::Description')
 def create_package(self, doc, name):
     """Creates a package for the SPDX Document.
     name - any string.
     Raises CardinalityError if package already defined.
     """
     if not self.package_set:
         self.package_set = True
         doc.package = package.Package(name=name)
         return True
     else:
         raise CardinalityError('Package::Name')
 def set_snippet_lic_comment(self, doc, lic_comment):
     """Sets the snippet's license comment.
     Raises OrderError if no snippet previously defined.
     Raises CardinalityError if already set.
     """
     self.assert_snippet_exists()
     if not self.snippet_lic_comment_set:
         self.snippet_lic_comment_set = True
         doc.snippet[-1].license_comment = lic_comment
     else:
         CardinalityError('Snippet::licenseComments')
 def set_snippet_copyright(self, doc, copyright):
     """Sets the snippet's copyright text.
     Raises OrderError if no snippet previously defined.
     Raises CardinalityError if already set.
     """
     self.assert_snippet_exists()
     if not self.snippet_copyright_set:
         self.snippet_copyright_set = True
         doc.snippet[-1].copyright = copyright
     else:
         raise CardinalityError('Snippet::copyrightText')
Beispiel #10
0
 def set_creation_comment(self, doc, comment):
     """Sets creation comment, Raises CardinalityError if
     comment already set.
     Raises SPDXValueError if not free form text.
     """
     if not self.creation_comment_set:
         self.creation_comment_set = True
         doc.creation_info.comment = comment
         return True
     else:
         raise CardinalityError('CreationInfo::Comment')
Beispiel #11
0
 def set_pkg_chk_sum(self, doc, chk_sum):
     """Sets the package check sum, if not already set.
     chk_sum - A string
     Raises CardinalityError if already defined.
     Raises OrderError if no package previously defined.
     """
     self.assert_package_exists()
     if not self.package_chk_sum_set:
         self.package_chk_sum_set = True
         doc.package.check_sum = checksum.Algorithm('SHA1', chk_sum)
     else:
         raise CardinalityError('Package::CheckSum')
Beispiel #12
0
 def set_pkg_verif_code(self, doc, code):
     """Sets the package verification code, if not already set.
     code - A string.
     Raises CardinalityError if already defined.
     Raises OrderError if no package previously defined.
     """
     self.assert_package_exists()
     if not self.package_verif_set:
         self.package_verif_set = True
         doc.package.verif_code = code
     else:
         raise CardinalityError('Package::VerificationCode')
Beispiel #13
0
 def set_pkg_license_comment(self, doc, text):
     """Sets the package's license comment.
     Raises OrderError if no package previously defined.
     Raises CardinalityError if already set.
     """
     self.assert_package_exists()
     if not self.package_license_comment_set:
         self.package_license_comment_set = True
         doc.package.license_comment = text
         return True
     else:
         raise CardinalityError('Package::LicenseComment')
 def set_pkg_down_location(self, doc, location):
     """Sets the package download location, if not already set.
     location - A string
     Raises CardinalityError if already defined.
     Raises OrderError if no package previously defined.
     """
     self.assert_package_exists()
     if not self.package_down_location_set:
         self.package_down_location_set = True
         doc.package.download_location = location
         return True
     else:
         raise CardinalityError('Package::DownloadLocation')
Beispiel #15
0
 def add_review_comment(self, doc, comment):
     """Sets the review comment. Raises CardinalityError if
     already set. OrderError if no reviewer defined before.
     """
     if len(doc.reviews) != 0:
         if not self.review_comment_set:
             self.review_comment_set = True
             doc.reviews[-1].comment = comment
             return True
         else:
             raise CardinalityError('ReviewComment')
     else:
         raise OrderError('ReviewComment')
 def set_snippet_name(self, doc, name):
     """
     Sets name of the snippet.
     Raises OrderError if no snippet previously defined.
     Raises CardinalityError if the name is already set.
     """
     self.assert_snippet_exists()
     if not self.snippet_name_set:
         self.snippet_name_set = True
         doc.snippet[-1].name = name
         return True
     else:
         raise CardinalityError('SnippetName')
 def set_pkg_file_name(self, doc, name):
     """Sets the package file name, if not already set.
     name - Any string.
     Raises CardinalityError if already has a file_name.
     Raises OrderError if no pacakge previously defined.
     """
     self.assert_package_exists()
     if not self.package_file_name_set:
         self.package_file_name_set = True
         doc.package.file_name = name
         return True
     else:
         raise CardinalityError('Package::FileName')
Beispiel #18
0
 def set_file_comment(self, doc, text):
     """Raises OrderError if no package or no file defined.
     Raises CardinalityError if more than one comment set.
     """
     if self.has_package(doc) and self.has_file(doc):
         if not self.file_comment_set:
             self.file_comment_set = True
             self.file(doc).comment = text
             return True
         else:
             raise CardinalityError('File::Comment')
     else:
         raise OrderError('File::Comment')
Beispiel #19
0
 def set_snippet_comment(self, doc, comment):
     """
     Sets general comments about the snippet.
     Raises OrderError if no snippet previously defined.
     Raises CardinalityError if comment already set.
     """
     self.assert_snippet_exists()
     if not self.snippet_comment_set:
         self.snippet_comment_set = True
         doc.snippet[-1].comment = comment
         return True
     else:
         raise CardinalityError('Snippet::comment')
Beispiel #20
0
 def set_file_notice(self, doc, text):
     """Raises OrderError if no package or file defined.
     Raises CardinalityError if more than one.
     """
     if self.has_package(doc) and self.has_file(doc):
         if not self.file_notice_set:
             self.file_notice_set = True
             self.file(doc).notice = tagvaluebuilders.str_from_text(text)
             return True
         else:
             raise CardinalityError('File::Notice')
     else:
         raise OrderError('File::Notice')
Beispiel #21
0
 def add_annotation_comment(self, doc, comment):
     """Sets the annotation comment. Raises CardinalityError if
     already set. OrderError if no annotator defined before.
     """
     if len(doc.annotations) != 0:
         if not self.annotation_comment_set:
             self.annotation_comment_set = True
             doc.annotations[-1].comment = comment
             return True
         else:
             raise CardinalityError('AnnotationComment')
     else:
         raise OrderError('AnnotationComment')
 def set_pkg_vers(self, doc, version):
     """Sets package version, if not already set.
     version - Any string.
     Raises CardinalityError if already has a version.
     Raises OrderError if no package previously defined.
     """
     self.assert_package_exists()
     if not self.package_vers_set:
         self.package_vers_set = True
         doc.package.version = version
         return True
     else:
         raise CardinalityError('Package::Version')
Beispiel #23
0
 def set_pkg_source_info(self, doc, text):
     """Sets the package's source information, if not already set.
     text - Free form text.
     Raises CardinalityError if already defined.
     Raises OrderError if no package previously defined.
     """
     self.assert_package_exists()
     if not self.package_source_info_set:
         self.package_source_info_set = True
         doc.package.source_info = text
         return True
     else:
         raise CardinalityError('Package::SourceInfo')
 def set_annotation_spdx_id(self, doc, spdx_id):
     """Sets the annotation SPDX Identifier.
     Raises CardinalityError if already set. OrderError if no annotator
     defined before.
     """
     if len(doc.annotations) != 0:
         if not self.annotation_spdx_id_set:
             self.annotation_spdx_id_set = True
             doc.annotations[-1].spdx_id = spdx_id
             return True
         else:
             raise CardinalityError('Annotation::SPDXREF')
     else:
         raise OrderError('Annotation::SPDXREF')
Beispiel #25
0
 def set_file_copyright(self, doc, text):
     """
     Raise OrderError if no package or file defined.
     Raise CardinalityError if more than one.
     """
     if self.has_package(doc) and self.has_file(doc):
         if not self.file_copytext_set:
             self.file_copytext_set = True
             self.file(doc).copyright = text
             return True
         else:
             raise CardinalityError("File::CopyRight")
     else:
         raise OrderError("File::CopyRight")
Beispiel #26
0
 def set_doc_namespace(self, doc, namespace):
     """Sets the document namespace.
     Raise SPDXValueError if malformed value, CardinalityError
     if already defined.
     """
     if not self.doc_namespace_set:
         self.doc_namespace_set = True
         if validations.validate_doc_namespace(namespace):
             doc.namespace = namespace
             return True
         else:
             raise SPDXValueError('Document::Namespace')
     else:
         raise CardinalityError('Document::Comment')
 def set_doc_data_lics(self, doc, lics):
     """Sets the document data license.
     Raises value error if malformed value, CardinalityError
     if already defined.
     """
     if not self.doc_data_lics_set:
         self.doc_data_lics_set = True
         if validations.validate_data_lics(lics):
             doc.data_license = document.License.from_identifier(lics)
             return True
         else:
             raise SPDXValueError('Document::DataLicense')
     else:
         raise CardinalityError('Document::DataLicense')
 def set_file_chksum(self, doc, chksum):
     """
     Raises OrderError if no package or file defined.
     Raises CardinalityError if more than one chksum set.
     """
     if self.has_package(doc) and self.has_file(doc):
         if not self.file_chksum_set:
             self.file_chksum_set = True
             self.file(doc).chk_sum = checksum_from_sha1(chksum)
             return True
         else:
             raise CardinalityError('File::CheckSum')
     else:
         raise OrderError('File::CheckSum')
Beispiel #29
0
 def set_doc_spdx_id(self, doc, doc_spdx_id_line):
     """Sets the document SPDX Identifier.
     Raises value error if malformed value, CardinalityError
     if already defined.
     """
     if not self.doc_spdx_id_set:
         if validations.validate_doc_spdx_id(doc_spdx_id_line):
             doc.spdx_id = doc_spdx_id_line
             self.doc_spdx_id_set = True
             return True
         else:
             raise SPDXValueError('Document::SPDXID')
     else:
         raise CardinalityError('Document::SPDXID')
Beispiel #30
0
 def set_file_license_comment(self, doc, text):
     """
     Raise OrderError if no package or file defined.
     Raise CardinalityError if more than one per file.
     """
     if self.has_package(doc) and self.has_file(doc):
         if not self.file_license_comment_set:
             self.file_license_comment_set = True
             self.file(doc).license_comment = text
             return True
         else:
             raise CardinalityError("File::LicenseComment")
     else:
         raise OrderError("File::LicenseComment")