mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-08-07 17:49:17 +00:00
Activity Service - fix site feed to avoid stacktrace if siteId does not exist
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@9484 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
@@ -97,6 +97,8 @@ public class SiteFeedRetrieverWebScript extends DeclarativeWebScript
|
|||||||
format = "atomentry";
|
format = "atomentry";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Map<String, Object> model = new HashMap<String, Object>();
|
||||||
|
|
||||||
// if site is null then either does not exist or is private (and current user is not admin or a member) - hence return 401 (unauthorised)
|
// if site is null then either does not exist or is private (and current user is not admin or a member) - hence return 401 (unauthorised)
|
||||||
SiteInfo siteInfo = siteService.getSite(siteId);
|
SiteInfo siteInfo = siteService.getSite(siteId);
|
||||||
if (siteInfo == null)
|
if (siteInfo == null)
|
||||||
@@ -104,35 +106,37 @@ public class SiteFeedRetrieverWebScript extends DeclarativeWebScript
|
|||||||
String currentUser = AuthenticationUtil.getCurrentUserName();
|
String currentUser = AuthenticationUtil.getCurrentUserName();
|
||||||
status.setCode(Status.STATUS_UNAUTHORIZED);
|
status.setCode(Status.STATUS_UNAUTHORIZED);
|
||||||
logger.warn("Unable to get site feed entries for '" + siteId + "' (site does not exist or is private) - currently logged in as '" + currentUser +"'");
|
logger.warn("Unable to get site feed entries for '" + siteId + "' (site does not exist or is private) - currently logged in as '" + currentUser +"'");
|
||||||
return null;
|
|
||||||
}
|
model.put("feedEntries", null);
|
||||||
|
model.put("siteId", "");
|
||||||
Map<String, Object> model = new HashMap<String, Object>();
|
|
||||||
|
|
||||||
List<String> feedEntries = activityService.getSiteFeedEntries(siteId, format);
|
|
||||||
|
|
||||||
if (format.equals("json"))
|
|
||||||
{
|
|
||||||
model.put("feedEntries", feedEntries);
|
|
||||||
model.put("siteId", siteId);
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
List<Map<String, Object>> activityFeedModels = new ArrayList<Map<String, Object>>();
|
List<String> feedEntries = activityService.getSiteFeedEntries(siteId, format);
|
||||||
try
|
|
||||||
{
|
|
||||||
for (String feedEntry : feedEntries)
|
|
||||||
{
|
|
||||||
activityFeedModels.add(JSONtoFmModel.convertJSONObjectToMap(feedEntry));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
catch (JSONException je)
|
|
||||||
{
|
|
||||||
throw new AlfrescoRuntimeException("Unable to get user feed entries: " + je.getMessage());
|
|
||||||
}
|
|
||||||
|
|
||||||
model.put("feedEntries", activityFeedModels);
|
if (format.equals("json"))
|
||||||
model.put("siteId", siteId);
|
{
|
||||||
|
model.put("feedEntries", feedEntries);
|
||||||
|
model.put("siteId", siteId);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
List<Map<String, Object>> activityFeedModels = new ArrayList<Map<String, Object>>();
|
||||||
|
try
|
||||||
|
{
|
||||||
|
for (String feedEntry : feedEntries)
|
||||||
|
{
|
||||||
|
activityFeedModels.add(JSONtoFmModel.convertJSONObjectToMap(feedEntry));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
catch (JSONException je)
|
||||||
|
{
|
||||||
|
throw new AlfrescoRuntimeException("Unable to get user feed entries: " + je.getMessage());
|
||||||
|
}
|
||||||
|
|
||||||
|
model.put("feedEntries", activityFeedModels);
|
||||||
|
model.put("siteId", siteId);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return model;
|
return model;
|
||||||
|
Reference in New Issue
Block a user