Author: ts
Date: Tue Jan  8 08:55:38 2008
New Revision: 7098

Log:
- RST fixes.
- Style fixes.
- Started section about ezcPersistentSession refactoring.

Modified:
    trunk/PersistentObject/design/design-1.4.txt

Modified: trunk/PersistentObject/design/design-1.4.txt
==============================================================================
--- trunk/PersistentObject/design/design-1.4.txt [iso-8859-1] (original)
+++ trunk/PersistentObject/design/design-1.4.txt [iso-8859-1] Tue Jan  8 
08:55:38 2008
@@ -16,18 +16,18 @@
 The general goal for this version is to implement various features
 described by these issues in our issue tracker:
 
-- #8963   Support for composite IDs.
-- #10151  Improved Database and PersistentObject datatype support (especially
-          binary data).
-- #10373  Several relations to the same table for PersistentObject.
-- #010913 Complex data types (e.g. DateTime) for PersistentObject.
+- #8963: Support for composite IDs.
+- #10151: Improved Database and PersistentObject datatype support (especially
+  binary data).
+- #10373: Several relations to the same table for PersistentObject.
+- #10913: Complex data types (e.g. DateTime) for PersistentObject.
+- #12287: ezcPersistentSession refactoring.
 
 Each of the issues and their proposed solutions are explained in a seperate
 chapter in this document.
 
-
 Support for composite IDs (and composite properties in general) [#8963]
-======================================================================
+=======================================================================
 
 Note: This section is not finished. Please read the discussion on the bug to
 see if it will be implemented at all.
@@ -73,8 +73,6 @@
       // to specify/implement that... :)
     }
     
-    
-    
     ezcPersistentCompositeProperty
     {
       // array of ezcPersistentObjectColumn
@@ -90,8 +88,6 @@
     ezcPersistentSession::loadIfExist( $class, $id ) since $id can now be 
composite
     ezcPersistentSession::loadIntoObject( $pObject, $id ) since $id can now be 
composite
     
-
-
 Open questions
 --------------
 
@@ -126,9 +122,9 @@
 
 .. _`#010943`: http://issues.ez.no/IssueView.php?Id=10943
 
-
 Design
 ------
+
 The proposed solution is to add a columnType property for all definitions where
 a column is defined. The columnType can be one of the PDO PARAM_ type
 parameters and directly defines the parameter type provided to PDO when
@@ -138,9 +134,9 @@
 - ezcPersistentObjectIdProperty
 - ezcPersistentObjectProperty
 
-
 Open questions
 --------------
+
 It would be nice to make large binary data available as a resource both for
 writing and reading. PDO::PARAM_LOB can handle this if used together with 
 PDO::FETCH_BOUND. Should we, and how do we make this available to the user?
@@ -254,8 +250,8 @@
 work. An extra if will have to be introduced to check for the existence of
 named relations. This will not harm performance in a significant way.
 
-Complex data types (e.g. DateTime) for PersistentObject.
-========================================================
+Complex data types (e.g. DateTime) for PersistentObject [#10913]
+================================================================
 
 Background
 ----------
@@ -306,6 +302,29 @@
 are requested by users, it might happen that additional conversion classes will
 be shipped with this version of PersistentObject.
 
+
+ezcPersistentSession refactoring [#12287]
+=========================================
+
+Background
+----------
+
+The ezcPersistentSession class is the very heart of the PersistentObject
+component. It contains the complete application logic of the component,
+structured in many public (25) and a few protected and private (5) methods
+consisting of  more than 1200 lines of code and documentation.
+
+The mass of code starts getting unmaintainable by now and some code-synergies
+could be realized between different methods. Therefore a refactoring of the
+class and its surrounding classes will be described in this section to solve
+the named issues. The public API of ezcPersistentSession will not be affected
+by this, but only delegation might happen internally, without being visible to
+the user of the API.
+
+Issues
+------
+
+
 
 ..
    Local Variables:


-- 
svn-components mailing list
svn-components@lists.ez.no
http://lists.ez.no/mailman/listinfo/svn-components

Reply via email to