use of org.eclipse.sw360.datahandler.thrift.RequestStatus in project sw360portal by sw360.
the class ScheduleAdminPortlet method unscheduleAllServices.
@UsedAsLiferayAction
public void unscheduleAllServices(ActionRequest request, ActionResponse response) throws PortletException, IOException {
try {
User user = UserCacheHolder.getUserFromRequest(request);
RequestStatus requestStatus = new ThriftClients().makeScheduleClient().unscheduleAllServices(user);
setSessionMessage(request, requestStatus, "Every task", "unschedule");
} catch (TException e) {
log.error(e);
}
}
use of org.eclipse.sw360.datahandler.thrift.RequestStatus in project sw360portal by sw360.
the class VendorPortlet method removeVendor.
private void removeVendor(PortletRequest request, ResourceResponse response) throws IOException {
final RequestStatus requestStatus = ComponentPortletUtils.deleteVendor(request, log);
serveRequestStatus(request, response, requestStatus, "Problem removing vendor", log);
}
use of org.eclipse.sw360.datahandler.thrift.RequestStatus in project sw360portal by sw360.
the class ComponentPortletUtils method subscribeRelease.
public static RequestStatus subscribeRelease(ResourceRequest request, Logger log) {
String id = request.getParameter(PortalConstants.RELEASE_ID);
if (id != null) {
try {
ComponentService.Iface client = new ThriftClients().makeComponentClient();
User user = UserCacheHolder.getUserFromRequest(request);
return client.subscribeRelease(id, user);
} catch (TException e) {
log.error("Could not subscribe to release", e);
}
}
return RequestStatus.FAILURE;
}
use of org.eclipse.sw360.datahandler.thrift.RequestStatus in project sw360portal by sw360.
the class ComponentPortletUtils method deleteComponent.
public static RequestStatus deleteComponent(PortletRequest request, Logger log) {
String id = request.getParameter(PortalConstants.COMPONENT_ID);
if (id != null) {
try {
String deleteCommentEncoded = request.getParameter(PortalConstants.MODERATION_REQUEST_COMMENT);
User user = UserCacheHolder.getUserFromRequest(request);
if (deleteCommentEncoded != null) {
String deleteComment = new String(Base64.getDecoder().decode(deleteCommentEncoded));
user.setCommentMadeDuringModerationRequest(deleteComment);
}
ComponentService.Iface client = new ThriftClients().makeComponentClient();
return client.deleteComponent(id, user);
} catch (TException e) {
log.error("Could not delete component from DB", e);
}
}
return RequestStatus.FAILURE;
}
use of org.eclipse.sw360.datahandler.thrift.RequestStatus in project sw360portal by sw360.
the class ComponentPortletUtils method deleteVendor.
public static RequestStatus deleteVendor(PortletRequest request, Logger log) {
String vendorId = request.getParameter(PortalConstants.VENDOR_ID);
if (vendorId != null) {
try {
User user = UserCacheHolder.getUserFromRequest(request);
ThriftClients thriftClients = new ThriftClients();
ComponentService.Iface componentClient = thriftClients.makeComponentClient();
VendorService.Iface client = thriftClients.makeVendorClient();
RequestStatus global_status = RequestStatus.SUCCESS;
List<Release> releases = componentClient.getReleasesFromVendorId(vendorId, user);
boolean mayWriteToAllReleases = true;
for (Release release : releases) {
Map<RequestedAction, Boolean> permissions = release.getPermissions();
mayWriteToAllReleases &= permissions.get(RequestedAction.WRITE);
}
if (!mayWriteToAllReleases) {
return RequestStatus.FAILURE;
}
for (Release release : releases) {
release.unsetVendorId();
RequestStatus local_status = componentClient.updateRelease(release, user);
if (local_status != RequestStatus.SUCCESS)
global_status = local_status;
}
if (global_status == RequestStatus.SUCCESS) {
return client.deleteVendor(vendorId, user);
} else {
return global_status;
}
} catch (TException e) {
log.error("Could not delete release from DB", e);
}
}
return RequestStatus.FAILURE;
}
Aggregations