SpotBugs Bug Detector Report

The following document contains the results of SpotBugs

SpotBugs Version is 4.7.2

Threshold is medium

Effort is default

Summary

Classes Bugs Errors Missing Classes
73 33 0 0

Files

Class Bugs
nl.knaw.dans.bagit.conformance.profile.BagInfoRequirement 4
nl.knaw.dans.bagit.conformance.profile.BagitProfile 12
nl.knaw.dans.bagit.creator.AbstractCreateManifestsVistor 1
nl.knaw.dans.bagit.domain.Bag 8
nl.knaw.dans.bagit.domain.Manifest 2
nl.knaw.dans.bagit.domain.Metadata 1
nl.knaw.dans.bagit.verify.CheckIfFileExistsTask 1
nl.knaw.dans.bagit.verify.CheckManifestHashesTask 2
nl.knaw.dans.bagit.verify.PayloadFileExistsInAllManifestsVistor 1
nl.knaw.dans.bagit.verify.PayloadFileExistsInAtLeastOneManifestVistor 1

nl.knaw.dans.bagit.conformance.profile.BagInfoRequirement

Bug Category Details Line Priority
nl.knaw.dans.bagit.conformance.profile.BagInfoRequirement.getAcceptableValues() may expose internal representation by returning BagInfoRequirement.acceptableValues MALICIOUS_CODE EI_EXPOSE_REP 83 Medium
new nl.knaw.dans.bagit.conformance.profile.BagInfoRequirement(boolean, List) may expose internal representation by storing an externally mutable object into BagInfoRequirement.acceptableValues MALICIOUS_CODE EI_EXPOSE_REP2 56 Medium
new nl.knaw.dans.bagit.conformance.profile.BagInfoRequirement(boolean, List, boolean) may expose internal representation by storing an externally mutable object into BagInfoRequirement.acceptableValues MALICIOUS_CODE EI_EXPOSE_REP2 67 Medium
nl.knaw.dans.bagit.conformance.profile.BagInfoRequirement.setAcceptableValues(List) may expose internal representation by storing an externally mutable object into BagInfoRequirement.acceptableValues MALICIOUS_CODE EI_EXPOSE_REP2 86 Medium

nl.knaw.dans.bagit.conformance.profile.BagitProfile

Bug Category Details Line Priority
nl.knaw.dans.bagit.conformance.profile.BagitProfile.getAcceptableBagitVersions() may expose internal representation by returning BagitProfile.acceptableBagitVersions MALICIOUS_CODE EI_EXPOSE_REP 115 Medium
nl.knaw.dans.bagit.conformance.profile.BagitProfile.getAcceptableMIMESerializationTypes() may expose internal representation by returning BagitProfile.acceptableMIMESerializationTypes MALICIOUS_CODE EI_EXPOSE_REP 109 Medium
nl.knaw.dans.bagit.conformance.profile.BagitProfile.getBagInfoRequirements() may expose internal representation by returning BagitProfile.bagInfoRequirements MALICIOUS_CODE EI_EXPOSE_REP 85 Medium
nl.knaw.dans.bagit.conformance.profile.BagitProfile.getManifestTypesRequired() may expose internal representation by returning BagitProfile.manifestTypesRequired MALICIOUS_CODE EI_EXPOSE_REP 91 Medium
nl.knaw.dans.bagit.conformance.profile.BagitProfile.getTagFilesRequired() may expose internal representation by returning BagitProfile.tagFilesRequired MALICIOUS_CODE EI_EXPOSE_REP 127 Medium
nl.knaw.dans.bagit.conformance.profile.BagitProfile.getTagManifestTypesRequired() may expose internal representation by returning BagitProfile.tagManifestTypesRequired MALICIOUS_CODE EI_EXPOSE_REP 121 Medium
nl.knaw.dans.bagit.conformance.profile.BagitProfile.setAcceptableBagitVersions(List) may expose internal representation by storing an externally mutable object into BagitProfile.acceptableBagitVersions MALICIOUS_CODE EI_EXPOSE_REP2 118 Medium
nl.knaw.dans.bagit.conformance.profile.BagitProfile.setAcceptableMIMESerializationTypes(List) may expose internal representation by storing an externally mutable object into BagitProfile.acceptableMIMESerializationTypes MALICIOUS_CODE EI_EXPOSE_REP2 112 Medium
nl.knaw.dans.bagit.conformance.profile.BagitProfile.setBagInfoRequirements(Map) may expose internal representation by storing an externally mutable object into BagitProfile.bagInfoRequirements MALICIOUS_CODE EI_EXPOSE_REP2 88 Medium
nl.knaw.dans.bagit.conformance.profile.BagitProfile.setManifestTypesRequired(List) may expose internal representation by storing an externally mutable object into BagitProfile.manifestTypesRequired MALICIOUS_CODE EI_EXPOSE_REP2 94 Medium
nl.knaw.dans.bagit.conformance.profile.BagitProfile.setTagFilesRequired(List) may expose internal representation by storing an externally mutable object into BagitProfile.tagFilesRequired MALICIOUS_CODE EI_EXPOSE_REP2 130 Medium
nl.knaw.dans.bagit.conformance.profile.BagitProfile.setTagManifestTypesRequired(List) may expose internal representation by storing an externally mutable object into BagitProfile.tagManifestTypesRequired MALICIOUS_CODE EI_EXPOSE_REP2 124 Medium

nl.knaw.dans.bagit.creator.AbstractCreateManifestsVistor

Bug Category Details Line Priority
new nl.knaw.dans.bagit.creator.AbstractCreateManifestsVistor(Map, boolean) may expose internal representation by storing an externally mutable object into AbstractCreateManifestsVistor.manifestToMessageDigestMap MALICIOUS_CODE EI_EXPOSE_REP2 46 Medium

nl.knaw.dans.bagit.domain.Bag

Bug Category Details Line Priority
nl.knaw.dans.bagit.domain.Bag.getItemsToFetch() may expose internal representation by returning Bag.itemsToFetch MALICIOUS_CODE EI_EXPOSE_REP 104 Medium
nl.knaw.dans.bagit.domain.Bag.getMetadata() may expose internal representation by returning Bag.metadata MALICIOUS_CODE EI_EXPOSE_REP 112 Medium
nl.knaw.dans.bagit.domain.Bag.getPayLoadManifests() may expose internal representation by returning Bag.payLoadManifests MALICIOUS_CODE EI_EXPOSE_REP 88 Medium
nl.knaw.dans.bagit.domain.Bag.getTagManifests() may expose internal representation by returning Bag.tagManifests MALICIOUS_CODE EI_EXPOSE_REP 96 Medium
nl.knaw.dans.bagit.domain.Bag.setItemsToFetch(List) may expose internal representation by storing an externally mutable object into Bag.itemsToFetch MALICIOUS_CODE EI_EXPOSE_REP2 108 Medium
nl.knaw.dans.bagit.domain.Bag.setMetadata(Metadata) may expose internal representation by storing an externally mutable object into Bag.metadata MALICIOUS_CODE EI_EXPOSE_REP2 116 Medium
nl.knaw.dans.bagit.domain.Bag.setPayLoadManifests(Set) may expose internal representation by storing an externally mutable object into Bag.payLoadManifests MALICIOUS_CODE EI_EXPOSE_REP2 92 Medium
nl.knaw.dans.bagit.domain.Bag.setTagManifests(Set) may expose internal representation by storing an externally mutable object into Bag.tagManifests MALICIOUS_CODE EI_EXPOSE_REP2 100 Medium

nl.knaw.dans.bagit.domain.Manifest

Bug Category Details Line Priority
nl.knaw.dans.bagit.domain.Manifest.getFileToChecksumMap() may expose internal representation by returning Manifest.fileToChecksumMap MALICIOUS_CODE EI_EXPOSE_REP 37 Medium
nl.knaw.dans.bagit.domain.Manifest.setFileToChecksumMap(Map) may expose internal representation by storing an externally mutable object into Manifest.fileToChecksumMap MALICIOUS_CODE EI_EXPOSE_REP2 41 Medium

nl.knaw.dans.bagit.domain.Metadata

Bug Category Details Line Priority
nl.knaw.dans.bagit.domain.Metadata.getAll() may expose internal representation by returning Metadata.list MALICIOUS_CODE EI_EXPOSE_REP 61 Medium

nl.knaw.dans.bagit.verify.CheckIfFileExistsTask

Bug Category Details Line Priority
new nl.knaw.dans.bagit.verify.CheckIfFileExistsTask(Path, Set, CountDownLatch) may expose internal representation by storing an externally mutable object into CheckIfFileExistsTask.missingFiles MALICIOUS_CODE EI_EXPOSE_REP2 44 Medium

nl.knaw.dans.bagit.verify.CheckManifestHashesTask

Bug Category Details Line Priority
new nl.knaw.dans.bagit.verify.CheckManifestHashesTask(Map$Entry, String, CountDownLatch, Collection) may expose internal representation by storing an externally mutable object into CheckManifestHashesTask.entry MALICIOUS_CODE EI_EXPOSE_REP2 49 Medium
new nl.knaw.dans.bagit.verify.CheckManifestHashesTask(Map$Entry, String, CountDownLatch, Collection) may expose internal representation by storing an externally mutable object into CheckManifestHashesTask.exceptions MALICIOUS_CODE EI_EXPOSE_REP2 52 Medium

nl.knaw.dans.bagit.verify.PayloadFileExistsInAllManifestsVistor

Bug Category Details Line Priority
new nl.knaw.dans.bagit.verify.PayloadFileExistsInAllManifestsVistor(Set, boolean) may expose internal representation by storing an externally mutable object into PayloadFileExistsInAllManifestsVistor.manifests MALICIOUS_CODE EI_EXPOSE_REP2 37 Medium

nl.knaw.dans.bagit.verify.PayloadFileExistsInAtLeastOneManifestVistor

Bug Category Details Line Priority
new nl.knaw.dans.bagit.verify.PayloadFileExistsInAtLeastOneManifestVistor(Set, boolean) may expose internal representation by storing an externally mutable object into PayloadFileExistsInAtLeastOneManifestVistor.filesListedInManifests MALICIOUS_CODE EI_EXPOSE_REP2 39 Medium