Update of /project/elephant/cvsroot/elephant/src In directory common-lisp.net:/tmp/cvs-serv13481/src
Modified Files: classes.lisp Log Message: license, name changes
Date: Fri Aug 27 10:31:30 2004 Author: blee
Index: elephant/src/classes.lisp diff -u elephant/src/classes.lisp:1.2 elephant/src/classes.lisp:1.3 --- elephant/src/classes.lisp:1.2 Thu Aug 26 19:53:52 2004 +++ elephant/src/classes.lisp Fri Aug 27 10:31:30 2004 @@ -1,3 +1,41 @@ +;;; -*- Mode: Lisp; Syntax: ANSI-Common-Lisp; Base: 10 -*- +;;; +;;; classes.lisp -- persistent objects via metaobjects +;;; +;;; Initial version 8/26/2004 by Andrew Blumberg +;;; ablumberg@common-lisp.net +;;; +;;; part of +;;; +;;; Elephant: an object-oriented database for Common Lisp +;;; +;;; Copyright (c) 2004 by Andrew Blumberg and Ben Lee +;;; ablumberg@common-lisp.net blee@common-lisp.net +;;; +;;; This program is free software; you can redistribute it +;;; and/or modify it under the terms of the GNU General +;;; Public License as published by the Free Software +;;; Foundation; either version 2 of the License, or (at +;;; your option) any later version. +;;; +;;; This program is distributed in the hope that it will be +;;; useful, but WITHOUT ANY WARRANTY; without even the +;;; implied warranty of MERCHANTABILITY or FITNESS FOR A +;;; PARTICULAR PURPOSE. See the GNU General Public License +;;; for more details. +;;; +;;; The GNU General Public License can be found in the file +;;; LICENSE which should have been distributed with this +;;; code. It can also be found at +;;; +;;; http://www.opensource.org/licenses/gpl-license.php +;;; +;;; You should have received a copy of the GNU General +;;; Public License along with this program; if not, write +;;; to the Free Software Foundation, Inc., 59 Temple Place, +;;; Suite 330, Boston, MA 02111-1307 USA +;;; + ;; TODO: slot-bound-p (check the database)
(in-package "ELEPHANT") @@ -78,9 +116,10 @@ (buffer-write-int (oid instance) *key-buf*) (let ((key-length (serialize ,name *key-buf*))) (handler-case - (deserialize (db-get-key-buffered (db *store-controller*) - (buffer-stream-buffer *key-buf*) - key-length)) + (deserialize (db-get-key-buffered + (controller-db *store-controller*) + (buffer-stream-buffer *key-buf*) + key-length)) (db-error (err) (if (= (db-error-errno err) DB_NOTFOUND) (error 'unbound-slot :instance instance :slot ,name) @@ -92,7 +131,7 @@ (buffer-write-int (oid instance) *key-buf*) (let ((key-length (serialize ,name *key-buf*)) (val-length (serialize new-value *out-buf*))) - (db-put-buffered (db *store-controller*) + (db-put-buffered (controller-db *store-controller*) (buffer-stream-buffer *key-buf*) key-length (buffer-stream-buffer *out-buf*) val-length :transaction *current-transaction*