[elephant-cvs] CVS elephant/src/elephant

ieslick ieslick at common-lisp.net
Sun Apr 1 14:33:35 UTC 2007


Update of /project/elephant/cvsroot/elephant/src/elephant
In directory clnet:/tmp/cvs-serv29083/src/elephant

Modified Files:
	classes.lisp controller.lisp metaclasses.lisp serializer.lisp 
Log Message:
Latest documentation changes

--- /project/elephant/cvsroot/elephant/src/elephant/classes.lisp	2007/03/30 23:36:53	1.25
+++ /project/elephant/cvsroot/elephant/src/elephant/classes.lisp	2007/04/01 14:33:34	1.26
@@ -39,9 +39,11 @@
 (defclass persistent-object (persistent) ()
   (:metaclass persistent-metaclass)
   (:documentation 
-   "Superclass of all user-defined persistent classes.  This is
+   "Superclass for all user-defined persistent classes.  This is
     automatically inherited if you use the persistent-metaclass
-    metaclass."))
+    metaclass.  This allows specialization of functions for user
+    objects that would not be appropriate for Elephant objects
+    such as persistent collections"))
 
 ;; ================================================
 ;; METACLASS INITIALIZATION AND CHANGES
--- /project/elephant/cvsroot/elephant/src/elephant/controller.lisp	2007/03/30 23:42:35	1.44
+++ /project/elephant/cvsroot/elephant/src/elephant/controller.lisp	2007/04/01 14:33:34	1.45
@@ -48,11 +48,13 @@
 (defvar *dbconnection-spec* (make-hash-table :test 'equal))
 (defvar *dbconnection-lock* (ele-make-lock))
 
-(defmethod get-con ((instance persistent) &optional (sc *store-controller*))
-  "This is used to find and validate the connection spec
+(defgeneric get-con (instance &optional sc)
+  (:documentation "This is used to find and validate the connection spec
    maintained for in-memory persistent objects.  Should
    we re-open the controller from the spec if it's not
-   cached?  That might be dangerous so for now we error"
+   cached?  That might be dangerous so for now we error"))
+
+(defmethod get-con ((instance persistent) &optional (sc *store-controller*))
   (declare (ignore sc))
   (let ((con (gethash (dbcn-spc-pst instance) *dbconnection-spec*)))
     (cond ((not con)
--- /project/elephant/cvsroot/elephant/src/elephant/metaclasses.lisp	2007/03/30 23:36:53	1.14
+++ /project/elephant/cvsroot/elephant/src/elephant/metaclasses.lisp	2007/04/01 14:33:34	1.15
@@ -29,7 +29,7 @@
 			  :documentation "Persistent objects use a spec pointer to identify which store
                                           they are connected to"))
   (:documentation "Abstract superclass for all persistent classes (common
-    to user-defined classes and collections.)"))
+    to both user-defined classes and Elephant-defined objects such as collections.)"))
 
 (defclass persistent-metaclass (standard-class)
   ((%persistent-slots :accessor %persistent-slots)
--- /project/elephant/cvsroot/elephant/src/elephant/serializer.lisp	2007/03/30 14:34:35	1.26
+++ /project/elephant/cvsroot/elephant/src/elephant/serializer.lisp	2007/04/01 14:33:34	1.27
@@ -47,6 +47,8 @@
 ;;
 
 (defun serialize-to-base64-string (x sc)
+  "Encode object using the store controller's serializer format,
+   but encoded in a base64"
   (with-buffer-streams (out-buf)
   (cl-base64::usb8-array-to-base64-string
    (elephant-memutil::buffer-read-byte-vector 
@@ -62,6 +64,7 @@
 )
 
 (defun deserialize-from-base64-string (x sc)
+  "Decode a base64-string using the store controller's deserialize method"
   (with-buffer-streams (other)
     (deserialize 
      (elephant-memutil::buffer-write-byte-vector 




More information about the Elephant-cvs mailing list