001
014
015 package com.liferay.portlet.documentlibrary.messaging;
016
017 import com.liferay.portal.kernel.log.Log;
018 import com.liferay.portal.kernel.log.LogFactoryUtil;
019 import com.liferay.portal.kernel.messaging.BaseMessageListener;
020 import com.liferay.portal.kernel.messaging.Message;
021 import com.liferay.portal.kernel.messaging.MessageBusUtil;
022 import com.liferay.portal.kernel.repository.model.FileVersion;
023 import com.liferay.portal.util.PropsValues;
024 import com.liferay.portlet.documentlibrary.util.RawMetadataProcessorUtil;
025
026
029 public class RawMetadataProcessorMessageListener extends BaseMessageListener {
030
031 @Override
032 protected void doReceive(Message message) throws Exception {
033 FileVersion fileVersion = (FileVersion)message.getPayload();
034
035 try {
036 RawMetadataProcessorUtil.saveMetadata(fileVersion);
037 }
038 catch (Exception e) {
039 if (_log.isWarnEnabled()) {
040 _log.warn(
041 "Unable to save metadata for file version " +
042 fileVersion.getFileVersionId(),
043 e);
044 }
045 }
046
047 if (PropsValues.DL_FILE_ENTRY_PROCESSORS_TRIGGER_SYNCHRONOUSLY) {
048 MessageBusUtil.sendMessage(
049 message.getResponseDestinationName(), message);
050 }
051 }
052
053 private static Log _log = LogFactoryUtil.getLog(
054 RawMetadataProcessorMessageListener.class);
055
056 }