}
else if (ievt instanceof RepositoryItemValidationEventFailedFileType) {
action = FeedRecorder.ITEM_BROKEN_INVALID_CONTENT;
}
final StorageFileItem fileItem = (StorageFileItem) ievt.getItem();
final Map<String, String> data = Maps.newHashMap();
putIfNotNull(data, "validationMessage", ievt.getMessage());
putIfNotNull(data, "repoId", fileItem.getRepositoryItemUid().getRepository().getId());
putIfNotNull(data, "repoName", fileItem.getRepositoryItemUid().getRepository().getName());
putIfNotNull(data, "itemPath", fileItem.getPath());
putIfNotNull(data, "itemRemoteUrl", fileItem.getRemoteUrl());
final String userId = (String) fileItem.getResourceStoreRequest().getRequestContext()
.get(AccessManager.REQUEST_USER);
putIfNotNull(data, "userId", userId);
putIfNotNull(data, "userIp",
(String) fileItem.getResourceStoreRequest().getRequestContext().get(AccessManager.REQUEST_REMOTE_ADDRESS));
putIfNotNull(data, "userUa",
(String) fileItem.getResourceStoreRequest().getRequestContext().get(AccessManager.REQUEST_AGENT));
final FeedEvent fe = new FeedEvent(
FeedRecorder.FAMILY_ITEM,
action,
ievt.getEventDate(),
userId,
"/content/repositories/" + fileItem.getRepositoryId() + fileItem.getPath(), // link to item
data
);
getFeedRecorder().addEvent(fe);
}
}