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 c696d232cbb63b3e1bafd529c0d2910b795d8bd6 Author: Nicolas Malin <nicolas.ma...@nereide.fr> AuthorDate: Fri Jul 15 09:42:32 2022 +0200 Improved: Convert SupplierProductServices.xml mini-lang to groovyDSL (OFBIZ-9350) (OFBIZ-12667) Convert the service getSupplierProductFeatures from mini-lang to groovyDSL Thanks to Tom Gibert for the help --- .../supplier/SupplierProductServices.groovy | 31 ++++++++++++++++++++++ .../product/supplier/SupplierProductServices.xml | 31 ---------------------- applications/product/servicedef/services.xml | 8 +++--- 3 files changed, 35 insertions(+), 35 deletions(-) diff --git a/applications/product/groovyScripts/product/supplier/SupplierProductServices.groovy b/applications/product/groovyScripts/product/supplier/SupplierProductServices.groovy new file mode 100644 index 0000000000..4e7280230d --- /dev/null +++ b/applications/product/groovyScripts/product/supplier/SupplierProductServices.groovy @@ -0,0 +1,31 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package product.supplier + +/** + * Get all supplier information for a product feature + */ +def getSupplierProductFeatures() { + return success([supplierProductFeatures: from('SupplierProductFeature') + .where(partyId: parameters.partyId, + productFeatureId: parameters.productFeatureId) + .cache() + .queryList()]) +} \ No newline at end of file diff --git a/applications/product/minilang/product/supplier/SupplierProductServices.xml b/applications/product/minilang/product/supplier/SupplierProductServices.xml deleted file mode 100644 index 196821a532..0000000000 --- a/applications/product/minilang/product/supplier/SupplierProductServices.xml +++ /dev/null @@ -1,31 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- -Licensed to the Apache Software Foundation (ASF) under one -or more contributor license agreements. See the NOTICE file -distributed with this work for additional information -regarding copyright ownership. The ASF licenses this file -to you under the Apache License, Version 2.0 (the -"License"); you may not use this file except in compliance -with the License. You may obtain a copy of the License at - -http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, -software distributed under the License is distributed on an -"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -KIND, either express or implied. See the License for the -specific language governing permissions and limitations -under the License. ---> - -<simple-methods xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xmlns="http://ofbiz.apache.org/Simple-Method" xsi:schemaLocation="http://ofbiz.apache.org/Simple-Method http://ofbiz.apache.org/dtds/simple-methods.xsd"> - - <simple-method method-name="getSupplierProductFeatures" short-description="Get all supplier information for a product feature" login-required="false"> - <entity-and entity-name="SupplierProductFeature" list="supplierProductFeatures"> - <field-map field-name="partyId" from-field="parameters.partyId"/> - <field-map field-name="productFeatureId" from-field="parameters.productFeatureId"/> - </entity-and> - <field-to-result field="supplierProductFeatures"/> - </simple-method> -</simple-methods> diff --git a/applications/product/servicedef/services.xml b/applications/product/servicedef/services.xml index c4581ce18a..6f4ebde6c6 100644 --- a/applications/product/servicedef/services.xml +++ b/applications/product/servicedef/services.xml @@ -528,13 +528,13 @@ under the License. </required-permissions> <auto-attributes mode="IN" include="pk" optional="false"/> </service> - <service name="getSupplierProductFeatures" engine="simple" - location="component://product/minilang/product/supplier/SupplierProductServices.xml" invoke="getSupplierProductFeatures"> + <service name="getSupplierProductFeatures" engine="groovy" invoke="getSupplierProductFeatures" + location="component://product/groovyScripts/product/supplier/SupplierProductServices.groovy"> <description>Finds a list of SupplierProductFeature entities based on the productFeatureId. If a partyId is given, only product feature information for that supplier party is returned.</description> - <attribute name="productFeatureId" type="String" mode="IN" optional="false"/> + <attribute name="productFeatureId" type="String" mode="IN"/> <attribute name="partyId" type="String" mode="IN" optional="true"/> - <attribute name="supplierProductFeatures" type="java.util.List" mode="OUT" optional="false"/> + <attribute name="supplierProductFeatures" type="java.util.List" mode="OUT"/> </service> <service name="createProductMaint" default-entity-name="ProductMaint" engine="entity-auto" invoke="create" auth="true">