List of usage examples for com.liferay.portal.kernel.service ServiceContext getWorkflowAction
public int getWorkflowAction()
From source file:com.liferay.bookmarks.trash.test.BookmarksEntryTrashHandlerTest.java
License:Open Source License
@Override public BaseModel<?> updateBaseModel(long primaryKey, ServiceContext serviceContext) throws Exception { BookmarksEntry entry = BookmarksEntryLocalServiceUtil.getEntry(primaryKey); if (serviceContext.getWorkflowAction() == WorkflowConstants.ACTION_SAVE_DRAFT) { entry = BookmarksEntryLocalServiceUtil.updateStatus(TestPropsValues.getUserId(), entry, WorkflowConstants.STATUS_DRAFT); }/* ww w . j a va 2 s. com*/ return entry; }
From source file:com.liferay.bookmarks.trash.test.BookmarksFolderTrashHandlerTest.java
License:Open Source License
@Override public BaseModel<?> updateBaseModel(long primaryKey, ServiceContext serviceContext) throws Exception { BookmarksFolder folder = BookmarksFolderLocalServiceUtil.getFolder(primaryKey); if (serviceContext.getWorkflowAction() == WorkflowConstants.ACTION_SAVE_DRAFT) { folder = BookmarksFolderLocalServiceUtil.updateStatus(TestPropsValues.getUserId(), folder, WorkflowConstants.STATUS_DRAFT); }/*from ww w .j a v a 2 s.com*/ return folder; }
From source file:com.liferay.document.library.internal.repository.capabilities.LiferayWorkflowCapability.java
License:Open Source License
@Override public void checkInFileEntry(long userId, FileEntry fileEntry, boolean majorVersion, ServiceContext serviceContext) throws PortalException { boolean keepFileVersionLabel = _dlFileEntryServiceAdapter.isKeepFileVersionLabel(fileEntry.getFileEntryId(), majorVersion, serviceContext); if ((serviceContext.getWorkflowAction() == WorkflowConstants.ACTION_PUBLISH) && !keepFileVersionLabel) { DLFileVersion latestDLFileVersion = _dlFileVersionServiceAdapter .getLatestFileVersion(fileEntry.getFileEntryId(), false); DLUtil.startWorkflowInstance(userId, latestDLFileVersion, DLSyncConstants.EVENT_UPDATE, serviceContext); }/* w w w . j a v a 2s . c om*/ }
From source file:com.liferay.document.library.internal.repository.capabilities.LiferayWorkflowCapability.java
License:Open Source License
private DLFileVersion _getWorkflowDLFileVersion(long fileEntryId, ServiceContext serviceContext) throws PortalException { DLFileEntry dlFileEntry = _dlFileEntryServiceAdapter.getDLFileEntry(fileEntryId); if (dlFileEntry.isCheckedOut()) { return null; }/* w w w .j a va 2s . c om*/ DLFileVersion dlFileVersion = _dlFileVersionServiceAdapter.getLatestFileVersion(fileEntryId, true); if (dlFileVersion.isApproved() || (serviceContext.getWorkflowAction() == WorkflowConstants.ACTION_PUBLISH)) { return dlFileVersion; } return null; }
From source file:com.liferay.document.library.trash.test.DLFileShortcutTrashHandlerTest.java
License:Open Source License
@Override public BaseModel<?> updateBaseModel(long primaryKey, ServiceContext serviceContext) throws Exception { DLFileShortcut dlFileShortcut = DLFileShortcutLocalServiceUtil.getFileShortcut(primaryKey); if (serviceContext.getWorkflowAction() == WorkflowConstants.ACTION_SAVE_DRAFT) { DLFileShortcutLocalServiceUtil.updateStatus(TestPropsValues.getUserId(), primaryKey, WorkflowConstants.STATUS_DRAFT, serviceContext); }/* w ww. j a v a2 s . c o m*/ return dlFileShortcut; }
From source file:com.liferay.document.library.trash.test.DLFolderTrashHandlerTest.java
License:Open Source License
@Override public BaseModel<?> updateBaseModel(long primaryKey, ServiceContext serviceContext) throws Exception { DLFolder dlFolder = DLFolderLocalServiceUtil.getFolder(primaryKey); if (serviceContext.getWorkflowAction() == WorkflowConstants.ACTION_SAVE_DRAFT) { dlFolder = DLFolderLocalServiceUtil.updateStatus(TestPropsValues.getUserId(), primaryKey, WorkflowConstants.STATUS_DRAFT, null, serviceContext); }//from w w w . j a v a2 s .c o m return dlFolder; }
From source file:com.liferay.dynamic.data.lists.service.impl.DDLRecordLocalServiceImpl.java
License:Open Source License
/** * Updates the record, replacing its display index and values. * * @param userId the primary key of the user updating the record * @param recordId the primary key of the record * @param majorVersion whether this update is a major change. A major * change increments the record's major version number. * @param displayIndex the index position in which the record is displayed * in the spreadsheet view/*from w w w . jav a 2 s. c o m*/ * @param ddmFormValues the record values. See <code>DDMFormValues</code> * in the <code>dynamic.data.mapping.api</code> module. * @param serviceContext the service context to be applied. This can set * the record modified date. * @return the record * @throws PortalException if a portal exception occurred */ @Indexable(type = IndexableType.REINDEX) @Override public DDLRecord updateRecord(long userId, long recordId, boolean majorVersion, int displayIndex, DDMFormValues ddmFormValues, ServiceContext serviceContext) throws PortalException { // Record User user = userLocalService.getUser(userId); DDLRecord record = ddlRecordPersistence.findByPrimaryKey(recordId); record.setModifiedDate(serviceContext.getModifiedDate(null)); ddlRecordPersistence.update(record); // Record version DDLRecordVersion recordVersion = record.getLatestRecordVersion(); if (recordVersion.isApproved()) { DDLRecordSet recordSet = record.getRecordSet(); long ddmStorageId = storageEngine.create(recordSet.getCompanyId(), recordSet.getDDMStructureId(), ddmFormValues, serviceContext); String version = getNextVersion(recordVersion.getVersion(), majorVersion, serviceContext.getWorkflowAction()); recordVersion = addRecordVersion(user, record, ddmStorageId, version, displayIndex, WorkflowConstants.STATUS_DRAFT); } else { storageEngine.update(recordVersion.getDDMStorageId(), ddmFormValues, serviceContext); String version = recordVersion.getVersion(); updateRecordVersion(user, recordVersion, version, displayIndex, recordVersion.getStatus(), serviceContext); } if (isKeepRecordVersionLabel(record.getRecordVersion(), recordVersion, serviceContext)) { ddlRecordVersionPersistence.remove(recordVersion); // Dynamic data mapping storage storageEngine.deleteByClass(recordVersion.getDDMStorageId()); return record; } // Workflow WorkflowHandlerRegistryUtil.startWorkflowInstance(user.getCompanyId(), record.getGroupId(), userId, DDLRecord.class.getName(), recordVersion.getRecordVersionId(), recordVersion, serviceContext); return record; }
From source file:com.liferay.dynamic.data.lists.service.impl.DDLRecordLocalServiceImpl.java
License:Open Source License
/** * See <code>DLFileVersionPolicyImpl#isKeepFileVersionLabel</code> in the * <code>com.liferay.document.library.service</code> module. *///from w w w . j av a 2 s . c o m protected boolean isKeepRecordVersionLabel(DDLRecordVersion lastRecordVersion, DDLRecordVersion latestRecordVersion, ServiceContext serviceContext) throws PortalException { if (Objects.equals(serviceContext.getCommand(), Constants.REVERT)) { return false; } if (serviceContext.getWorkflowAction() == WorkflowConstants.ACTION_SAVE_DRAFT) { return false; } if (Objects.equals(lastRecordVersion.getVersion(), latestRecordVersion.getVersion())) { return false; } DDMFormValues lastDDMFormValues = storageEngine.getDDMFormValues(lastRecordVersion.getDDMStorageId()); DDMFormValues latestDDMFormValues = storageEngine.getDDMFormValues(latestRecordVersion.getDDMStorageId()); if (!lastDDMFormValues.equals(latestDDMFormValues)) { return false; } ExpandoBridge lastExpandoBridge = lastRecordVersion.getExpandoBridge(); ExpandoBridge latestExpandoBridge = latestRecordVersion.getExpandoBridge(); Map<String, Serializable> lastAttributes = lastExpandoBridge.getAttributes(); Map<String, Serializable> latestAttributes = latestExpandoBridge.getAttributes(); if (!lastAttributes.equals(latestAttributes)) { return false; } return true; }
From source file:com.liferay.dynamic.data.mapping.service.impl.DDMFormInstanceRecordLocalServiceImpl.java
License:Open Source License
@Indexable(type = IndexableType.REINDEX) @Override/*from www. java 2s. c om*/ public DDMFormInstanceRecord addFormInstanceRecord(long userId, long groupId, long ddmFormInstanceId, DDMFormValues ddmFormValues, ServiceContext serviceContext) throws PortalException { User user = userLocalService.getUser(userId); DDMFormInstance ddmFormInstance = ddmFormInstancePersistence.findByPrimaryKey(ddmFormInstanceId); validate(groupId, ddmFormInstance); long recordId = counterLocalService.increment(); DDMFormInstanceRecord ddmFormInstanceRecord = ddmFormInstanceRecordPersistence.create(recordId); ddmFormInstanceRecord.setUuid(serviceContext.getUuid()); ddmFormInstanceRecord.setGroupId(groupId); ddmFormInstanceRecord.setCompanyId(user.getCompanyId()); ddmFormInstanceRecord.setUserId(user.getUserId()); ddmFormInstanceRecord.setUserName(user.getFullName()); ddmFormInstanceRecord.setVersionUserId(user.getUserId()); ddmFormInstanceRecord.setVersionUserName(user.getFullName()); StorageEngine storageEngine = storageEngineAccessor.getStorageEngine(); long ddmStorageId = storageEngine.create(ddmFormInstance.getCompanyId(), ddmFormInstance.getStructureId(), ddmFormValues, serviceContext); ddmFormInstanceRecord.setStorageId(ddmStorageId); ddmFormInstanceRecord.setFormInstanceId(ddmFormInstanceId); ddmFormInstanceRecord.setFormInstanceVersion(ddmFormInstance.getVersion()); ddmFormInstanceRecord.setVersion(_VERSION_DEFAULT); ddmFormInstanceRecordPersistence.update(ddmFormInstanceRecord); int status = GetterUtil.getInteger(serviceContext.getAttribute("status"), WorkflowConstants.STATUS_DRAFT); DDMFormInstanceRecordVersion ddmFormInstanceRecordVersion = addFormInstanceRecordVersion(user, ddmFormInstanceRecord, ddmStorageId, status, _VERSION_DEFAULT); // Asset Locale locale = serviceContext.getLocale(); updateAsset(userId, ddmFormInstanceRecord, ddmFormInstanceRecordVersion, serviceContext.getAssetCategoryIds(), serviceContext.getAssetTagNames(), locale, serviceContext.getAssetPriority()); if (serviceContext.getWorkflowAction() == WorkflowConstants.ACTION_PUBLISH) { WorkflowHandlerRegistryUtil.startWorkflowInstance(user.getCompanyId(), groupId, userId, DDMFormInstanceRecord.class.getName(), ddmFormInstanceRecordVersion.getFormInstanceRecordVersionId(), ddmFormInstanceRecordVersion, serviceContext); } return ddmFormInstanceRecord; }
From source file:com.liferay.dynamic.data.mapping.service.impl.DDMFormInstanceRecordLocalServiceImpl.java
License:Open Source License
@Indexable(type = IndexableType.REINDEX) @Override/*from www . j a v a 2 s . c om*/ public DDMFormInstanceRecord updateFormInstanceRecord(long userId, long ddmFormInstanceRecordId, boolean majorVersion, DDMFormValues ddmFormValues, ServiceContext serviceContext) throws PortalException { User user = userLocalService.getUser(userId); DDMFormInstanceRecord ddmFormInstanceRecord = ddmFormInstanceRecordPersistence .findByPrimaryKey(ddmFormInstanceRecordId); ddmFormInstanceRecord.setModifiedDate(serviceContext.getModifiedDate(null)); ddmFormInstanceRecord = ddmFormInstanceRecordPersistence.update(ddmFormInstanceRecord); StorageEngine storageEngine = storageEngineAccessor.getStorageEngine(); DDMFormInstanceRecordVersion ddmFormInstanceRecordVersion = ddmFormInstanceRecord .getLatestFormInstanceRecordVersion(); if (ddmFormInstanceRecordVersion.isApproved()) { DDMFormInstance ddmFormInstance = ddmFormInstanceRecord.getFormInstance(); long ddmStorageId = storageEngine.create(ddmFormInstance.getCompanyId(), ddmFormInstance.getStructureId(), ddmFormValues, serviceContext); String version = getNextVersion(ddmFormInstanceRecordVersion.getVersion(), majorVersion, serviceContext.getWorkflowAction()); ddmFormInstanceRecordVersion = addFormInstanceRecordVersion(user, ddmFormInstanceRecord, ddmStorageId, WorkflowConstants.STATUS_DRAFT, version); } else { storageEngine.update(ddmFormInstanceRecordVersion.getStorageId(), ddmFormValues, serviceContext); String version = ddmFormInstanceRecordVersion.getVersion(); updateFormInstanceRecordVersion(user, ddmFormInstanceRecordVersion, ddmFormInstanceRecordVersion.getStatus(), version, serviceContext); } if (isKeepFormInstanceRecordVersionLabel(ddmFormInstanceRecord.getFormInstanceRecordVersion(), ddmFormInstanceRecordVersion, serviceContext)) { ddmFormInstanceRecordVersionPersistence.remove(ddmFormInstanceRecordVersion); storageEngine.deleteByClass(ddmFormInstanceRecordVersion.getStorageId()); return ddmFormInstanceRecord; } if (serviceContext.getWorkflowAction() == WorkflowConstants.ACTION_PUBLISH) { WorkflowHandlerRegistryUtil.startWorkflowInstance(user.getCompanyId(), ddmFormInstanceRecord.getGroupId(), userId, DDMFormInstanceRecord.class.getName(), ddmFormInstanceRecordVersion.getFormInstanceRecordVersionId(), ddmFormInstanceRecordVersion, serviceContext); } return ddmFormInstanceRecord; }