Author: jaz
Date: Tue Feb 27 16:06:26 2007
New Revision: 512510

URL: http://svn.apache.org/viewvc?view=rev&rev=512510
Log:
now have update uploaded content working; updates all necessary entities; added 
a few text based ecas for text content; handles many different text based data 
resource types now

Modified:
    
ofbiz/trunk/applications/content/script/org/ofbiz/content/data/DataServices.xml
    ofbiz/trunk/applications/content/servicedef/secas.xml
    ofbiz/trunk/applications/content/servicedef/services_content.xml

Modified: 
ofbiz/trunk/applications/content/script/org/ofbiz/content/data/DataServices.xml
URL: 
http://svn.apache.org/viewvc/ofbiz/trunk/applications/content/script/org/ofbiz/content/data/DataServices.xml?view=diff&rev=512510&r1=512509&r2=512510
==============================================================================
--- 
ofbiz/trunk/applications/content/script/org/ofbiz/content/data/DataServices.xml 
(original)
+++ 
ofbiz/trunk/applications/content/script/org/ofbiz/content/data/DataServices.xml 
Tue Feb 27 16:06:26 2007
@@ -516,9 +516,9 @@
         <log level="always" message="result:${result}"/>
         <log level="always" message="parameters:${parameters}"/>
     </simple-method>
-
-    <!-- Determines which type of uploaded file this is and calls the proper 
method -->
+    
     <simple-method method-name="attachUploadToDataResource" 
short-description="Attach an uploaded file to a data resource">
+        <set field="isUpdate" value="false"/>
         <if-empty field-name="parameters.dataResourceTypeId">
             <!-- create default behavior -->
             <if>
@@ -568,21 +568,45 @@
         </if-compare>
 
         <if-compare field-name="parameters.dataResourceTypeId" 
value="IMAGE_OBJECT" operator="equals">
+            <entity-one entity-name="ImageDataResource" 
value-name="dataResObj">
+                <field-map field-name="dataResourceId" 
env-name="parameters.dataResourceId"/>
+            </entity-one>
+            <if-not-empty field-name="dataResObj">
+                <set field="isUpdate" value="true"/>
+            </if-not-empty>
             <call-simple-method method-name="saveImageObjectDateResource"/>
             <return/>
         </if-compare>
 
         <if-compare field-name="parameters.dataResourceTypeId" 
value="VIDEO_OBJECT" operator="equals">
-            <call-simple-method method-name="saveImageObjectDateResource"/>
+            <entity-one entity-name="VideoDataResource" 
value-name="dataResObj">
+                <field-map field-name="dataResourceId" 
env-name="parameters.dataResourceId"/>
+            </entity-one>
+            <if-not-empty field-name="dataResObj">
+                <set field="isUpdate" value="true"/>
+            </if-not-empty>
+            <call-simple-method method-name="saveVideoObjectDateResource"/>
             <return/>
         </if-compare>
 
         <if-compare field-name="parameters.dataResourceTypeId" 
value="AUDIO_OBJECT" operator="equals">
-            <call-simple-method method-name="saveImageObjectDateResource"/>
+            <entity-one entity-name="AudioDataResource" 
value-name="dataResObj">
+                <field-map field-name="dataResourceId" 
env-name="parameters.dataResourceId"/>
+            </entity-one>
+            <if-not-empty field-name="dataResObj">
+                <set field="isUpdate" value="true"/>
+            </if-not-empty>
+            <call-simple-method method-name="saveAudioObjectDateResource"/>
             <return/>
         </if-compare>
 
         <if-compare field-name="parameters.dataResourceTypeId" 
value="OTHER_OBJECT" operator="equals">
+            <entity-one entity-name="OtherDataResource" 
value-name="dataResObj">
+                <field-map field-name="dataResourceId" 
env-name="parameters.dataResourceId"/>
+            </entity-one>
+            <if-not-empty field-name="dataResObj">
+                <set field="isUpdate" value="true"/>
+            </if-not-empty>
             <call-simple-method method-name="saveOtherObjectDateResource"/>
             <return/>
         </if-compare>
@@ -649,8 +673,14 @@
 
         <!-- fields serviceName and fileField are required to be set by 
calling method -->
         <set-service-fields service-name="createOtherDataResource" 
map-name="dataResource" to-map-name="serviceContext"/>
-        <set from-field="parameters.uploadedFile" 
field="serviceContext.dataResourceContent"/>
-        <call-service service-name="createOtherDataResource" 
in-map-name="serviceContext"/>
+        <set from-field="parameters.uploadedFile" 
field="serviceContext.dataResourceContent"/>        
+
+        <if-compare field-name="isUpdate" value="true" operator="equals">
+            <call-service service-name="updateOtherDataResource" 
in-map-name="serviceContext"/>
+            <else>
+                <call-service service-name="createOtherDataResource" 
in-map-name="serviceContext"/>
+            </else>
+        </if-compare>
 
         <field-to-result field-name="dataResourceId" map-name="dataResource"/>
     </simple-method>
@@ -676,8 +706,14 @@
 
         <!-- fields serviceName and fileField are required to be set by 
calling method -->
         <set-service-fields service-name="createImageDataResource" 
map-name="dataResource" to-map-name="serviceContext"/>
-        <set from-field="parameters.uploadedFile" 
field="serviceContext.imageData"/>
-        <call-service service-name="createImageDataResource" 
in-map-name="serviceContext"/>
+        <set from-field="parameters.uploadedFile" 
field="serviceContext.imageData"/>        
+
+        <if-compare field-name="isUpdate" value="true" operator="equals">
+            <call-service service-name="updateImageDataResource" 
in-map-name="serviceContext"/>
+            <else>
+                <call-service service-name="createImageDataResource" 
in-map-name="serviceContext"/>
+            </else>
+        </if-compare>
 
         <field-to-result field-name="dataResourceId" map-name="dataResource"/>
     </simple-method>
@@ -704,7 +740,13 @@
         <!-- fields serviceName and fileField are required to be set by 
calling method -->
         <set-service-fields service-name="createVideoDataResource" 
map-name="dataResource" to-map-name="serviceContext"/>
         <set from-field="parameters.uploadedFile" 
field="serviceContext.videoData"/>
-        <call-service service-name="createVideoDataResource" 
in-map-name="serviceContext"/>
+
+        <if-compare field-name="isUpdate" value="true" operator="equals">
+            <call-service service-name="updateVideoDataResource" 
in-map-name="serviceContext"/>
+            <else>
+                <call-service service-name="createVideoDataResource" 
in-map-name="serviceContext"/>
+            </else>
+        </if-compare>
 
         <field-to-result field-name="dataResourceId" map-name="dataResource"/>
     </simple-method>
@@ -731,7 +773,13 @@
         <!-- fields serviceName and fileField are required to be set by 
calling method -->
         <set-service-fields service-name="createAudioDataResource" 
map-name="dataResource" to-map-name="serviceContext"/>
         <set from-field="parameters.uploadedFile" 
field="serviceContext.audioData"/>
-        <call-service service-name="createAudioDataResource" 
in-map-name="serviceContext"/>
+
+        <if-compare field-name="isUpdate" value="true" operator="equals">
+            <call-service service-name="updateAudioDataResource" 
in-map-name="serviceContext"/>
+            <else>
+                <call-service service-name="createAudioDataResource" 
in-map-name="serviceContext"/>
+            </else>
+        </if-compare>
 
         <field-to-result field-name="dataResourceId" map-name="dataResource"/>
     </simple-method>

Modified: ofbiz/trunk/applications/content/servicedef/secas.xml
URL: 
http://svn.apache.org/viewvc/ofbiz/trunk/applications/content/servicedef/secas.xml?view=diff&rev=512510&r1=512509&r2=512510
==============================================================================
--- ofbiz/trunk/applications/content/servicedef/secas.xml (original)
+++ ofbiz/trunk/applications/content/servicedef/secas.xml Tue Feb 27 16:06:26 
2007
@@ -77,8 +77,21 @@
         <action service="createElectronicText" mode="sync" 
result-to-context="true"/>
     </eca>
     <eca service="createDataText" event="invoke">
-        <condition field-name="dataResourceTypeId" operator="not-equals" 
value="ELECTRONIC_TEXT"/>
+        <condition field-name="dataResourceTypeId" operator="is-empty"/>
+        <condition field-name="textData" operator="is-not-empty"/> 
+        <set field-name="dataResourceTypeId" value="ELECTRONIC_TEXT"/>
+        <action service="createElectronicText" mode="sync" 
result-to-context="true"/>
+    </eca>
+    <eca service="createDataText" event="invoke">
+        <condition field-name="dataResourceTypeId" operator="is-empty"/>
+        <condition field-name="textData" operator="is-empty"/>
         <set field-name="dataResourceTypeId" value="SHORT_TEXT"/>
+        <action service="createDataResource" mode="sync" 
result-to-context="true"/>
+    </eca>
+    <eca service="createDataText" event="invoke">
+        <condition field-name="dataResourceTypeId" operator="not-equals" 
value="ELECTRONIC_TEXT"/>
+        <condition field-name="dataResourceTypeId" operator="is-not-empty"/>
+        <condition field-name="textData" operator="is-empty"/>
         <action service="createDataResource" mode="sync" 
result-to-context="true"/>
     </eca>
     <eca service="updateDataText" event="invoke">

Modified: ofbiz/trunk/applications/content/servicedef/services_content.xml
URL: 
http://svn.apache.org/viewvc/ofbiz/trunk/applications/content/servicedef/services_content.xml?view=diff&rev=512510&r1=512509&r2=512510
==============================================================================
--- ofbiz/trunk/applications/content/servicedef/services_content.xml (original)
+++ ofbiz/trunk/applications/content/servicedef/services_content.xml Tue Feb 27 
16:06:26 2007
@@ -66,7 +66,7 @@
         <attribute name="contentId" type="String" mode="OUT" optional="false"/>
     </service>
 
-    <service name="uploadFileToDataResource" engine="simple" 
transaction-timeout="300"
+    <service name="attachUploadToDataResource" engine="simple" 
transaction-timeout="300"
              location="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 -->
@@ -79,8 +79,17 @@
         <!-- uses createContent internally; additonal permission(s) not 
necessary -->
         <group>
             <invoke name="createDataResource" parameters="preserve" 
result-to-context="true"/>
-            <invoke name="uploadFileToDataResource" 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>
 


Reply via email to