Search in sources :

Example 31 with Vendor

use of org.eclipse.sw360.datahandler.thrift.vendors.Vendor in project sw360portal by sw360.

the class ComponentPortlet method serveAddVendor.

private void serveAddVendor(ResourceRequest request, ResourceResponse response) throws IOException, PortletException {
    final Vendor vendor = new Vendor();
    ComponentPortletUtils.updateVendorFromRequest(request, vendor);
    try {
        VendorService.Iface client = thriftClients.makeVendorClient();
        String vendorId = client.addVendor(vendor);
        JSONObject jsonObject = JSONFactoryUtil.createJSONObject();
        jsonObject.put("id", vendorId);
        try {
            writeJSON(request, response, jsonObject);
        } catch (IOException e) {
            log.error("Problem rendering VendorId", e);
        }
    } catch (TException e) {
        log.error("Error adding vendor", e);
    }
}
Also used : VendorService(org.eclipse.sw360.datahandler.thrift.vendors.VendorService) TException(org.apache.thrift.TException) JSONObject(com.liferay.portal.kernel.json.JSONObject) Vendor(org.eclipse.sw360.datahandler.thrift.vendors.Vendor) IOException(java.io.IOException)

Example 32 with Vendor

use of org.eclipse.sw360.datahandler.thrift.vendors.Vendor in project sw360portal by sw360.

the class ProjectPortlet method serveNewTableRowLinkedRelease.

@SuppressWarnings("Duplicates")
private void serveNewTableRowLinkedRelease(ResourceRequest request, ResourceResponse response, String[] linkedIds) throws IOException, PortletException {
    final User user = UserCacheHolder.getUserFromRequest(request);
    List<ReleaseLink> linkedReleases = new ArrayList<>();
    try {
        ComponentService.Iface client = thriftClients.makeComponentClient();
        for (Release release : client.getReleasesById(new HashSet<>(Arrays.asList(linkedIds)), user)) {
            final Vendor vendor = release.getVendor();
            final String vendorName = vendor != null ? vendor.getShortname() : "";
            ReleaseLink linkedRelease = new ReleaseLink(release.getId(), vendorName, release.getName(), release.getVersion(), SW360Utils.printFullname(release), !nullToEmptyMap(release.getReleaseIdToRelationship()).isEmpty());
            linkedReleases.add(linkedRelease);
        }
    } catch (TException e) {
        log.error("Error getting releases!", e);
        throw new PortletException("cannot get releases " + Arrays.toString(linkedIds), e);
    }
    request.setAttribute(RELEASE_LIST, linkedReleases);
    include("/html/utils/ajax/linkedReleasesAjax.jsp", request, response, PortletRequest.RESOURCE_PHASE);
}
Also used : WrappedTException(org.eclipse.sw360.datahandler.common.WrappedException.WrappedTException) TException(org.apache.thrift.TException) User(org.eclipse.sw360.datahandler.thrift.users.User) ComponentService(org.eclipse.sw360.datahandler.thrift.components.ComponentService) Vendor(org.eclipse.sw360.datahandler.thrift.vendors.Vendor) ReleaseLink(org.eclipse.sw360.datahandler.thrift.components.ReleaseLink) Release(org.eclipse.sw360.datahandler.thrift.components.Release)

Example 33 with Vendor

use of org.eclipse.sw360.datahandler.thrift.vendors.Vendor in project sw360portal by sw360.

the class VendorPortlet method updateVendor.

@UsedAsLiferayAction
public void updateVendor(ActionRequest request, ActionResponse response) throws PortletException, IOException {
    String id = request.getParameter(VENDOR_ID);
    final User user = UserCacheHolder.getUserFromRequest(request);
    if (id != null) {
        try {
            VendorService.Iface vendorClient = thriftClients.makeVendorClient();
            Vendor vendor = vendorClient.getByID(id);
            ComponentPortletUtils.updateVendorFromRequest(request, vendor);
            RequestStatus requestStatus = vendorClient.updateVendor(vendor, user);
            setSessionMessage(request, requestStatus, "Vendor", "update", vendor.getShortname());
        } catch (TException e) {
            log.error("Error fetching release from backend!", e);
        }
    } else {
        addVendor(request);
    }
}
Also used : VendorService(org.eclipse.sw360.datahandler.thrift.vendors.VendorService) TException(org.apache.thrift.TException) User(org.eclipse.sw360.datahandler.thrift.users.User) Vendor(org.eclipse.sw360.datahandler.thrift.vendors.Vendor) RequestStatus(org.eclipse.sw360.datahandler.thrift.RequestStatus) UsedAsLiferayAction(org.eclipse.sw360.portal.common.UsedAsLiferayAction)

Example 34 with Vendor

use of org.eclipse.sw360.datahandler.thrift.vendors.Vendor in project sw360portal by sw360.

the class VendorPortlet method removeVendor.

@UsedAsLiferayAction
public void removeVendor(ActionRequest request, ActionResponse response) throws IOException, PortletException {
    final RequestStatus requestStatus = ComponentPortletUtils.deleteVendor(request, log);
    setSessionMessage(request, requestStatus, "Vendor", "delete");
    response.setRenderParameter(PAGENAME, PAGENAME_VIEW);
}
Also used : RequestStatus(org.eclipse.sw360.datahandler.thrift.RequestStatus) UsedAsLiferayAction(org.eclipse.sw360.portal.common.UsedAsLiferayAction)

Example 35 with Vendor

use of org.eclipse.sw360.datahandler.thrift.vendors.Vendor in project sw360portal by sw360.

the class VendorPortlet method prepareVendorEdit.

private void prepareVendorEdit(RenderRequest request) throws PortletException {
    String id = request.getParameter(VENDOR_ID);
    if (!isNullOrEmpty(id)) {
        try {
            VendorService.Iface vendorClient = thriftClients.makeVendorClient();
            Vendor vendor = vendorClient.getByID(id);
            request.setAttribute(VENDOR, vendor);
            final ComponentService.Iface componentClient = thriftClients.makeComponentClient();
            final List<Release> releasesFromVendorIds = componentClient.getReleasesFromVendorIds(Sets.newHashSet(id));
            request.setAttribute(RELEASE_LIST, releasesFromVendorIds);
        } catch (TException e) {
            log.error("Problem retrieving vendor");
        }
    } else {
        request.setAttribute(RELEASE_LIST, Collections.emptyList());
    }
}
Also used : VendorService(org.eclipse.sw360.datahandler.thrift.vendors.VendorService) TException(org.apache.thrift.TException) Vendor(org.eclipse.sw360.datahandler.thrift.vendors.Vendor) ComponentService(org.eclipse.sw360.datahandler.thrift.components.ComponentService) Release(org.eclipse.sw360.datahandler.thrift.components.Release)

Aggregations

Vendor (org.eclipse.sw360.datahandler.thrift.vendors.Vendor)37 TException (org.apache.thrift.TException)14 VendorService (org.eclipse.sw360.datahandler.thrift.vendors.VendorService)12 Release (org.eclipse.sw360.datahandler.thrift.components.Release)8 RequestStatus (org.eclipse.sw360.datahandler.thrift.RequestStatus)5 User (org.eclipse.sw360.datahandler.thrift.users.User)5 DatabaseConnector (org.eclipse.sw360.datahandler.couchdb.DatabaseConnector)4 Before (org.junit.Before)4 Test (org.junit.Test)4 IOException (java.io.IOException)3 Component (org.eclipse.sw360.datahandler.thrift.components.Component)3 RequestMapping (org.springframework.web.bind.annotation.RequestMapping)3 JSONObject (com.liferay.portal.kernel.json.JSONObject)2 URI (java.net.URI)2 java.util (java.util)2 ArrayList (java.util.ArrayList)2 Collectors (java.util.stream.Collectors)2 ComponentDatabaseHandler (org.eclipse.sw360.datahandler.db.ComponentDatabaseHandler)2 Attachment (org.eclipse.sw360.datahandler.thrift.attachments.Attachment)2 ComponentService (org.eclipse.sw360.datahandler.thrift.components.ComponentService)2