blob: 52c623d6f7189147b8fd4ed91863a6dff70c2cec [file] [log] [blame]
<!--
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.
-->
<services xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/services.xsd">
<description>Content Component Content Services</description>
<vendor>OFBiz</vendor>
<!-- create content services -->
<service name="createContent" engine="simple" auth="true"
location="component://content/script/org/ofbiz/content/content/ContentServices.xml" invoke="createContent">
<description>Create a Content</description>
<permission-service service-name="genericContentPermission" main-action="CREATE"/>
<auto-attributes entity-name="Content" include="nonpk" mode="IN" optional="true"/>
<!-- TODO: the following fields are deprecated; but will not be removed until all services and callers are updated -->
<attribute mode="IN" name="targetOperationList" optional="true" type="List"/>
<attribute mode="IN" name="targetOperationString" optional="true" type="String"/>
<attribute mode="IN" name="contentPurposeList" optional="true" type="List"/>
<attribute mode="IN" name="contentPurposeString" optional="true" type="String"/>
<attribute mode="IN" name="skipPermissionCheck" optional="true" type="String"/>
<attribute mode="IN" name="displayFailCond" optional="true" type="Boolean"/>
<attribute mode="INOUT" name="roleTypeList" optional="true" type="List"/>
<!-- end of deprecated fields -->
<attribute name="contentPurposeTypeId" type="String" mode="IN" optional="true"/>
<attribute name="contentAssocTypeId" type="String" mode="IN" optional="true"/>
<attribute name="contentIdFrom" type="String" mode="IN" optional="true"/>
<attribute name="contentIdTo" type="String" mode="IN" optional="true"/>
<attribute name="roleTypeId" type="String" mode="IN" optional="true"/>
<attribute name="partyId" type="String" mode="IN" optional="true"/>
<attribute name="mapKey" type="String" mode="IN" optional="true"/>
<attribute name="contentId" type="String" mode="INOUT" optional="true"/>
<attribute name="fromDate" type="Timestamp" mode="IN" optional="true"/>
<attribute name="sequenceNum" type="Long" mode="IN" optional="true"/>
<override name="contentTypeId" default-value="DOCUMENT"/>
<override name="contentName" allow-html="any"/>
<override name="description" allow-html="any"/>
</service>
<service name="createTextAndUploadedContent" engine="simple" auth="true"
location="component://content/script/org/ofbiz/content/content/ContentServices.xml" invoke="createTextAndUploadedContent">
<description>Creates text content and optional uploaded sub-content</description>
<implements service="createTextContent"/>
<implements service="uploadFileInterface" optional="true"/>
<implements service="createContentFromUploadedFile" optional="true"/>
</service>
<service name="createTextContent" engine="group" auth="true">
<description>Creates a Text Document DataResource and Content Records</description>
<!-- uses createContent internally; additonal permission(s) not necessary -->
<group>
<invoke name="createDataText" result-to-context="true"/>
<invoke name="createContent" result-to-context="true"/>
</group>
</service>
<service name="createContentFromDataResource" engine="simple"
location="component://content/script/org/ofbiz/content/content/ContentServices.xml" invoke="createContentFromDataResource">
<description>Creates content record from data resource and allows all content fields to be set</description>
<!-- uses createContent internally; additonal permission(s) not necessary -->
<implements service="createContent" optional="true"/>
<attribute name="dataResourceId" type="String" mode="IN" optional="false"/>
<attribute name="contentId" type="String" mode="OUT" optional="false"/>
<attribute name="uploadedFile" type="java.nio.ByteBuffer" mode="IN" optional="true"/>
</service>
<service name="attachUploadToDataResource" engine="simple" transaction-timeout="300"
location="component://content/script/org/ofbiz/content/data/DataServices.xml" invoke="attachUploadToDataResource">
<description>Accepts uploaded content and attaches to an existing data resource</description>
<!-- uses createContent internally; additonal permission(s) not necessary -->
<implements service="uploadFileInterface"/>
<attribute name="dataResourceId" type="String" mode="INOUT" optional="false"/>
<attribute name="dataResourceTypeId" type="String" mode="IN" optional="true"/>
<!-- mimetype is set from the uploaded file (contentType) when empty -->
<attribute name="mimeTypeId" type="String" mode="INOUT" optional="true"/>
<attribute mode="IN" name="rootDir" optional="true" type="String"/>
</service>
<service name="createContentFromUploadedFile" engine="group" transaction-timeout="300">
<description>Accepts file upload, creates DataResource and Content records.</description>
<!-- uses createContent internally; additonal permission(s) not necessary -->
<group>
<invoke name="createDataResource" parameters="preserve" result-to-context="true"/>
<invoke name="attachUploadToDataResource" parameters="preserve" result-to-context="true"/>
<invoke name="createContentFromDataResource"/>
</group>
</service>
<service name="updateContentAndUploadedFile" engine="group" transaction-timeout="300">
<description>Accepts file upload, updates DataResource and Content records.</description>
<group>
<invoke name="updateDataResource" parameters="preserve" result-to-context="true"/>
<invoke name="attachUploadToDataResource" parameters="preserve" result-to-context="true"/>
<invoke name="updateContent"/>
</group>
</service>
<service name="copyContentAndElectronicTextandAssoc" default-entity-name="Content" engine="simple"
location="component://content/script/org/ofbiz/content/content/ContentServices.xml" invoke="copyContentAndElectronicTextandAssoc" auth="true" >
<description>Copy a Content, e;ectronic text and assocs</description>
<!-- uses createContent internally; additonal permission(s) not necessary -->
<auto-attributes include="pk" mode="INOUT" optional="false"/>
</service>
<!-- update content services -->
<service name="updateContent" engine="simple" auth="true"
location="component://content/script/org/ofbiz/content/content/ContentServices.xml" invoke="updateContent">
<description>Update a Content</description>
<permission-service service-name="genericContentPermission" main-action="UPDATE"/>
<implements service="updateContentAssoc" optional="true"/>
<auto-attributes entity-name="Content" include="pk" mode="INOUT" optional="false"/>
<auto-attributes entity-name="Content" include="nonpk" mode="IN" optional="true"/>
<attribute name="contentPurposeTypeId" type="String" mode="IN" optional="true"/>
<!-- TODO: the following fields are depricated; but will not be removed until all services and callers are updated -->
<attribute mode="IN" name="targetOperationList" optional="true" type="List"/>
<attribute mode="IN" name="skipPermissionCheck" optional="true" type="String"/>
<attribute mode="IN" name="displayFailCond" optional="true" type="Boolean"/>
<attribute mode="INOUT" name="roleTypeList" optional="true" type="List"/>
<!-- end of depricated fields -->
<override name="contentName" allow-html="any"/>
<override name="description" allow-html="any"/>
</service>
<service name="updateTextContent" engine="group" auth="true">
<description>Updates a Text Document DataResource and Content Records</description>
<!-- uses updateContent internally; additonal permission(s) not necessary -->
<group>
<invoke name="updateDataText" result-to-context="true"/>
<invoke name="updateContent" result-to-context="true"/>
</group>
</service>
<service name="removeContent" default-entity-name="Content" engine="simple"
location="component://content/script/org/ofbiz/content/content/ContentServices.xml" invoke="removeContent" auth="true">
<description>Remove Content</description>
<permission-service service-name="genericContentPermission" main-action="DELETE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
<attribute mode="IN" name="targetOperationList" optional="true" type="List"/>
<attribute mode="IN" name="contentPurposeTypeId" optional="true" type="String"/>
<attribute mode="IN" name="userLogin" optional="true" type="org.ofbiz.entity.GenericValue"/>
<attribute mode="INOUT" name="roleTypeList" optional="true" type="List"/>
</service>
<service name="removeContentAndRelated" default-entity-name="Content" engine="simple"
location="component://content/script/org/ofbiz/content/content/ContentServices.xml" invoke="removeContentAndRelated" auth="true">
<description>Remove Content</description>
<permission-service service-name="genericContentPermission" main-action="DELETE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
<attribute mode="IN" name="targetOperationList" optional="true" type="List"/>
<attribute mode="IN" name="contentPurposeTypeId" optional="true" type="String"/>
<attribute mode="IN" name="userLogin" optional="true" type="org.ofbiz.entity.GenericValue"/>
<attribute mode="INOUT" name="roleTypeList" optional="true" type="List"/>
</service>
<!-- TODO: old permission service; being replaced with genericContentPermission -->
<service name="checkContentPermission"
transaction-timeout="7200"
auth="false" engine="java" invoke="checkContentPermission"
location="org.ofbiz.content.content.ContentPermissionServices">
<description>Check for permission to perform operation on Content</description>
<attribute mode="IN" name="targetOperationList" optional="true" type="List"/>
<attribute mode="IN" name="contentPurposeList" optional="true" type="List"/>
<!-- it was a mistake to pass in List objects because it makes it difficult to use
the service in a request event, so I added new ones without removing lists -->
<attribute mode="IN" name="targetOperationString" optional="true" type="String"/>
<attribute mode="IN" name="contentPurposeString" optional="true" type="String"/>
<attribute mode="IN" name="roleTypeString" optional="true" type="String"/>
<attribute mode="INOUT" name="roleTypeList" optional="true" type="List"/>
<attribute mode="IN" name="currentContent" optional="true" type="org.ofbiz.entity.GenericValue"/>
<attribute mode="IN" name="fromDate" optional="true" type="String"/>
<attribute mode="IN" name="thruDate" optional="true" type="String"/>
<!-- NOTE: entityOperation should be "_VIEW", "_ADMIN", etc. -->
<attribute mode="IN" name="entityOperation" optional="true" type="String"/>
<attribute mode="IN" name="statusId" optional="true" type="String"/>
<attribute mode="IN" name="privilegeEnumId" optional="true" type="String"/>
<attribute mode="IN" name="quickCheckContentId" optional="true" type="String"/>
<attribute mode="IN" name="displayFailCond" optional="true" type="Boolean"/>
<attribute mode="IN" name="displayPassCond" optional="true" type="Boolean"/>
<attribute mode="IN" name="partyId" optional="true" type="String"/>
<attribute mode="IN" name="userLoginId" optional="true" type="String"/>
<attribute mode="OUT" name="permissionStatus" optional="true" type="String"/>
<attribute mode="OUT" name="permissionRecorder" optional="true" type="org.ofbiz.content.content.PermissionRecorder"/>
</service>
<service name="findRelatedContent" default-entity-name="Content" engine="java"
location="org.ofbiz.content.content.ContentServices" invoke="findRelatedContent" auth="true">
<description>Create a Content</description>
<attribute mode="IN" name="currentContent" optional="false" type="org.ofbiz.entity.GenericValue"/>
<attribute mode="IN" name="toFrom" optional="true" type="String"/>
<attribute mode="IN" name="fromDate" optional="true" type="String"/>
<attribute mode="IN" name="thruDate" optional="true" type="String"/>
<attribute mode="IN" name="targetOperationList" optional="true" type="List"/>
<attribute mode="IN" name="userLogin" optional="true" type="org.ofbiz.entity.GenericValue"/>
<attribute mode="IN" name="contentAssocTypeList" optional="true" type="List"/>
<attribute mode="IN" name="contentTypeList" optional="true" type="List"/>
<attribute mode="IN" name="entityOperation" optional="true" type="String"/>
<attribute mode="OUT" name="contentList" optional="false" type="List"/>
</service>
<!--Content Assoc services.-->
<!-- TODO: old permission service; being replaced with genericContentPermission -->
<service name="checkAssocPermission" engine="java" transaction-timeout="7200" auth="true"
location="org.ofbiz.content.content.ContentPermissionServices" invoke="checkAssocPermission">
<description>Check for permission to perform operation on Content</description>
<attribute mode="IN" name="targetOperationList" optional="true" type="List"/>
<attribute mode="IN" name="contentPurposeList" optional="true" type="List"/>
<attribute mode="INOUT" name="roleTypeList" optional="true" type="List"/>
<attribute mode="IN" name="userLogin" optional="true" type="GenericValue"/>
<attribute mode="IN" name="contentIdTo" optional="true" type="String"/>
<attribute mode="IN" name="contentIdFrom" optional="true" type="String"/>
<attribute mode="IN" name="fromDate" optional="true" type="String"/>
<attribute mode="IN" name="thruDate" optional="true" type="String"/>
<attribute mode="IN" name="statusId" optional="true" type="String"/>
<attribute mode="IN" name="privilegeEnumId" optional="true" type="String"/>
<attribute mode="IN" name="entityOperation" optional="true" type="String"/>
<attribute mode="IN" name="contentAssocTypeId" optional="true" type="String"/>
<attribute mode="IN" name="contentAssocPredicateId" optional="true" type="String"/>
<attribute mode="IN" name="displayFailCond" optional="true" type="Boolean"/>
<attribute mode="OUT" name="permissionStatus" optional="true" type="String"/>
<attribute mode="OUT" name="permissionRecorderTo" optional="true" type="org.ofbiz.content.content.PermissionRecorder"/>
<attribute mode="OUT" name="permissionRecorder" optional="true" type="org.ofbiz.content.content.PermissionRecorder"/>
</service>
<service name="assocContent" engine="simple" default-entity-name="ContentAssoc" auth="true"
location="component://content/script/org/ofbiz/content/content/ContentServices.xml" invoke="assocContent">
<description>Check for permission to perform operation on Content</description>
<attribute mode="IN" name="targetOperationList" optional="true" type="List"/>
<attribute mode="IN" name="contentPurposeList" optional="true" type="List"/>
<attribute mode="INOUT" name="roleTypeList" optional="true" type="List"/>
<attribute mode="IN" name="userLogin" optional="true" type="org.ofbiz.entity.GenericValue"/>
<attribute mode="IN" name="contentIdTo" optional="true" type="String"/>
<attribute mode="IN" name="contentIdFrom" optional="true" type="String"/>
<attribute mode="IN" name="statusId" optional="true" type="String"/>
<attribute mode="IN" name="fromDate" optional="true" type="String"/>
<attribute mode="IN" name="thruDate" optional="true" type="String"/>
<attribute mode="IN" name="entityOperation" optional="true" type="String"/>
<attribute mode="IN" name="contentAssocTypeId" optional="false" type="String"/>
</service>
<service name="createContentAssoc" default-entity-name="ContentAssoc" engine="simple" auth="true"
location="component://content/script/org/ofbiz/content/content/ContentServices.xml" invoke="createContentAssoc">
<description>Create a ContentAssoc</description>
<permission-service service-name="genericContentPermission" main-action="UPDATE"/>
<auto-attributes include="all" mode="IN" optional="true"/>
<!-- deprecated fields to be removed -->
<attribute mode="IN" name="targetOperationList" optional="true" type="List"/>
<attribute mode="IN" name="targetOperationString" optional="true" type="String"/>
<attribute mode="IN" name="contentPurposeList" optional="true" type="List"/>
<attribute mode="IN" name="contentPurposeString" optional="true" type="String"/>
<attribute mode="IN" name="deactivateExisting" optional="true" type="String"/>
<attribute mode="IN" name="skipPermissionCheck" optional="true" type="String"/>
<attribute mode="IN" name="displayFailCond" optional="true" type="Boolean"/>
<attribute mode="INOUT" name="roleTypeList" optional="true" type="List"/>
<attribute mode="INOUT" name="contentIdFrom" optional="true" type="String"/>
<override name="fromDate" mode="INOUT"/>
<!-- end of deprecated fields -->
</service>
<service name="updateContentAssoc" default-entity-name="ContentAssoc" engine="simple" auth="true"
location="component://content/script/org/ofbiz/content/content/ContentServices.xml" invoke="updateContentAssoc">
<description>Update a ContentAssoc</description>
<permission-service service-name="genericContentPermission" main-action="UPDATE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
<auto-attributes include="nonpk" mode="IN" optional="true"/>
<!-- deprecated fields to be removed -->
<attribute mode="IN" name="targetOperationList" optional="true" type="List"/>
<attribute mode="IN" name="contentPurposeList" optional="true" type="List"/>
<attribute mode="IN" name="skipPermissionCheck" optional="true" type="String"/>
<attribute mode="IN" name="deactivateExisting" optional="true" type="String"/>
<attribute mode="IN" name="displayFailCond" optional="true" type="Boolean"/>
<attribute mode="INOUT" name="roleTypeList" optional="true" type="List"/>
<attribute mode="INOUT" name="contentIdFrom" optional="true" type="String"/>
<!-- end of deprecated fields -->
</service>
<service name="removeContentAssoc" default-entity-name="ContentAssoc" engine="simple" auth="true"
location="component://content/script/org/ofbiz/content/content/ContentServices.xml" invoke="removeContentAssoc">
<description>Remove ContentAssoc</description>
<permission-service service-name="genericContentPermission" main-action="DELETE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
<!-- deprecated fields to be removed -->
<attribute mode="IN" name="targetOperationList" optional="true" type="List"/>
<attribute mode="IN" name="contentPurposeList" optional="true" type="List"/>
<attribute mode="IN" name="skipPermissionCheck" optional="true" type="String"/>
<attribute mode="INOUT" name="roleTypeList" optional="true" type="List"/>
<attribute mode="INOUT" name="contentIdFrom" optional="true" type="String"/>
<!-- end of deprecated fields -->
</service>
<!-- content status services -->
<service name="setContentStatus" engine="simple" auth="true"
location="component://content/script/org/ofbiz/content/content/ContentServices.xml" invoke="setContentStatus">
<description>Set the Content Status</description>
<permission-service service-name="genericContentPermission" main-action="UPDATE"/>
<attribute name="contentId" type="String" mode="IN" optional="false"/>
<attribute name="statusId" type="String" mode="IN" optional="false"/>
<attribute name="oldStatusId" type="String" mode="OUT" optional="true"/>
</service>
<!-- ContentRole services -->
<service name="createContentRole" engine="simple" default-entity-name="ContentRole" auth="true"
location="component://content/script/org/ofbiz/content/content/ContentServices.xml" invoke="createContentRole">
<description>Create a ContentRole</description>
<permission-service service-name="genericContentPermission" main-action="UPDATE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
<auto-attributes include="nonpk" mode="IN" optional="true"/>
<override name="fromDate" optional="true"/>
</service>
<service name="updateContentRole" engine="simple" default-entity-name="ContentRole" auth="true"
location="component://content/script/org/ofbiz/content/content/ContentServices.xml" invoke="updateContentRole">
<description>Update a ContentRole</description>
<permission-service service-name="genericContentPermission" main-action="UPDATE"/>
<auto-attributes include="pk" mode="IN" optional="false"/>
<auto-attributes include="nonpk" mode="IN" optional="true"/>
</service>
<service name="deactivateAllContentRoles" engine="simple" default-entity-name="ContentRole" auth="true"
location="component://content/script/org/ofbiz/content/content/ContentServices.xml" invoke="deactivateAllContentRoles">
<description>Deactivate all ContentRoles</description>
<permission-service service-name="genericContentPermission" main-action="UPDATE"/>
<attribute mode="IN" name="contentId" optional="false" type="String"/>
<attribute mode="IN" name="roleTypeId" optional="false" type="String"/>
<attribute mode="IN" name="partyId" optional="false" type="String"/>
</service>
<service name="removeContentRole" engine="simple" default-entity-name="ContentRole" auth="true"
location="component://content/script/org/ofbiz/content/content/ContentServices.xml" invoke="removeContentRole">
<description>Remove ContentRole</description>
<permission-service service-name="genericContentPermission" main-action="UPDATE"/>
<auto-attributes entity-name="ContentRole" include="pk" mode="IN" optional="false"/>
</service>
<!-- Alternative URLs services -->
<service name="createMissingContentAltUrls" engine="simple"
location="component://content/script/org/ofbiz/content/content/ContentServices.xml" invoke="createMissingContentAltUrls" auth="true" use-transaction="false">
<description>Create missing Content Alternative URLs</description>
<attribute name="prodCatalogId" mode="IN" type="String" optional="true"/>
<attribute name="webSiteId" mode="IN" type="String" optional="true"/>
<attribute name="contentsNotUpdated" mode="OUT" type="Integer" optional="true"/>
<attribute name="contentsUpdated" mode="OUT" type="Integer" optional="true"/>
</service>
</services>