Search in sources :

Example 1 with JSONException

use of com.liferay.portal.kernel.json.JSONException in project sw360portal by sw360.

the class ProjectPortlet method serveGetClearingStateSummaries.

private void serveGetClearingStateSummaries(ResourceRequest request, ResourceResponse response) throws IOException, PortletException {
    User user = UserCacheHolder.getUserFromRequest(request);
    List<Project> projects;
    String[] ids = request.getParameterValues(Project._Fields.ID.toString() + "[]");
    if (ids == null || ids.length == 0) {
        JSONArray jsonResponse = createJSONArray();
        writeJSON(request, response, jsonResponse);
    } else {
        try {
            ProjectService.Iface client = thriftClients.makeProjectClient();
            projects = client.getProjectsById(Arrays.asList(ids), user);
        } catch (TException e) {
            log.error("Could not fetch project summary from backend!", e);
            projects = Collections.emptyList();
        }
        projects = getWithFilledClearingStateSummaryIncludingSubprojects(projects, user);
        JSONArray jsonResponse = createJSONArray();
        ThriftJsonSerializer thriftJsonSerializer = new ThriftJsonSerializer();
        for (Project project : projects) {
            try {
                JSONObject row = createJSONObject();
                row.put("id", project.getId());
                row.put("clearing", JsonHelpers.toJson(project.getReleaseClearingStateSummary(), thriftJsonSerializer));
                ProjectClearingState clearingState = project.getClearingState();
                if (clearingState == null) {
                    row.put("clearingstate", "Unknown");
                } else {
                    row.put("clearingstate", ThriftEnumUtils.enumToString(clearingState));
                }
                jsonResponse.put(row);
            } catch (JSONException e) {
                log.error("cannot serialize json", e);
            }
        }
        writeJSON(request, response, jsonResponse);
    }
}
Also used : WrappedTException(org.eclipse.sw360.datahandler.common.WrappedException.WrappedTException) TException(org.apache.thrift.TException) User(org.eclipse.sw360.datahandler.thrift.users.User) JSONFactoryUtil.createJSONArray(com.liferay.portal.kernel.json.JSONFactoryUtil.createJSONArray) JSONArray(com.liferay.portal.kernel.json.JSONArray) JSONException(com.liferay.portal.kernel.json.JSONException) JSONFactoryUtil.createJSONObject(com.liferay.portal.kernel.json.JSONFactoryUtil.createJSONObject) JSONObject(com.liferay.portal.kernel.json.JSONObject)

Example 2 with JSONException

use of com.liferay.portal.kernel.json.JSONException in project liferay-docs by liferay.

the class SampleContentPortlet method addUserGroups.

public void addUserGroups(ActionRequest request, ActionResponse response) {
    long companyId = PortalUtil.getDefaultCompanyId();
    Role adminRole = null;
    try {
        adminRole = _roleLocalService.getRole(companyId, "Administrator");
    } catch (PortalException pe) {
        _log.error(pe);
        return;
    }
    List<User> adminUsers = _userLocalService.getRoleUsers(adminRole.getRoleId());
    long adminUserId = adminUsers.get(0).getUserId();
    UploadPortletRequest uploadRequest = PortalUtil.getUploadPortletRequest(request);
    String fileName = "userGroupsFile";
    File file = uploadRequest.getFile(fileName);
    StringBuilder out = new StringBuilder();
    BufferedReader br = null;
    try {
        br = new BufferedReader(new FileReader(file));
        while (br.ready()) {
            out.append(br.readLine());
        }
        br.close();
    } catch (IOException fnfe) {
        _log.error(fnfe);
        return;
    }
    String jsonString = out.toString();
    JSONObject jsonObject = null;
    try {
        jsonObject = JSONFactoryUtil.createJSONObject(jsonString);
    } catch (JSONException je) {
        _log.error(je);
        return;
    }
    JSONArray userGroups = jsonObject.getJSONArray("User Groups");
    for (int i = 0; i < userGroups.length(); i++) {
        String name = userGroups.getJSONObject(i).getString("Name");
        String description = userGroups.getJSONObject(i).getString("Description");
        try {
            _userGroupLocalService.addUserGroup(adminUserId, companyId, name, description, null);
        } catch (PortalException pe) {
            _log.error(pe);
            return;
        }
    }
}
Also used : User(com.liferay.portal.kernel.model.User) JSONArray(com.liferay.portal.kernel.json.JSONArray) JSONException(com.liferay.portal.kernel.json.JSONException) IOException(java.io.IOException) UploadPortletRequest(com.liferay.portal.kernel.upload.UploadPortletRequest) Role(com.liferay.portal.kernel.model.Role) JSONObject(com.liferay.portal.kernel.json.JSONObject) BufferedReader(java.io.BufferedReader) FileReader(java.io.FileReader) PortalException(com.liferay.portal.kernel.exception.PortalException) File(java.io.File)

Example 3 with JSONException

use of com.liferay.portal.kernel.json.JSONException in project liferay-docs by liferay.

the class SampleContentPortlet method addOrganizations.

public void addOrganizations(ActionRequest request, ActionResponse response) {
    long companyId = PortalUtil.getDefaultCompanyId();
    Role adminRole = null;
    try {
        adminRole = _roleLocalService.getRole(companyId, "Administrator");
    } catch (PortalException pe) {
        _log.error(pe);
        return;
    }
    List<User> adminUsers = _userLocalService.getRoleUsers(adminRole.getRoleId());
    long adminUserId = adminUsers.get(0).getUserId();
    UploadPortletRequest uploadRequest = PortalUtil.getUploadPortletRequest(request);
    String fileName = "organizationsFile";
    File file = uploadRequest.getFile(fileName);
    StringBuilder out = new StringBuilder();
    BufferedReader br = null;
    try {
        br = new BufferedReader(new FileReader(file));
        while (br.ready()) {
            out.append(br.readLine());
        }
        br.close();
    } catch (IOException fnfe) {
        _log.error(fnfe);
        return;
    }
    String jsonString = out.toString();
    JSONObject jsonObject = null;
    try {
        jsonObject = JSONFactoryUtil.createJSONObject(jsonString);
    } catch (JSONException je) {
        _log.error(je);
        return;
    }
    JSONArray orgs = jsonObject.getJSONArray("Organizations");
    Queue<JSONOrgWrapper> queue = new LinkedList<JSONOrgWrapper>();
    for (int i = 0; i < orgs.length(); i++) {
        JSONOrgWrapper jsonOrgWrapper = new JSONOrgWrapper(orgs.getJSONObject(i), StringPool.BLANK);
        queue.add(jsonOrgWrapper);
    }
    while (!queue.isEmpty()) {
        JSONOrgWrapper jsonOrgWrapper = queue.remove();
        String orgName = jsonOrgWrapper.getJSONObject().getString("Name");
        JSONArray subOrgs = jsonOrgWrapper.getJSONObject().getJSONArray("Organizations");
        String parentOrgName = jsonOrgWrapper.getParentOrgName();
        if (StringPool.BLANK.equals(parentOrgName)) {
            try {
                _organizationLocalService.addOrganization(adminUserId, 0L, orgName, true);
            } catch (PortalException pe) {
                _log.error(pe);
                return;
            }
        } else {
            long parentOrgId = _organizationLocalService.getOrganizationId(companyId, parentOrgName);
            try {
                _organizationLocalService.addOrganization(adminUserId, parentOrgId, orgName, true);
            } catch (PortalException pe) {
                _log.error(pe);
                return;
            }
        }
        if (subOrgs == null) {
            continue;
        }
        for (int i = 0; i < subOrgs.length(); i++) {
            JSONOrgWrapper jsonSubOrgWrapper = new JSONOrgWrapper(subOrgs.getJSONObject(i), orgName);
            queue.add(jsonSubOrgWrapper);
        }
    }
}
Also used : User(com.liferay.portal.kernel.model.User) JSONArray(com.liferay.portal.kernel.json.JSONArray) JSONException(com.liferay.portal.kernel.json.JSONException) IOException(java.io.IOException) UploadPortletRequest(com.liferay.portal.kernel.upload.UploadPortletRequest) LinkedList(java.util.LinkedList) Role(com.liferay.portal.kernel.model.Role) JSONObject(com.liferay.portal.kernel.json.JSONObject) BufferedReader(java.io.BufferedReader) FileReader(java.io.FileReader) PortalException(com.liferay.portal.kernel.exception.PortalException) File(java.io.File)

Example 4 with JSONException

use of com.liferay.portal.kernel.json.JSONException in project liferay-docs by liferay.

the class SampleContentPortlet method addUsers.

public void addUsers(ActionRequest request, ActionResponse response) {
    long companyId = PortalUtil.getDefaultCompanyId();
    Role adminRole = null;
    try {
        adminRole = _roleLocalService.getRole(companyId, "Administrator");
    } catch (PortalException pe) {
        _log.error(pe);
        return;
    }
    List<User> adminUsers = _userLocalService.getRoleUsers(adminRole.getRoleId());
    long adminUserId = adminUsers.get(0).getUserId();
    UploadPortletRequest uploadRequest = PortalUtil.getUploadPortletRequest(request);
    String fileName = "usersFile";
    File file = uploadRequest.getFile(fileName);
    StringBuilder out = new StringBuilder();
    BufferedReader br = null;
    try {
        br = new BufferedReader(new FileReader(file));
        while (br.ready()) {
            out.append(br.readLine());
        }
        br.close();
    } catch (IOException fnfe) {
        _log.error(fnfe);
        return;
    }
    String jsonString = out.toString();
    JSONObject jsonObject = null;
    try {
        jsonObject = JSONFactoryUtil.createJSONObject(jsonString);
    } catch (JSONException je) {
        _log.error(je);
        return;
    }
    JSONArray users = jsonObject.getJSONArray("Users");
    for (int i = 0; i < users.length(); i++) {
        String screenName = users.getJSONObject(i).getString("Screen Name");
        String firstName = users.getJSONObject(i).getString("First Name");
        String lastName = users.getJSONObject(i).getString("Last Name");
        boolean male = users.getJSONObject(i).getBoolean("Male");
        String jobTitle = users.getJSONObject(i).getString("Job Title");
        String emailAddress = users.getJSONObject(i).getString("Email Address");
        JSONArray userGroups = users.getJSONObject(i).getJSONArray("User Groups");
        int userGroupsLength = userGroups.length();
        long[] userGroupIds = new long[userGroupsLength];
        for (int j = 0; j < userGroupsLength; j++) {
            String userGroupName = userGroups.getString(j);
            UserGroup userGroup = null;
            try {
                userGroup = _userGroupLocalService.getUserGroup(companyId, userGroupName);
            } catch (PortalException pe) {
                _log.error(pe);
                return;
            }
            long userGroupId = userGroup.getUserGroupId();
            userGroupIds[j] = userGroupId;
        }
        JSONArray organizations = users.getJSONObject(i).getJSONArray("Organizations");
        int organizationsLength = organizations.length();
        long[] organizationIds = new long[organizationsLength];
        for (int j = 0; j < organizationsLength; j++) {
            String organizationName = organizations.getString(j);
            Organization organization = null;
            try {
                organization = _organizationLocalService.getOrganization(companyId, organizationName);
            } catch (PortalException pe) {
                _log.error(pe);
                return;
            }
            long organizationId = organization.getOrganizationId();
            organizationIds[j] = organizationId;
        }
        try {
            _userLocalService.addUser(adminUserId, companyId, false, "liferay", "liferay", false, screenName, emailAddress, 0L, StringPool.BLANK, LocaleUtil.getDefault(), firstName, StringPool.BLANK, lastName, 0L, 0L, male, Calendar.JANUARY, 1, 1970, jobTitle, new long[0], organizationIds, new long[0], userGroupIds, false, null);
        } catch (PortalException pe) {
            _log.error(pe);
            return;
        }
    }
}
Also used : User(com.liferay.portal.kernel.model.User) Organization(com.liferay.portal.kernel.model.Organization) JSONArray(com.liferay.portal.kernel.json.JSONArray) JSONException(com.liferay.portal.kernel.json.JSONException) IOException(java.io.IOException) UploadPortletRequest(com.liferay.portal.kernel.upload.UploadPortletRequest) UserGroup(com.liferay.portal.kernel.model.UserGroup) Role(com.liferay.portal.kernel.model.Role) JSONObject(com.liferay.portal.kernel.json.JSONObject) BufferedReader(java.io.BufferedReader) FileReader(java.io.FileReader) PortalException(com.liferay.portal.kernel.exception.PortalException) File(java.io.File)

Aggregations

JSONArray (com.liferay.portal.kernel.json.JSONArray)4 JSONException (com.liferay.portal.kernel.json.JSONException)4 JSONObject (com.liferay.portal.kernel.json.JSONObject)4 PortalException (com.liferay.portal.kernel.exception.PortalException)3 Role (com.liferay.portal.kernel.model.Role)3 User (com.liferay.portal.kernel.model.User)3 UploadPortletRequest (com.liferay.portal.kernel.upload.UploadPortletRequest)3 BufferedReader (java.io.BufferedReader)3 File (java.io.File)3 FileReader (java.io.FileReader)3 IOException (java.io.IOException)3 JSONFactoryUtil.createJSONArray (com.liferay.portal.kernel.json.JSONFactoryUtil.createJSONArray)1 JSONFactoryUtil.createJSONObject (com.liferay.portal.kernel.json.JSONFactoryUtil.createJSONObject)1 Organization (com.liferay.portal.kernel.model.Organization)1 UserGroup (com.liferay.portal.kernel.model.UserGroup)1 LinkedList (java.util.LinkedList)1 TException (org.apache.thrift.TException)1 WrappedTException (org.eclipse.sw360.datahandler.common.WrappedException.WrappedTException)1 User (org.eclipse.sw360.datahandler.thrift.users.User)1