diff --git a/remote-api/src/main/java/org/alfresco/rest/api/model/RepositoryInfo.java b/remote-api/src/main/java/org/alfresco/rest/api/model/RepositoryInfo.java
index 60bbadd32a..b177942b84 100644
--- a/remote-api/src/main/java/org/alfresco/rest/api/model/RepositoryInfo.java
+++ b/remote-api/src/main/java/org/alfresco/rest/api/model/RepositoryInfo.java
@@ -284,7 +284,8 @@ public class RepositoryInfo
.setMaxDocs(licenseDescriptor.getMaxDocs())
.setMaxUsers(licenseDescriptor.getMaxUsers())
.setClusterEnabled(licenseDescriptor.isClusterEnabled())
- .setCryptodocEnabled(licenseDescriptor.isCryptodocEnabled());
+ .setCryptodocEnabled(licenseDescriptor.isCryptodocEnabled())
+ .setCustomEmbeddedWorkflowEnabled(licenseDescriptor.isCustomEmbeddedWorkflowEnabled());
}
public Date getIssuedAt()
@@ -343,6 +344,7 @@ public class RepositoryInfo
private Long maxDocs;
private boolean isClusterEnabled;
private boolean isCryptodocEnabled;
+ private boolean isCustomEmbeddedWorkflowEnabled;
public LicenseEntitlement()
{
@@ -392,6 +394,17 @@ public class RepositoryInfo
return this;
}
+ public boolean getIsCustomEmbeddedWorkflowEnabled()
+ {
+ return isCustomEmbeddedWorkflowEnabled;
+ }
+
+ public LicenseEntitlement setCustomEmbeddedWorkflowEnabled(boolean customEmbeddedWorkflowEnabled)
+ {
+ isCustomEmbeddedWorkflowEnabled = customEmbeddedWorkflowEnabled;
+ return this;
+ }
+
@Override
public String toString()
{
@@ -400,6 +413,7 @@ public class RepositoryInfo
.append(", maxDocs=").append(maxDocs)
.append(", isClusterEnabled=").append(isClusterEnabled)
.append(", isCryptodocEnabled=").append(isCryptodocEnabled)
+ .append(", isCustomEmbeddedWorkflowEnabled=").append(isCustomEmbeddedWorkflowEnabled)
.append(']');
return sb.toString();
}
diff --git a/remote-api/src/test/java/org/alfresco/rest/api/tests/DiscoveryApiTest.java b/remote-api/src/test/java/org/alfresco/rest/api/tests/DiscoveryApiTest.java
index f244401350..ba70eea362 100644
--- a/remote-api/src/test/java/org/alfresco/rest/api/tests/DiscoveryApiTest.java
+++ b/remote-api/src/test/java/org/alfresco/rest/api/tests/DiscoveryApiTest.java
@@ -2,7 +2,7 @@
* #%L
* Alfresco Remote API
* %%
- * Copyright (C) 2005 - 2021 Alfresco Software Limited
+ * Copyright (C) 2005 - 2022 Alfresco Software Limited
* %%
* This file is part of the Alfresco software.
* If the software was purchased under a paid Alfresco license, the terms of
@@ -177,6 +177,7 @@ public class DiscoveryApiTest extends AbstractSingleNetworkSiteTest
assertEquals(1000L, entitlements.getMaxDocs().longValue());
assertTrue(entitlements.getIsClusterEnabled());
assertFalse(entitlements.getIsCryptodocEnabled());
+ assertFalse(entitlements.getIsCustomEmbeddedWorkflowEnabled());
// Check status
StatusInfo statusInfo = repositoryInfo.getStatus();
@@ -297,11 +298,13 @@ public class DiscoveryApiTest extends AbstractSingleNetworkSiteTest
assertEquals(1000L, entitlements.getMaxDocs().longValue());
assertTrue(entitlements.getIsClusterEnabled());
assertFalse(entitlements.getIsCryptodocEnabled());
+ assertFalse(entitlements.getIsCustomEmbeddedWorkflowEnabled());
// Override entitlements
when(licenseDescriptorMock.getMaxDocs()).thenReturn(null);
when(licenseDescriptorMock.isClusterEnabled()).thenReturn(false);
when(licenseDescriptorMock.isCryptodocEnabled()).thenReturn(true);
+ when(licenseDescriptorMock.isCustomEmbeddedWorkflowEnabled()).thenReturn(true);
response = get("discovery", null, 200);
@@ -319,6 +322,7 @@ public class DiscoveryApiTest extends AbstractSingleNetworkSiteTest
assertNull(entitlements.getMaxDocs());
assertFalse(entitlements.getIsClusterEnabled());
assertTrue(entitlements.getIsCryptodocEnabled());
+ assertTrue(entitlements.getIsCustomEmbeddedWorkflowEnabled());
}
@Test
diff --git a/repository/src/main/java/org/alfresco/service/license/LicenseDescriptor.java b/repository/src/main/java/org/alfresco/service/license/LicenseDescriptor.java
index f8bd4e4d1b..e60da2e00a 100644
--- a/repository/src/main/java/org/alfresco/service/license/LicenseDescriptor.java
+++ b/repository/src/main/java/org/alfresco/service/license/LicenseDescriptor.java
@@ -139,7 +139,17 @@ public interface LicenseDescriptor
* @return true
if the license allows cryptodoc
*/
boolean isCryptodocEnabled();
-
+
+ /**
+ * Does this license allow custom embedded workflows?
+ *
+ * @return true
if the license allows custom embedded workflows
+ */
+ default boolean isCustomEmbeddedWorkflowEnabled()
+ {
+ return false;
+ }
+
/**
* ATS Transformation Server Expiry Date
* @return the ATS Transformation Server Expiry Date or null