Example usage for com.liferay.portal.kernel.backgroundtask BackgroundTaskThreadLocal getBackgroundTaskId

List of usage examples for com.liferay.portal.kernel.backgroundtask BackgroundTaskThreadLocal getBackgroundTaskId

Introduction

In this page you can find the example usage for com.liferay.portal.kernel.backgroundtask BackgroundTaskThreadLocal getBackgroundTaskId.

Prototype

public static long getBackgroundTaskId() 

Source Link

Usage

From source file:com.liferay.adaptive.media.blogs.web.internal.optimizer.BlogsAdaptiveMediaImageOptimizer.java

License:Open Source License

private void _sendStatusMessage(int count, int total) {
    Message message = new Message();

    message.put(BackgroundTaskConstants.BACKGROUND_TASK_ID, BackgroundTaskThreadLocal.getBackgroundTaskId());

    Class<? extends BlogsAdaptiveMediaImageOptimizer> clazz = getClass();

    message.put(OptimizeImagesBackgroundTaskConstants.CLASS_NAME, clazz.getName());

    message.put(OptimizeImagesBackgroundTaskConstants.COUNT, count);
    message.put(OptimizeImagesBackgroundTaskConstants.TOTAL, total);

    message.put("status", BackgroundTaskConstants.STATUS_IN_PROGRESS);

    _backgroundTaskStatusMessageSender.sendBackgroundTaskStatusMessage(message);
}

From source file:com.liferay.adaptive.media.blogs.web.internal.optimizer.BlogsAMImageOptimizer.java

License:Open Source License

private void _sendStatusMessage(int count, int total) {
    Message message = new Message();

    message.put(BackgroundTaskConstants.BACKGROUND_TASK_ID, BackgroundTaskThreadLocal.getBackgroundTaskId());

    Class<? extends BlogsAMImageOptimizer> clazz = getClass();

    message.put(AMOptimizeImagesBackgroundTaskConstants.CLASS_NAME, clazz.getName());

    message.put(AMOptimizeImagesBackgroundTaskConstants.COUNT, count);
    message.put(AMOptimizeImagesBackgroundTaskConstants.TOTAL, total);

    message.put("status", BackgroundTaskConstants.STATUS_IN_PROGRESS);

    _backgroundTaskStatusMessageSender.sendBackgroundTaskStatusMessage(message);
}

From source file:com.liferay.adaptive.media.document.library.repository.internal.optimizer.DLAdaptiveMediaImageOptimizer.java

License:Open Source License

private void _sendStatusMessage(int count, int total) {
    Message message = new Message();

    message.put(BackgroundTaskConstants.BACKGROUND_TASK_ID, BackgroundTaskThreadLocal.getBackgroundTaskId());

    Class<? extends DLAdaptiveMediaImageOptimizer> clazz = getClass();

    message.put(OptimizeImagesBackgroundTaskConstants.CLASS_NAME, clazz.getName());

    message.put(OptimizeImagesBackgroundTaskConstants.COUNT, count);
    message.put(OptimizeImagesBackgroundTaskConstants.TOTAL, total);

    message.put("status", BackgroundTaskConstants.STATUS_IN_PROGRESS);

    _backgroundTaskStatusMessageSender.sendBackgroundTaskStatusMessage(message);
}

From source file:com.liferay.adaptive.media.document.library.web.internal.optimizer.DLAMImageOptimizer.java

License:Open Source License

private void _sendStatusMessage(int count, int total) {
    Message message = new Message();

    message.put(BackgroundTaskConstants.BACKGROUND_TASK_ID, BackgroundTaskThreadLocal.getBackgroundTaskId());

    Class<? extends DLAMImageOptimizer> clazz = getClass();

    message.put(AMOptimizeImagesBackgroundTaskConstants.CLASS_NAME, clazz.getName());

    message.put(AMOptimizeImagesBackgroundTaskConstants.COUNT, count);
    message.put(AMOptimizeImagesBackgroundTaskConstants.TOTAL, total);

    message.put("status", BackgroundTaskConstants.STATUS_IN_PROGRESS);

    _backgroundTaskStatusMessageSender.sendBackgroundTaskStatusMessage(message);
}

From source file:com.liferay.adaptive.media.web.internal.background.task.OptimizeImagesStatusMessageSenderUtil.java

License:Open Source License

private void _sendStatusMessage(String phase, long companyId, String configurationEntryUuid) {

    Message message = new Message();

    message.put(BackgroundTaskConstants.BACKGROUND_TASK_ID, BackgroundTaskThreadLocal.getBackgroundTaskId());
    message.put(OptimizeImagesBackgroundTaskConstants.COMPANY_ID, companyId);
    message.put(OptimizeImagesBackgroundTaskConstants.PHASE, phase);
    message.put("status", BackgroundTaskConstants.STATUS_IN_PROGRESS);
    message.put(OptimizeImagesBackgroundTaskConstants.CONFIGURATION_ENTRY_UUID, configurationEntryUuid);

    _backgroundTaskStatusMessageSender.sendBackgroundTaskStatusMessage(message);
}

From source file:com.liferay.exportimport.controller.LayoutExportController.java

License:Open Source License

protected File doExport(PortletDataContext portletDataContext) throws Exception {

    Map<String, String[]> parameterMap = portletDataContext.getParameterMap();

    boolean ignoreLastPublishDate = MapUtil.getBoolean(parameterMap,
            PortletDataHandlerKeys.IGNORE_LAST_PUBLISH_DATE);
    boolean permissions = MapUtil.getBoolean(parameterMap, PortletDataHandlerKeys.PERMISSIONS);

    if (_log.isDebugEnabled()) {
        _log.debug("Export permissions " + permissions);
    }//from   w ww  .java 2 s  .com

    long companyId = portletDataContext.getCompanyId();

    long defaultUserId = _userLocalService.getDefaultUserId(companyId);

    ServiceContext serviceContext = ServiceContextThreadLocal.popServiceContext();

    if (serviceContext == null) {
        serviceContext = new ServiceContext();
    }

    serviceContext.setCompanyId(companyId);
    serviceContext.setSignedIn(true);

    if (BackgroundTaskThreadLocal.hasBackgroundTask()) {
        BackgroundTask backgroundTask = _backgroundTaskLocalService
                .getBackgroundTask(BackgroundTaskThreadLocal.getBackgroundTaskId());

        serviceContext.setUserId(backgroundTask.getUserId());
    } else {
        serviceContext.setUserId(defaultUserId);
    }

    serviceContext.setAttribute("exporting", Boolean.TRUE);

    long layoutSetBranchId = MapUtil.getLong(parameterMap, "layoutSetBranchId");

    serviceContext.setAttribute("layoutSetBranchId", layoutSetBranchId);

    ServiceContextThreadLocal.pushServiceContext(serviceContext);

    if (ignoreLastPublishDate) {
        portletDataContext.setEndDate(null);
        portletDataContext.setStartDate(null);
    }

    StopWatch stopWatch = new StopWatch();

    stopWatch.start();

    Document document = SAXReaderUtil.createDocument();

    Element rootElement = document.addElement("root");

    portletDataContext.setExportDataRootElement(rootElement);

    Element headerElement = rootElement.addElement("header");

    headerElement.addAttribute("available-locales",
            StringUtil.merge(LanguageUtil.getAvailableLocales(portletDataContext.getScopeGroupId())));

    headerElement.addAttribute("build-number", String.valueOf(ReleaseInfo.getBuildNumber()));

    headerElement.addAttribute("schema-version", ExportImportConstants.EXPORT_IMPORT_SCHEMA_VERSION);

    headerElement.addAttribute("export-date", Time.getRFC822());

    if (portletDataContext.hasDateRange()) {
        headerElement.addAttribute("start-date", String.valueOf(portletDataContext.getStartDate()));
        headerElement.addAttribute("end-date", String.valueOf(portletDataContext.getEndDate()));
    }

    headerElement.addAttribute("company-id", String.valueOf(portletDataContext.getCompanyId()));
    headerElement.addAttribute("company-group-id", String.valueOf(portletDataContext.getCompanyGroupId()));
    headerElement.addAttribute("group-id", String.valueOf(portletDataContext.getGroupId()));
    headerElement.addAttribute("user-personal-site-group-id",
            String.valueOf(portletDataContext.getUserPersonalSiteGroupId()));
    headerElement.addAttribute("private-layout", String.valueOf(portletDataContext.isPrivateLayout()));

    Group group = _groupLocalService.fetchGroup(portletDataContext.getGroupId());

    String type = "layout-set";

    if (group.isLayoutPrototype()) {
        type = "layout-prototype";

        LayoutPrototype layoutPrototype = _layoutPrototypeLocalService.getLayoutPrototype(group.getClassPK());

        headerElement.addAttribute("type-uuid", layoutPrototype.getUuid());
    } else if (group.isLayoutSetPrototype()) {
        type = "layout-set-prototype";

        LayoutSetPrototype layoutSetPrototype = _layoutSetPrototypeLocalService
                .getLayoutSetPrototype(group.getClassPK());

        headerElement.addAttribute("type-uuid", layoutSetPrototype.getUuid());
    }

    headerElement.addAttribute("type", type);
    portletDataContext.setType(type);

    Element missingReferencesElement = rootElement.addElement("missing-references");

    portletDataContext.setMissingReferencesElement(missingReferencesElement);

    rootElement.addElement("site-portlets");
    rootElement.addElement("site-services");

    // Export the group

    LayoutSet layoutSet = _layoutSetLocalService.getLayoutSet(portletDataContext.getGroupId(),
            portletDataContext.isPrivateLayout());

    String layoutSetPrototypeUuid = layoutSet.getLayoutSetPrototypeUuid();

    boolean layoutSetPrototypeSettings = MapUtil.getBoolean(portletDataContext.getParameterMap(),
            PortletDataHandlerKeys.LAYOUT_SET_PROTOTYPE_SETTINGS);

    if (!group.isStaged() && Validator.isNotNull(layoutSetPrototypeUuid) && layoutSetPrototypeSettings) {

        LayoutSetPrototype layoutSetPrototype = _layoutSetPrototypeLocalService
                .getLayoutSetPrototypeByUuidAndCompanyId(layoutSetPrototypeUuid, companyId);

        headerElement.addAttribute("layout-set-prototype-uuid", layoutSetPrototypeUuid);

        headerElement.addAttribute("layout-set-prototype-name",
                layoutSetPrototype.getName(LocaleUtil.getDefault()));
    }

    StagedGroup stagedGroup = ModelAdapterUtil.adapt(group, Group.class, StagedGroup.class);

    StagedModelDataHandlerUtil.exportStagedModel(portletDataContext, stagedGroup);

    // Export other models

    _portletExportController.exportAssetLinks(portletDataContext);
    _portletExportController.exportExpandoTables(portletDataContext);
    _portletExportController.exportLocks(portletDataContext);

    portletDataContext.addDeletionSystemEventStagedModelTypes(new StagedModelType(StagedAssetLink.class));

    _deletionSystemEventExporter.exportDeletionSystemEvents(portletDataContext);

    if (permissions) {
        _permissionExporter.exportPortletDataPermissions(portletDataContext);
    }

    _exportImportHelper.writeManifestSummary(document, portletDataContext.getManifestSummary());

    if (_log.isInfoEnabled()) {
        _log.info("Exporting layouts takes " + stopWatch.getTime() + " ms");
    }

    portletDataContext.addZipEntry("/manifest.xml", document.formattedString());

    ZipWriter zipWriter = portletDataContext.getZipWriter();

    return zipWriter.getFile();
}

From source file:com.liferay.exportimport.internal.background.task.PortletDataHandlerStatusMessageSenderImpl.java

License:Open Source License

protected void init(Message message, String messageType, ManifestSummary manifestSummary) {

    message.put(BackgroundTaskConstants.BACKGROUND_TASK_ID, BackgroundTaskThreadLocal.getBackgroundTaskId());
    message.put("messageType", messageType);

    Map<String, LongWrapper> modelAdditionCounters = manifestSummary.getModelAdditionCounters();

    message.put("modelAdditionCounters", new HashMap<>(modelAdditionCounters));

    Map<String, LongWrapper> modelDeletionCounters = manifestSummary.getModelDeletionCounters();

    message.put("modelDeletionCounters", new HashMap<>(modelDeletionCounters));
}

From source file:com.liferay.exportimport.internal.lifecycle.NotificationExportImportLifecycleListener.java

License:Open Source License

protected void sendNotification(int status) throws PortalException {
    long backgroundTaskId = BackgroundTaskThreadLocal.getBackgroundTaskId();

    BackgroundTask backgroundTask = _backgroundTaskLocalService.getBackgroundTask(backgroundTaskId);

    Map<String, Serializable> taskContextMap = backgroundTask.getTaskContextMap();

    long exportImportConfigurationId = GetterUtil.getLong(taskContextMap.get("exportImportConfigurationId"));

    _userNotificationEventLocalService.sendUserNotificationEvents(backgroundTask.getUserId(),
            ExportImportPortletKeys.EXPORT_IMPORT, UserNotificationDeliveryConstants.TYPE_WEBSITE,
            getPayload(backgroundTaskId, exportImportConfigurationId, status));
}