use of org.eclipse.sw360.datahandler.thrift.components.Release in project sw360portal by sw360.
the class ReleaseClearingStateSummaryComputer method computeReleaseClearingStateSummary.
public static ReleaseClearingStateSummary computeReleaseClearingStateSummary(List<Release> releases, String clearingTeam) {
ReleaseClearingStateSummary summary = new ReleaseClearingStateSummary(0, 0, 0, 0, 0);
if (releases == null) {
return summary;
}
for (Release release : releases) {
Map<String, FossologyStatus> fossologyStatuses = nullToEmptyMap(release.getClearingTeamToFossologyStatus());
ViewedState globalState = getGlobalState(release.getClearingState());
ViewedState myTeamState = getStateOfFossology(fossologyStatuses.get(clearingTeam));
ViewedState otherTeamState = getBestStateOfFossologyForOtherTeams(clearingTeam, fossologyStatuses);
addReleaseWithStates(summary, globalState, myTeamState, otherTeamState);
}
return summary;
}
use of org.eclipse.sw360.datahandler.thrift.components.Release in project sw360portal by sw360.
the class ProjectHelper method makeRowsWithReleases.
private SubTable makeRowsWithReleases(Project project) throws SW360Exception {
List<Release> releases = getReleases(project);
SubTable table = new SubTable();
if (releases.size() > 0) {
for (Release release : releases) {
List<String> currentRow = makeRowForProject(project);
currentRow.addAll(releaseHelper.makeRows(release).elements.get(0));
table.addRow(currentRow);
}
} else {
List<String> projectRowWithEmptyReleaseFields = makeRowForProject(project);
for (int i = 0; i < releaseHelper.getColumns(); i++) {
projectRowWithEmptyReleaseFields.add("");
}
table.addRow(projectRowWithEmptyReleaseFields);
}
return table;
}
use of org.eclipse.sw360.datahandler.thrift.components.Release in project sw360portal by sw360.
the class ReleaseHelper method addFieldValueToRow.
private void addFieldValueToRow(List<String> row, Release._Fields field, Release release) throws SW360Exception {
switch(field) {
case COMPONENT_ID:
// first, add data for given field
row.add(release.getComponentId());
// second, add joined data, remark that headers have already been added
// accordingly
// add component type in every case
Component component = this.preloadedComponents.get(release.componentId);
if (component == null) {
// maybe cache was not initialized properly, so try to load manually
try {
component = cClient.getComponentById(release.getComponentId(), user);
} catch (TException e) {
log.warn("No component found for id " + release.getComponentId() + " which is set in release with id " + release.getId(), e);
component = null;
}
}
// check again and add value
if (component == null) {
row.add("");
} else {
row.add(ThriftEnumUtils.enumToString(component.getComponentType()));
}
// and project origin only if wanted
if (addAdditionalData()) {
if (releaseClearingStatusDataByRelease.containsKey(release)) {
row.add(releaseClearingStatusDataByRelease.get(release).getProjectNames());
} else {
row.add("");
}
}
break;
case VENDOR:
addVendorToRow(release.getVendor(), row);
break;
case COTS_DETAILS:
addCotsDetailsToRow(release.getCotsDetails(), row);
break;
case CLEARING_INFORMATION:
addClearingInformationToRow(release.getClearingInformation(), row);
break;
case ECC_INFORMATION:
addEccInformationToRow(release.getEccInformation(), row);
break;
case RELEASE_ID_TO_RELATIONSHIP:
addReleaseIdToRelationShipToRow(release.getReleaseIdToRelationship(), row);
break;
case ATTACHMENTS:
String size = Integer.toString(release.isSetAttachments() ? release.getAttachments().size() : 0);
row.add(size);
break;
default:
Object fieldValue = release.getFieldValue(field);
row.add(fieldValueAsString(fieldValue));
}
}
use of org.eclipse.sw360.datahandler.thrift.components.Release in project sw360portal by sw360.
the class AttachmentController method createHalAttachment.
private HalResource<Attachment> createHalAttachment(Attachment sw360Attachment, Release sw360Release, User sw360User) {
HalResource<Attachment> halAttachment = new HalResource<>(sw360Attachment);
String componentUUID = sw360Attachment.getAttachmentContentId();
Link releaseLink = linkTo(AttachmentController.class).slash("api/releases/" + sw360Release.getId()).withRel("release");
halAttachment.add(releaseLink);
restControllerHelper.addEmbeddedRelease(halAttachment, sw360Release);
restControllerHelper.addEmbeddedUser(halAttachment, sw360User, "createdBy");
return halAttachment;
}
use of org.eclipse.sw360.datahandler.thrift.components.Release in project sw360portal by sw360.
the class SW360Utils method setVendorId.
/**
* Set the vendor id if the vendor object is set
*/
public static void setVendorId(Release release) {
// Save the vendor ID, not its contents
if (release.isSetVendor()) {
Vendor vendor = release.getVendor();
release.setVendorId(vendor.getId());
release.unsetVendor();
}
if (isNullOrEmpty(release.getVendorId())) {
release.unsetVendorId();
}
}
Aggregations