protected boolean buildVendorResult(ArchiveMetadata meta) { for (AbstractDecoration result : meta.getDecorations()) { if (result instanceof VendorResult) { return true; } } return false; }
@Override public void processMeta(T fileMeta) { File file = fileMeta.getFilePointer(); if (LOG.isTraceEnabled()) { LOG.trace("Processing Extension: " + file.getAbsolutePath()); } decoratorPipeline.processMeta(fileMeta); if (isOfInterest(fileMeta)) { // add it to it's parent's results. fileMeta.getArchiveMeta().getEntries().add(fileMeta); } }
protected void generateReport(ArchiveMetadata archive, File reportDirectory) { if (archive.getName() == null) { LOG.info("Processing reports for: " + archive.getFilePointer().toString()); } else { LOG.info("Processing reports for: "+archive.getName()); } if( this.reporters != null ) { for(Reporter reporter : this.reporters) { reporter.process(archive, reportDirectory); } } if( this.reporters == null || this.reporters.size() == 0 ){ LOG.warn("No reporters are currently registered."); } LOG.info("Reporting complete."); }
for (AbstractDecoration dr : result.getDecorations()) { if (dr instanceof Version) double estimate = 0; for (FileMetadata ir : result.getEntries()) { for (AbstractDecoration dr : ir.getDecorations()) { if (dr instanceof Classification) { appendNotesRow(workbook, s, rownum, result.getRelativePath(), estimate, notesExtracted); rownum++;
@Override public void processMeta(ManifestMetadata file) { // check to see if a version already exists. Only process if no version exists.. for (AbstractDecoration dr : file.getArchiveMeta().getDecorations()) { if (dr instanceof PomVersion) { LOG.debug("Already has version result: " + dr.toString()); return; } } // Otherwise look for default version information. String name = null; String version = extractValue(file.getManifest(), versionPriority); version = cleanseValue(version); if (version != null) { name = extractValue(file.getManifest(), namePriority); name = cleanseValue(name); // otherwise, guess the name from the archive name... // first, look for "-[0-9]" ane substring before that. if (StringUtils.isBlank(name)) { name = extractNameFromArchiveName(file.getArchiveMeta().getName()); } } if (StringUtils.isNotBlank(name) && StringUtils.isNotBlank(version)) { Version vr = new Version(); vr.setName(name); vr.setVersion(version); file.getArchiveMeta().getDecorations().add(vr); return; } }
@Override public void process(ArchiveMetadata archive, File reportDirectory) { //for each resource, create and persist a serialized data object. for(ArchiveMetadata archiveMeta : archive.getNestedArchives()) { //recurse. this.process(archiveMeta, reportDirectory); } for(FileMetadata fileMeta : archive.getEntries()) { //convert file resource to meta object and persist. MetaResultTransformer transformer = resolver.resolveTransformer(fileMeta.getClass()); ResourceData data = transformer.toResourceData(fileMeta, reportDirectory); File metaOut = new File(fileMeta.getFilePointer().getAbsolutePath() + ".windup.meta"); try { marshaller.marshal(metaOut, data); } catch (IOException e) { LOG.error("Exception writing meta: "+metaOut.getAbsolutePath(), e); } } } }
protected File generateScorecardName(ArchiveMetadata archive, File reportDirectory) { Validate.notNull(archive, "Archive is required, but null."); Validate.notNull(reportDirectory, "Report directory is required, but null."); String scorecardName = "scorecard-" + StringUtils.replace(archive.getName(), ".", "-") + ".xlsx"; String outputName = reportDirectory.getAbsolutePath() + File.separator + scorecardName; File output = new File(outputName); return output; }
protected String buildTitle(T meta, File rootDirectory) { String title = StringUtils.removeStart(meta.getFilePointer().getAbsolutePath(), rootDirectory.getAbsolutePath()); title = StringUtils.replace(title, "\\", "/"); title = StringUtils.removeStart(title, "/"); if(meta instanceof FileMetadata) { String starter = ((FileMetadata)meta).getArchiveMeta().getRelativePath(); if(LOG.isDebugEnabled()) { LOG.debug("Removing: " + starter + " from "+title); } title = StringUtils.removeStart(title, starter); } title = StringUtils.removeStart(title, "/"); return title; }
private void unwind(ArchiveMetadata result, List<ArchiveMetadata> unwound) { for(ArchiveMetadata meta : result.getNestedArchives()) { unwind(meta, unwound); } unwound.add(result); }
protected ArchiveReport toArchiveReport(ArchiveMetadata archive, File reportDirectory) { ArchiveMetaTransformer fmt = new ArchiveMetaTransformer(); ArchiveReport report = (ArchiveReport)fmt.toResourceReport(archive, reportDirectory, null); for(ArchiveMetadata meta : archive.getNestedArchives()) { ArchiveReport temp = toArchiveReport(meta, reportDirectory); report.getNestedArchiveReports().add(temp); } if( this.resolver == null ) throw new IllegalStateException("Resolver not set for " + StaticHtmlReporter.class.getSimpleName() ); for(FileMetadata fileMeta : archive.getEntries()) { MetaResultTransformer transformer = this.resolver.resolveTransformer(fileMeta.getClass()); ResourceReport data = transformer.toResourceReport(fileMeta, reportDirectory, report); report.getResourceReports().add(data); } return report; }
@Override public ResourceReport toResourceReport(FileMetadata meta, File reportDirectory, ArchiveReport parent) { ArchiveReport report = new ArchiveReport(); populateResourceData(meta, reportDirectory, report); report.setTitle(report.getRelativePathFromRoot()); ArchiveMetadata am = (ArchiveMetadata)meta; report.setVendorResult(buildVendorResult(am)); report.setRelativePathFromRoot(am.getRelativePath()); return report; }
protected boolean isActive(XmlMetadata file) { for (AbstractDecoration dr : file.getArchiveMeta().getDecorations()) { if (dr instanceof PomVersion) { LOG.debug("Already has version result: " + dr.toString()); return false; } } return true; }
@Override public void processMeta(XmlMetadata fileMeta) { Document document = fileMeta.getParsedDocument(); if (document == null) { if (LOG.isDebugEnabled()) { LOG.debug("Document was null. Problem parsing: " + fileMeta.getFilePointer().getAbsolutePath()); } // attach the bad file so we see it in the reports... fileMeta.getArchiveMeta().getEntries().add(fileMeta); return; } super.processMeta(fileMeta); }
@Override public void processMeta(XmlMetadata file) { Document doc = file.getParsedDocument(); try { String description = extractStringValue(xPath, doc); if (StringUtils.isNotBlank(description)) { Summary result = new Summary(); result.setDescription(description); // add the link to the archive. file.getArchiveMeta().getDecorations().add(result); } } catch (XPathExpressionException e) { LOG.error("Exception running xpath expression.", e); } }
for(FileMetadata archiveEntryMeta : tempMeta.getArchiveMeta().getEntries()) { if(archiveEntryMeta.getFilePointer().equals(tempMeta.getFilePointer())) { result = archiveEntryMeta;
@Override public void processMeta(XmlMetadata file) { Document doc = file.getParsedDocument(); try { String link = extractStringValue(linkXPath, doc); if (StringUtils.isNotBlank(link)) { Link result = new Link(); result.setLink(link); result.setDescription("Project Site"); // add the link to the archive. file.getArchiveMeta().getDecorations().add(result); } } catch (XPathExpressionException e) { LOG.error("Exception running xpath expression.", e); } }
@Override public void processMeta(ManifestMetadata file) { // Look for default description information. String description = extractValue(file.getManifest(), descriptionPriority); if (description == null) { return; } // if it exists, cleanse it. description = cleanseValue(description); if (StringUtils.isNotBlank(description)) { Summary vr = new Summary(); vr.setDescription(description); file.getArchiveMeta().getDecorations().add(vr); return; } }
@Override public void processMeta(ManifestMetadata file) { // Look for default description information. String link = extractValue(file.getManifest(), linkPriority); if (link == null) { return; } // if it exists, cleanse it. link = cleanseValue(link); if (StringUtils.isNotBlank(link)) { Link vr = new Link(); vr.setDescription("Project Site"); vr.setLink(link); file.getArchiveMeta().getDecorations().add(vr); return; } }
protected void createVersionResult(XmlMetadata file, String groupId, String artifactId, String versionId, String name) { PomVersion vr = new PomVersion(); // default to artifact ID if name isn't provided. if (StringUtils.isBlank(name)) { name = artifactId; } vr.setName(name); vr.setVersion(versionId); vr.setArchetypeId(artifactId); vr.setGroupId(groupId); file.getArchiveMeta().getDecorations().add(vr); if(file.getArchiveMeta() instanceof ZipMetadata) { ZipMetadata zip = (ZipMetadata)file.getArchiveMeta(); knownArchiveProfiler.isKnownVendor(zip, groupId); } }
@Override public void processMeta(ManifestMetadata file) { if (matchesAll(file.getManifest())) { Version vr = new Version(); if (StringUtils.isNotBlank(matchName)) { vr.setName(matchName); } else { String name = extractValue(file.getManifest(), namePriority); name = cleanseValue(name); vr.setName(name); } if (StringUtils.isNotBlank(matchVersion)) { vr.setVersion(matchVersion); } else { String version = extractValue(file.getManifest(), versionPriority); version = cleanseValue(version); vr.setVersion(version); } file.getArchiveMeta().getDecorations().add(vr); } }