svn commit: r1647271 - in /ofbiz/trunk: applications/content/entitydef/ applications/marketing/entitydef/ applications/order/entitydef/ applications/party/entitydef/ applications/party/webapp/partymgr/WEB-INF/actions/communication/ applications/product...

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

svn commit: r1647271 - in /ofbiz/trunk: applications/content/entitydef/ applications/marketing/entitydef/ applications/order/entitydef/ applications/party/entitydef/ applications/party/webapp/partymgr/WEB-INF/actions/communication/ applications/product...

jacopoc
Author: jacopoc
Date: Mon Dec 22 09:19:33 2014
New Revision: 1647271

URL: http://svn.apache.org/r1647271
Log:
Refactoring of Visit/Visitor/ServerHit* (and related) entities in order to be able to maintain them in a database separate from the main transactional database:
1) removed foreign key relationship from/to this group of entities and the other entities of the OFBiz data model; the fields are still available but they are not enforced by a foreign key constraint
2) removed one view entitiy joining Visit with Party entities and refactored the code that was using it in order to provide the same behavior
3) added a new entity group ("org.ofbiz.stats") for the Visit/Visitor/ServerHit* (and related) entities; for now the group is not active so that the entities are still in the same database as before; however assigning them to a different database is now a matter of uncommenting the group file definition in framework/webapp/ofbiz-component.xml and provide the new datasource definition
 

Added:
    ofbiz/trunk/framework/webapp/entitydef/entitygroup.xml   (with props)
Modified:
    ofbiz/trunk/applications/content/entitydef/entitymodel.xml
    ofbiz/trunk/applications/marketing/entitydef/entitymodel.xml
    ofbiz/trunk/applications/order/entitydef/entitymodel.xml
    ofbiz/trunk/applications/party/entitydef/entitymodel.xml
    ofbiz/trunk/applications/party/webapp/partymgr/WEB-INF/actions/communication/recentVisitor.groovy
    ofbiz/trunk/applications/product/entitydef/entitymodel.xml
    ofbiz/trunk/applications/product/entitydef/entitymodel_old.xml
    ofbiz/trunk/applications/workeffort/entitydef/entitymodel.xml
    ofbiz/trunk/framework/common/entitydef/entitymodel.xml
    ofbiz/trunk/framework/webapp/entitydef/entitymodel.xml
    ofbiz/trunk/framework/webapp/ofbiz-component.xml

Modified: ofbiz/trunk/applications/content/entitydef/entitymodel.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/content/entitydef/entitymodel.xml?rev=1647271&r1=1647270&r2=1647271&view=diff
==============================================================================
--- ofbiz/trunk/applications/content/entitydef/entitymodel.xml (original)
+++ ofbiz/trunk/applications/content/entitydef/entitymodel.xml Mon Dec 22 09:19:33 2014
@@ -1689,9 +1689,6 @@ under the License.
       <field name="secondsTotal" type="floating-point"></field>
       <field name="searchDate" type="date-time"></field>
       <prim-key field="contentSearchResultId"/>
-      <relation type="one" fk-name="CNT_SCHRES_VST" rel-entity-name="Visit">
-        <key-map field-name="visitId"/>
-      </relation>
     </entity>
     
     <entity entity-name="WebAnalyticsConfig"

Modified: ofbiz/trunk/applications/marketing/entitydef/entitymodel.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/marketing/entitydef/entitymodel.xml?rev=1647271&r1=1647270&r2=1647271&view=diff
==============================================================================
--- ofbiz/trunk/applications/marketing/entitydef/entitymodel.xml (original)
+++ ofbiz/trunk/applications/marketing/entitydef/entitymodel.xml Mon Dec 22 09:19:33 2014
@@ -532,9 +532,6 @@ under the License.
       <relation type="one" fk-name="TKNG_CODVST_TKCD" rel-entity-name="TrackingCode">
         <key-map field-name="trackingCodeId"/>
       </relation>
-      <relation type="one" fk-name="TKNG_CODVST_VST" rel-entity-name="Visit">
-        <key-map field-name="visitId"/>
-      </relation>
       <relation type="one" fk-name="TKNG_CODVST_SRCEM" rel-entity-name="Enumeration">
         <key-map field-name="sourceEnumId" rel-field-name="enumId"/>
       </relation>

Modified: ofbiz/trunk/applications/order/entitydef/entitymodel.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/order/entitydef/entitymodel.xml?rev=1647271&r1=1647270&r2=1647271&view=diff
==============================================================================
--- ofbiz/trunk/applications/order/entitydef/entitymodel.xml (original)
+++ ofbiz/trunk/applications/order/entitydef/entitymodel.xml Mon Dec 22 09:19:33 2014
@@ -2756,9 +2756,6 @@ under the License.
       <field name="wasReserved" type="indicator"></field>
       <prim-key field="visitId"/>
       <prim-key field="cartAbandonedLineSeqId"/>
-      <relation type="one" fk-name="CART_ABLN_VST" rel-entity-name="Visit">
-        <key-map field-name="visitId"/>
-      </relation>
       <relation type="one" fk-name="CART_ABLN_PRD" rel-entity-name="Product">
         <key-map field-name="productId"/>
       </relation>
@@ -2810,9 +2807,6 @@ under the License.
       <relation type="one" fk-name="SHLIST_PTY" rel-entity-name="Party">
         <key-map field-name="partyId"/>
       </relation>
-      <relation type="one" fk-name="SHLIST_VSTR" rel-entity-name="Visitor">
-        <key-map field-name="visitorId"/>
-      </relation>
       <relation type="many" fk-name="SHLIST_PSSM" rel-entity-name="ProductStoreShipmentMeth">
         <key-map field-name="productStoreId"/>
         <key-map field-name="shipmentMethodTypeId"/>

Modified: ofbiz/trunk/applications/party/entitydef/entitymodel.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/party/entitydef/entitymodel.xml?rev=1647271&r1=1647270&r2=1647271&view=diff
==============================================================================
--- ofbiz/trunk/applications/party/entitydef/entitymodel.xml (original)
+++ ofbiz/trunk/applications/party/entitydef/entitymodel.xml Mon Dec 22 09:19:33 2014
@@ -1482,9 +1482,6 @@ under the License.
       <relation type="one" fk-name="PARTY_NEED_PCAT" rel-entity-name="ProductCategory">
         <key-map field-name="productCategoryId"/>
       </relation>
-      <relation type="one" fk-name="PARTY_NEED_VSIT" rel-entity-name="Visit">
-        <key-map field-name="visitId"/>
-      </relation>
     </entity>
 
   <!-- ========================================================= -->
@@ -2013,9 +2010,6 @@ under the License.
       <relation type="one" fk-name="PARTY_DATSRC_DSC" rel-entity-name="DataSource">
         <key-map field-name="dataSourceId"/>
       </relation>
-      <relation type="one" fk-name="PARTY_DATSRC_VST" rel-entity-name="Visit">
-        <key-map field-name="visitId"/>
-      </relation>
     </entity>
     <entity entity-name="PartyGroup"
             package-name="org.ofbiz.party.party"
@@ -2183,39 +2177,6 @@ under the License.
         <key-map field-name="partyId"/>
       </relation>
     </view-entity>
-  <view-entity entity-name="PartyNameVisitView"
-    package-name="org.ofbiz.party.party"
-    title="Party Name visit View Entity">
-    <member-entity entity-alias="PTY" entity-name="Party"/>
-    <member-entity entity-alias="PER" entity-name="Person"/>
-    <member-entity entity-alias="PTYGRP" entity-name="PartyGroup"/>
-    <member-entity entity-alias="VISIT" entity-name="Visit"/>
-    <alias entity-alias="PTY" name="partyId"/>
-    <alias entity-alias="PTY" name="partyTypeId"/>
-    <alias entity-alias="PER" name="firstName"/>
-    <alias entity-alias="PER" name="middleName"/>
-    <alias entity-alias="PER" name="lastName"/>
-    <alias entity-alias="PER" name="firstNameLocal"/>
-    <alias entity-alias="PER" name="lastNameLocal"/>
-    <alias entity-alias="PER" name="personalTitle"/>
-    <alias entity-alias="PER" name="suffix"/>
-    <alias entity-alias="PTYGRP" name="groupName"/>
-    <alias entity-alias="PTYGRP" name="groupNameLocal"/>
-    <alias entity-alias="VISIT" name="webappName"/>
-    <alias entity-alias="VISIT" name="fromDate"/>
-    <view-link entity-alias="PTY" rel-entity-alias="PER" rel-optional="true">
-      <key-map field-name="partyId"/>
-    </view-link>
-    <view-link entity-alias="PTY" rel-entity-alias="PTYGRP" rel-optional="true">
-      <key-map field-name="partyId"/>
-    </view-link>
-    <view-link entity-alias="PTY" rel-entity-alias="VISIT" rel-optional="false">
-      <key-map field-name="partyId"/>
-    </view-link>
-    <relation type="one-nofk" rel-entity-name="Party">
-      <key-map field-name="partyId"/>
-    </relation>
-  </view-entity>
   <entity entity-name="PartyNote"
             package-name="org.ofbiz.party.party"
             title="Party Note Entity">
@@ -2899,25 +2860,9 @@ under the License.
         <field name="contactMechId" type="id"></field>
         <field name="partyId" type="id"></field>
         <field name="roleTypeId" type="id"></field>
-        <relation type="one" fk-name="VISIT_CONT_MECH" rel-entity-name="ContactMech">
-            <key-map field-name="contactMechId"/>
-        </relation>
-        <relation type="one" fk-name="VISIT_PARTY" rel-entity-name="Party">
-            <key-map field-name="partyId"/>
-        </relation>
-        <relation type="one" fk-name="VISIT_ROLE_TYPE" rel-entity-name="RoleType">
-            <key-map field-name="roleTypeId"/>
-        </relation>
-        <relation type="one" fk-name="VISIT_PARTY_ROLE" rel-entity-name="PartyRole">
-            <key-map field-name="partyId"/>
-            <key-map field-name="roleTypeId"/>
-        </relation>
     </extend-entity>
     <extend-entity entity-name="Visitor">
         <field name="partyId" type="id"></field>
-        <relation type="one" fk-name="VISITOR_PARTY" rel-entity-name="Party">
-            <key-map field-name="partyId"/>
-        </relation>
     </extend-entity>
     <extend-entity entity-name="UserLogin">
         <field name="partyId" type="id"></field>

Modified: ofbiz/trunk/applications/party/webapp/partymgr/WEB-INF/actions/communication/recentVisitor.groovy
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/party/webapp/partymgr/WEB-INF/actions/communication/recentVisitor.groovy?rev=1647271&r1=1647270&r2=1647271&view=diff
==============================================================================
--- ofbiz/trunk/applications/party/webapp/partymgr/WEB-INF/actions/communication/recentVisitor.groovy (original)
+++ ofbiz/trunk/applications/party/webapp/partymgr/WEB-INF/actions/communication/recentVisitor.groovy Mon Dec 22 09:19:33 2014
@@ -17,12 +17,13 @@
  * under the License.
  */
 
-import org.ofbiz.entity.*
 import org.ofbiz.entity.condition.*;
 import org.ofbiz.entity.util.*
 import org.ofbiz.base.util.*;
 
 lastDate = UtilDateTime.addDaysToTimestamp(UtilDateTime.nowTimestamp(), -21); // should be there the last 3 weeks.
 searchCondition = EntityCondition.makeCondition("fromDate", EntityOperator.GREATER_THAN, lastDate);
-options = new EntityFindOptions(false, 0, 0,, true);
-context.recentParties = delegator.findList("PartyNameVisitView", searchCondition, (Set)["partyId", "firstName", "middleName", "lastName", "groupName"], null, options, true);
+partyIds = EntityUtil.getFieldListFromEntityList(select('partyId').distinct().from('Visit').where(searchCondition).queryList(), 'partyId', false)
+searchCondition = EntityCondition.makeCondition('partyId', EntityOperator.IN, partyIds);
+options = new EntityFindOptions(false, 0, 0, true);
+context.recentParties = delegator.findList("PartyNameView", searchCondition, (Set)["partyId", "firstName", "middleName", "lastName", "groupName"], null, options, true);

Modified: ofbiz/trunk/applications/product/entitydef/entitymodel.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/product/entitydef/entitymodel.xml?rev=1647271&r1=1647270&r2=1647271&view=diff
==============================================================================
--- ofbiz/trunk/applications/product/entitydef/entitymodel.xml (original)
+++ ofbiz/trunk/applications/product/entitydef/entitymodel.xml Mon Dec 22 09:19:33 2014
@@ -2159,9 +2159,6 @@ under the License.
       <prim-key field="visitId"/>
       <prim-key field="productId"/>
       <prim-key field="productStoreId"/>
-      <relation type="one" fk-name="INV_ITEM_TR_VIS" rel-entity-name="Visit">
-        <key-map field-name="visitId"/>
-      </relation>
       <relation type="one" fk-name="INV_ITEM_TR_PROD" rel-entity-name="Product">
         <key-map field-name="productId"/>
       </relation>
@@ -3244,9 +3241,6 @@ under the License.
       <field name="secondsTotal" type="floating-point"></field>
       <field name="searchDate" type="date-time"></field>
       <prim-key field="productSearchResultId"/>
-      <relation type="one" fk-name="PROD_SCHRES_VST" rel-entity-name="Visit">
-        <key-map field-name="visitId"/>
-      </relation>
     </entity>
     <entity entity-name="ProductType"
             package-name="org.ofbiz.product.product"

Modified: ofbiz/trunk/applications/product/entitydef/entitymodel_old.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/product/entitydef/entitymodel_old.xml?rev=1647271&r1=1647270&r2=1647271&view=diff
==============================================================================
--- ofbiz/trunk/applications/product/entitydef/entitymodel_old.xml (original)
+++ ofbiz/trunk/applications/product/entitydef/entitymodel_old.xml Mon Dec 22 09:19:33 2014
@@ -85,9 +85,6 @@ under the License.
       <field name="removeStems" type="indicator"></field>
       <field name="numResults" type="numeric"></field>
       <prim-key field="productKeywordResultId"/>
-      <relation type="one" fk-name="PROD_KWDRES_VST" rel-entity-name="Visit">
-        <key-map field-name="visitId"/>
-      </relation>
       <relation type="one-nofk" rel-entity-name="ProductCategory">
         <key-map field-name="productCategoryId"/>
       </relation>

Modified: ofbiz/trunk/applications/workeffort/entitydef/entitymodel.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/workeffort/entitydef/entitymodel.xml?rev=1647271&r1=1647270&r2=1647271&view=diff
==============================================================================
--- ofbiz/trunk/applications/workeffort/entitydef/entitymodel.xml (original)
+++ ofbiz/trunk/applications/workeffort/entitydef/entitymodel.xml Mon Dec 22 09:19:33 2014
@@ -787,9 +787,6 @@ under the License.
         <field name="secondsTotal" type="floating-point"></field>
         <field name="searchDate" type="date-time"></field>
         <prim-key field="workEffortSearchResultId"/>
-        <relation type="one" fk-name="WEFF_SCHRES_VST" rel-entity-name="Visit">
-            <key-map field-name="visitId"/>
-        </relation>
     </entity>
     <entity entity-name="WorkEffortSkillStandard"
             package-name="org.ofbiz.workeffort.workeffort"

Modified: ofbiz/trunk/framework/common/entitydef/entitymodel.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/common/entitydef/entitymodel.xml?rev=1647271&r1=1647270&r2=1647271&view=diff
==============================================================================
--- ofbiz/trunk/framework/common/entitydef/entitymodel.xml (original)
+++ ofbiz/trunk/framework/common/entitydef/entitymodel.xml Mon Dec 22 09:19:33 2014
@@ -311,12 +311,6 @@ under the License.
     <extend-entity entity-name="Visit">
         <field name="clientIpStateProvGeoId" type="id"></field>
         <field name="clientIpCountryGeoId" type="id"></field>
-        <relation type="one" fk-name="VISIT_CIP_STPRV" title="ClientIpStateProv" rel-entity-name="Geo">
-            <key-map field-name="clientIpStateProvGeoId" rel-field-name="geoId"/>
-        </relation>
-        <relation type="one" fk-name="VISIT_CIP_CNTRY" title="ClientIpCountry" rel-entity-name="Geo">
-            <key-map field-name="clientIpCountryGeoId" rel-field-name="geoId"/>
-        </relation>
     </extend-entity>
 
   <!-- ========================================================= -->

Added: ofbiz/trunk/framework/webapp/entitydef/entitygroup.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/webapp/entitydef/entitygroup.xml?rev=1647271&view=auto
==============================================================================
--- ofbiz/trunk/framework/webapp/entitydef/entitygroup.xml (added)
+++ ofbiz/trunk/framework/webapp/entitydef/entitygroup.xml Mon Dec 22 09:19:33 2014
@@ -0,0 +1,37 @@
+<?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.
+-->
+
+<entitygroup xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+        xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/entitygroup.xsd">
+
+    <entity-group group="org.ofbiz.stats" entity="BrowserType"/>
+    <entity-group group="org.ofbiz.stats" entity="PlatformType"/>
+    <entity-group group="org.ofbiz.stats" entity="ProtocolType"/>
+    <entity-group group="org.ofbiz.stats" entity="ServerHit"/>
+    <entity-group group="org.ofbiz.stats" entity="ServerHitBin"/>
+    <entity-group group="org.ofbiz.stats" entity="ServerHitType"/>
+    <entity-group group="org.ofbiz.stats" entity="UserAgent"/>
+    <entity-group group="org.ofbiz.stats" entity="UserAgentMethodType"/>
+    <entity-group group="org.ofbiz.stats" entity="UserAgentType"/>
+    <entity-group group="org.ofbiz.stats" entity="Visit"/>
+    <entity-group group="org.ofbiz.stats" entity="Visitor"/>
+
+</entitygroup>
+

Propchange: ofbiz/trunk/framework/webapp/entitydef/entitygroup.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ofbiz/trunk/framework/webapp/entitydef/entitygroup.xml
------------------------------------------------------------------------------
    svn:keywords = Date Rev Author URL Id

Propchange: ofbiz/trunk/framework/webapp/entitydef/entitygroup.xml
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Modified: ofbiz/trunk/framework/webapp/entitydef/entitymodel.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/webapp/entitydef/entitymodel.xml?rev=1647271&r1=1647270&r2=1647271&view=diff
==============================================================================
--- ofbiz/trunk/framework/webapp/entitydef/entitymodel.xml (original)
+++ ofbiz/trunk/framework/webapp/entitydef/entitymodel.xml Mon Dec 22 09:19:33 2014
@@ -88,12 +88,6 @@ under the License.
       <relation type="one" fk-name="SERVER_HIT_VISIT" rel-entity-name="Visit">
         <key-map field-name="visitId"/>
       </relation>
-      <relation type="one" fk-name="SERVER_HIT_STATUS" rel-entity-name="StatusItem">
-        <key-map field-name="statusId"/>
-      </relation>
-      <relation type="one" fk-name="SERVER_HIT_USER" rel-entity-name="UserLogin">
-        <key-map field-name="userLoginId"/>
-      </relation>
     </entity>
     <entity entity-name="ServerHitBin" package-name="org.ofbiz.webapp.visit" never-cache="true" title="Server Hit Bin Entity">
       <field name="serverHitBinId" type="id-ne"></field>

Modified: ofbiz/trunk/framework/webapp/ofbiz-component.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/webapp/ofbiz-component.xml?rev=1647271&r1=1647270&r2=1647271&view=diff
==============================================================================
--- ofbiz/trunk/framework/webapp/ofbiz-component.xml (original)
+++ ofbiz/trunk/framework/webapp/ofbiz-component.xml Mon Dec 22 09:19:33 2014
@@ -30,6 +30,9 @@ under the License.
     <classpath type="jar" location="build/lib/*"/>
 
     <entity-resource type="model" reader-name="main" loader="main" location="entitydef/entitymodel.xml"/>
+    <!--
+    <entity-resource type="group" reader-name="main" loader="main" location="entitydef/entitygroup.xml"/>
+    -->
 
 <!--<test-suite loader="main" location="testdef/webapptests.xml"/>-->
 </ofbiz-component>