You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ofbiz.apache.org by nm...@apache.org on 2021/09/14 12:05:36 UTC
[ofbiz-framework] 02/02: Improved: Convert createSimpleTextContent
service from mini-lang to groovy DSL (OFBIZ-11374)
This is an automated email from the ASF dual-hosted git repository.
nmalin pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/ofbiz-framework.git
commit dfb75fbcc73fc90b796680fad7d23e73a6c407cb
Author: Nicolas Malin <ni...@nereide.fr>
AuthorDate: Tue Sep 14 14:04:41 2021 +0200
Improved: Convert createSimpleTextContent service from mini-lang to groovy DSL (OFBIZ-11374)
Thanks to Sourabh Punyani
---
.../groovyScripts/content/ContentServices.groovy | 16 ++++++++++++++++
.../content/minilang/content/ContentServices.xml | 21 ---------------------
applications/content/servicedef/services.xml | 2 +-
3 files changed, 17 insertions(+), 22 deletions(-)
diff --git a/applications/content/groovyScripts/content/ContentServices.groovy b/applications/content/groovyScripts/content/ContentServices.groovy
index c5e7106..7d33c96 100644
--- a/applications/content/groovyScripts/content/ContentServices.groovy
+++ b/applications/content/groovyScripts/content/ContentServices.groovy
@@ -485,3 +485,19 @@ def forceIndexContentKeywords() {
ContentKeywordIndex.forceIndexKeywords(content)
return success()
}
+
+def createSimpleTextContent() {
+ Map serviceResult = run service: 'createDataResource', with: [* : parameters,
+ dataResourceTypeId: 'ELECTRONIC_TEXT',
+ dataTemplateTypeId: 'FTL']
+
+ run service: 'createElectronicText', with: [* : parameters,
+ textData : parameters.text,
+ dataResourceId: serviceResult.dataResourceId]
+
+ serviceResult = run service: 'createContent', with: [* : parameters,
+ contentTypeId : 'DOCUMENT',
+ dataResourceId: serviceResult.dataResourceId]
+
+ return serviceResult
+}
\ No newline at end of file
diff --git a/applications/content/minilang/content/ContentServices.xml b/applications/content/minilang/content/ContentServices.xml
index 6218094..6ae3e1d 100644
--- a/applications/content/minilang/content/ContentServices.xml
+++ b/applications/content/minilang/content/ContentServices.xml
@@ -162,27 +162,6 @@
</if>
</simple-method>
- <simple-method method-name="createSimpleTextContent" short-description="Create Simple Text Content">
- <set-service-fields service-name="createContent" map="parameters" to-map="createSimpleTextContent"/>
- <set value="DOCUMENT" field="createSimpleTextContent.contentTypeId"/>
-
- <set from-field="parameters.text" field="createSimpleText.textData"/>
-
- <set-service-fields service-name="createDataResource" map="parameters" to-map="createSimpleTextDataResource"/>
- <set value="ELECTRONIC_TEXT" field="createSimpleTextDataResource.dataResourceTypeId"/>
- <set value="FTL" field="createSimpleTextDataResource.dataTemplateTypeId"/>
-
- <call-service service-name="createDataResource" in-map-name="createSimpleTextDataResource">
- <result-to-field result-name="dataResourceId" field="createSimpleText.dataResourceId"/>
- <result-to-field result-name="dataResourceId" field="createSimpleTextContent.dataResourceId"/>
- </call-service>
-
- <call-service service-name="createElectronicText" in-map-name="createSimpleText"/>
-
- <call-service service-name="createContent" in-map-name="createSimpleTextContent">
- <result-to-result result-name="contentId"/>
- </call-service>
- </simple-method>
<simple-method method-name="updateSimpleTextContent" short-description="Update Simple Text Content">
<if-not-empty field="parameters.textDataResourceId">
<set from-field="parameters.textDataResourceId" field="updateSimpleText.dataResourceId"/>
diff --git a/applications/content/servicedef/services.xml b/applications/content/servicedef/services.xml
index 994581c..37b44e7 100644
--- a/applications/content/servicedef/services.xml
+++ b/applications/content/servicedef/services.xml
@@ -159,7 +159,7 @@
<attribute name="file" type="String" mode="IN" optional="true"/>
</service>
- <service name="createSimpleTextContent" engine="simple" location="component://content/minilang/content/ContentServices.xml" invoke="createSimpleTextContent">
+ <service name="createSimpleTextContent" engine="groovy" location="component://content/groovyScripts/content/ContentServices.groovy" invoke="createSimpleTextContent">
<permission-service service-name="contentManagerPermission" main-action="CREATE"/>
<auto-attributes mode="IN" entity-name="Content" optional="true"/>
<attribute name="text" type="String" mode="IN" optional="false" allow-html="safe">