Author: cludwig Date: Sat Jan 31 19:23:44 2009 New Revision: 7
Log: fix <dependency> in collection feed; fix <updated> in snapshot and fragments feed
Added: trunk/src/unit_tests/atom-conf.lisp - copied, changed from r6, /trunk/src/atom/conf.lisp Modified: trunk/src/atom/atom.lisp trunk/src/atom/collection.lisp trunk/src/atom/conf.lisp trunk/src/atom/confreader.lisp trunk/src/atom/fragments.lisp trunk/src/atom/snapshots.lisp trunk/src/isidorus.asd trunk/src/model/changes.lisp trunk/src/unit_tests/atom_test.lisp trunk/src/unit_tests/fixtures.lisp trunk/src/unit_tests/unittests-constants.lisp
Modified: trunk/src/atom/atom.lisp ============================================================================== --- trunk/src/atom/atom.lisp (original) +++ trunk/src/atom/atom.lisp Sat Jan 31 19:23:44 2009 @@ -2,7 +2,7 @@ (:use :cl :cxml :constants :xml-tools :datamodel :drakma) (:export :collection-feed :defsite - :depends-on + :dependency :entries :feed :feed-to-elem
Modified: trunk/src/atom/collection.lisp ============================================================================== --- trunk/src/atom/collection.lisp (original) +++ trunk/src/atom/collection.lisp Sat Jan 31 19:23:44 2009 @@ -1,8 +1,8 @@ (in-package :atom)
(defclass collection-feed (feed) - ((depends-on :accessor depends-on - :initarg :depends-on :initform nil + ((dependency :accessor dependency + :initarg :dependency :initform nil :type list :documentation "URLs of the feeds that this feed depends on") (source-locator-prefix @@ -12,8 +12,8 @@
(defmethod feed-to-elem ((feed collection-feed)) (setf (updated feed) (get-most-recent-datetime-for-tm (id feed))) - (when (depends-on feed) - (to-elem "e:depends-on" (depends-on feed)))) + (dolist (dependency (dependency feed)) + (to-elem "e:dependency" dependency)))
(defclass collection-entry (entry) ((link-type :accessor link-type
Modified: trunk/src/atom/conf.lisp ============================================================================== --- trunk/src/atom/conf.lisp (original) +++ trunk/src/atom/conf.lisp Sat Jan 31 19:23:44 2009 @@ -31,7 +31,7 @@ (relative-path "worms") (author "Isidor") (source-locator-prefix "http://psi.egovpt.org/tm/worms/") - (depends-on "http://london.ztt.fh-worms.de:8000/feeds/egov-ontology") + (dependency "http://london.ztt.fh-worms.de:8000/feeds/egov-ontology")
(snapshots-feed (id "http://psi.egovpt.org/tm/worms/snapshots")
Modified: trunk/src/atom/confreader.lisp ============================================================================== --- trunk/src/atom/confreader.lisp (original) +++ trunk/src/atom/confreader.lisp Sat Jan 31 19:23:44 2009 @@ -68,7 +68,7 @@ :id (get-confvalue 'id (rest feed)) :title (get-confvalue 'title (rest feed)) :source-locator-prefix source-locator-prefix - :depends-on (get-conflist 'depends-on (rest feed)) + :dependency (get-conflist 'dependency (rest feed)) :author (get-confvalue 'author (rest feed)) :path collection-url)))
Modified: trunk/src/atom/fragments.lisp ============================================================================== --- trunk/src/atom/fragments.lisp (original) +++ trunk/src/atom/fragments.lisp Sat Jan 31 19:23:44 2009 @@ -19,6 +19,7 @@ (to-elem "e:TopicSI" (psi entry)))
(defmethod feed-to-elem ((feed fragments-feed)) + (setf (updated feed) (get-most-recent-datetime-for-tm (tm-id feed))) (to-elem "e:ServerSrcLocatorPrefix" (source-locator-prefix feed)))
(defmethod entries ((feed fragments-feed))
Modified: trunk/src/atom/snapshots.lisp ============================================================================== --- trunk/src/atom/snapshots.lisp (original) +++ trunk/src/atom/snapshots.lisp Sat Jan 31 19:23:44 2009 @@ -16,6 +16,7 @@ (to-link (link entry) "alternate" "application/x-tm+xml;version=1.0"))
(defmethod feed-to-elem ((feed snapshots-feed)) + (setf (updated feed) (get-most-recent-datetime-for-tm (tm-id feed))) (to-elem "e:ServerSrcLocatorPrefix" (source-locator-prefix feed)))
(defmethod entries ((feed snapshots-feed))
Modified: trunk/src/isidorus.asd ============================================================================== --- trunk/src/isidorus.asd (original) +++ trunk/src/isidorus.asd Sat Jan 31 19:23:44 2009 @@ -80,6 +80,7 @@ (:static-file "sample_objects.xtm") (:static-file "t100.xtm") (:static-file "atom_test.xtm") + (:file "atom-conf") (:file "unittests-constants" :depends-on ("dangling_topicref.xtm" "inconsistent.xtm" @@ -91,7 +92,8 @@ "duplicate_identifier.xtm" "inconsistent_2_0.xtm" "sample_objects.xtm" - "t100.xtm")) + "t100.xtm" + "atom-conf")) (:file "fixtures" :depends-on ("unittests-constants")) (:file "importer_test"
Modified: trunk/src/model/changes.lisp ============================================================================== --- trunk/src/model/changes.lisp (original) +++ trunk/src/model/changes.lisp Sat Jan 31 19:23:44 2009 @@ -26,6 +26,7 @@ (pushnew (start-revision vi) revision-set)) (sort revision-set #'<)))
+ (defun find-associations-for-topic (top) "find all associations of this topic" (let
Copied: trunk/src/unit_tests/atom-conf.lisp (from r6, /trunk/src/atom/conf.lisp) ============================================================================== --- /trunk/src/atom/conf.lisp (original) +++ trunk/src/unit_tests/atom-conf.lisp Sat Jan 31 19:23:44 2009 @@ -31,7 +31,7 @@ (relative-path "worms") (author "Isidor") (source-locator-prefix "http://psi.egovpt.org/tm/worms/") - (depends-on "http://london.ztt.fh-worms.de:8000/feeds/egov-ontology") + (dependency "http://london.ztt.fh-worms.de:8000/feeds/egov-ontology")
(snapshots-feed (id "http://psi.egovpt.org/tm/worms/snapshots")
Modified: trunk/src/unit_tests/atom_test.lisp ============================================================================== --- trunk/src/unit_tests/atom_test.lisp (original) +++ trunk/src/unit_tests/atom_test.lisp Sat Jan 31 19:23:44 2009 @@ -52,9 +52,9 @@ (datetime-revision1 (atom::datetime-in-iso-format fixtures::revision1)) (collection-feed-string - (format nil "<a:feed xmlns:a="http://www.w3.org/2005/Atom%5C" xmlns:e="http://www.egovpt.org/sdshare/%5C%22%3E<a:title>Topicmaps on psi.egovpt.org</a:title><a:id>http://london.ztt.fh-worms.de:8000/feeds</a:id><a:author><a:name>Isidor</a:name></a:author><a:link href="http://london.ztt.fh-worms.de:8000/feeds%5C" rel="self"></a:link><a:updated>~a</a:updated><a:entry xmlns:a="http://www.w3.org/2005/Atom%5C" xmlns:e="http://www.egovpt.org/sdshare/%5C%22%3E<a:title>Data behind the portal of the city of Worms</a:title><a:id>http://psi.egovpt.org/tm/worms/entry</a:id><a:link href="http://london.ztt.fh-worms.de:8000/feeds/worms%5C" rel="alternate"></a:link><a:link href="http://london.ztt.fh-worms.de:8000/feeds/worms%5C" rel="alternate" type="application/atom+xml"></a:link><a:author><a:name>Isidor</a:name></a:author><a:link href="http://london.ztt.fh-worms.de:8000/feeds/worms%5C" rel="collection-feed" type="application/atom+xml"></a:link><a:updated>~a</a:updated></a:entry><a:entry xmlns:a="http://www.w3.org/2005/Atom%5C" xmlns:e="http://www.egovpt.org/sdshare/%5C%22%3E<a:title>eGov Reference Ontology</a:title><a:id>http://psi.egovpt.org/tm/egov-ontology/entry</a:id><a:link href="http://london.ztt.fh-worms.de:8000/feeds/egov-ontology%5C" rel="alternate"></a:link><a:link href="http://london.ztt.fh-worms.de:8000/feeds/egov-ontology%5C" rel="alternate" type="application/atom+xml"></a:link><a:author><a:name>Isidor</a:name></a:author><a:link href="http://london.ztt.fh-worms.de:8000/feeds/egov-ontology%5C" rel="collection-feed" type="application/atom+xml"></a:link><a:updated>~a</a:updated></a:entry></a:feed>" datetime-revision3 datetime-revision3 datetime-revision1)) + (format nil "<a:feed xmlns:a="http://www.w3.org/2005/Atom%5C" xmlns:e="http://www.egovpt.org/sdshare/%5C%22%3E<a:title>Topicmaps on psi.egovpt.org</a:title><a:id>http://london.ztt.fh-worms.de:8000/feeds</a:id><a:author><a:name>Isidor</a:name></a:author><a:link href="http://london.ztt.fh-worms.de:8000/feeds%5C" rel="self"></a:link><a:updated>~a</a:updated><a:entry xmlns:a="http://www.w3.org/2005/Atom%5C" xmlns:e="http://www.egovpt.org/sdshare/%5C%22%3E<a:title>Data behind the portal of the city of Worms</a:title><a:id>http://psi.egovpt.org/tm/worms/entry</a:id><a:link href="http://london.ztt.fh-worms.de:8000/feeds/worms%5C" rel="alternate"></a:link><a:link href="http://london.ztt.fh-worms.de:8000/feeds/worms%5C" rel="alternate" type="application/atom+xml"></a:link><a:author><a:name>Isidor</a:name></a:author><a:link href="http://london.ztt.fh-worms.de:8000/feeds/worms%5C" rel="http://www.egovpt.org/sdshare/collectionfeed%5C" type="application/atom+xml"></a:link><a:updated>~a</a:updated></a:entry><a:entry xmlns:a="http://www.w3.org/2005/Atom%5C" xmlns:e="http://www.egovpt.org/sdshare/%5C%22%3E<a:title>eGov Reference Ontology</a:title><a:id>http://psi.egovpt.org/tm/egov-ontology/entry</a:id><a:link href="http://london.ztt.fh-worms.de:8000/feeds/egov-ontology%5C" rel="alternate"></a:link><a:link href="http://london.ztt.fh-worms.de:8000/feeds/egov-ontology%5C" rel="alternate" type="application/atom+xml"></a:link><a:author><a:name>Isidor</a:name></a:author><a:link href="http://london.ztt.fh-worms.de:8000/feeds/egov-ontology%5C" rel="http://www.egovpt.org/sdshare/collectionfeed%5C" type="application/atom+xml"></a:link><a:updated>~a</a:updated></a:entry></a:feed>" datetime-revision3 datetime-revision3 datetime-revision1)) (worms-feed-string - (format nil "<a:feed xmlns:a="http://www.w3.org/2005/Atom%5C" xmlns:e="http://www.egovpt.org/sdshare/%5C%22%3E<a:title>Data behind the portal of the city of Worms</a:title><a:id>http://london.ztt.fh-worms.de:8000/feeds/worms</a:id><a:author><a:name>Isidor</a:name></a:author><a:link href="http://london.ztt.fh-worms.de:8000/feeds/worms%5C" rel="self"></a:link><e:depends-on>http://london.ztt.fh-worms.de:8000/feeds/egov-ontology</e:depends-on><a:updated>~a</a:updated><a:entry xmlns:a="http://www.w3.org/2005/Atom%5C" xmlns:e="http://www.egovpt.org/sdshare/%5C%22%3E<a:title>Snapshots of the Worms data</a:title><a:id>http://psi.egovpt.org/tm/worms/snapshots/entry</a:id><a:link href="http://london.ztt.fh-worms.de:8000/feeds/worms/snapshots%5C" rel="alternate"></a:link><a:link href="http://london.ztt.fh-worms.de:8000/feeds/worms/snapshots%5C" rel="http://www.egovpt.org/sdshare/snapshotsfeed%5C" type="application/atom+xml"></a:link><a:updated>~a</a:updated></a:entry><a:entry xmlns:a="http://www.w3.org/2005/Atom%5C" xmlns:e="http://www.egovpt.org/sdshare/%5C%22%3E<a:title>A list of all change fragments for the Worms data</a:title><a:id>http://psi.egovpt.org/tm/worms/fragments/entry</a:id><a:link href="http://london.ztt.fh-worms.de:8000/feeds/worms/fragments%5C" rel="alternate"></a:link><a:link href="http://london.ztt.fh-worms.de:8000/feeds/worms/fragments%5C" rel="http://www.egovpt.org/sdshare/fragmentsfeed%5C" type="application/atom+xml"></a:link><a:updated>~a</a:updated></a:entry></a:feed>" datetime-revision3 datetime-revision3 datetime-revision3))) + (format nil "<a:feed xmlns:a="http://www.w3.org/2005/Atom%5C" xmlns:e="http://www.egovpt.org/sdshare/%5C%22%3E<a:title>Data behind the portal of the city of Worms</a:title><a:id>http://london.ztt.fh-worms.de:8000/feeds/worms</a:id><a:author><a:name>Isidor</a:name></a:author><a:link href="http://london.ztt.fh-worms.de:8000/feeds/worms%5C" rel="self"></a:link><e:dependency>http://london.ztt.fh-worms.de:8000/feeds/egov-ontology</e:dependency><a:updated>~a</a:updated><a:entry xmlns:a="http://www.w3.org/2005/Atom%5C" xmlns:e="http://www.egovpt.org/sdshare/%5C%22%3E<a:title>Snapshots of the Worms data</a:title><a:id>http://psi.egovpt.org/tm/worms/snapshots/entry</a:id><a:link href="http://london.ztt.fh-worms.de:8000/feeds/worms/snapshots%5C" rel="alternate"></a:link><a:link href="http://london.ztt.fh-worms.de:8000/feeds/worms/snapshots%5C" rel="http://www.egovpt.org/sdshare/snapshotsfeed%5C" type="application/atom+xml"></a:link><a:updated>~a</a:updated></a:entry><a:entry xmlns:a="http://www.w3.org/2005/Atom%5C" xmlns:e="http://www.egovpt.org/sdshare/%5C%22%3E<a:title>A list of all change fragments for the Worms data</a:title><a:id>http://psi.egovpt.org/tm/worms/fragments/entry</a:id><a:link href="http://london.ztt.fh-worms.de:8000/feeds/worms/fragments%5C" rel="alternate"></a:link><a:link href="http://london.ztt.fh-worms.de:8000/feeds/worms/fragments%5C" rel="http://www.egovpt.org/sdshare/fragmentsfeed%5C" type="application/atom+xml"></a:link><a:updated>~a</a:updated></a:entry></a:feed>" datetime-revision3 datetime-revision3 datetime-revision3))) (is (string= collection-feed-string @@ -114,6 +114,10 @@ (find 'atom::snapshots-feed (atom:subfeeds ont-feed) :key #'type-of))))) + (format t "~a" + (cxml:with-xml-output + (cxml:make-string-sink :canonical t) + (atom:feed-to-elem snapshots-feed))) )))
(test test-collection-configuration () @@ -174,7 +178,7 @@ (is-false (set-exclusive-or '(() ("http://london.ztt.fh-worms.de:8000/feeds/egov-ontology")) - (mapcar #'atom:depends-on collection-feeds) :test #'equal)) + (mapcar #'atom:dependency collection-feeds) :test #'equal))
;;test types for feeds (is-false
Modified: trunk/src/unit_tests/fixtures.lisp ============================================================================== --- trunk/src/unit_tests/fixtures.lisp (original) +++ trunk/src/unit_tests/fixtures.lisp Sat Jan 31 19:23:44 2009 @@ -132,7 +132,7 @@ ;;test configuration ;(defparameter *tm-feed* nil) (setf atom:*base-url* "http://london.ztt.fh-worms.de:8000") - (load "atom/conf.lisp")) + (load *atom-conf.lisp*))
(def-fixture atom-test-db () (setf *XTM-TM* *NOTIFICATIONBASE-TM*)
Modified: trunk/src/unit_tests/unittests-constants.lisp ============================================================================== --- trunk/src/unit_tests/unittests-constants.lisp (original) +++ trunk/src/unit_tests/unittests-constants.lisp Sat Jan 31 19:23:44 2009 @@ -18,7 +18,8 @@ :*inconsistent_2_0.xtm* :*sample_objects.xtm* :*t100.xtm* - :*atom_test.xtm*)) + :*atom_test.xtm* + :*atom-conf.lisp*))
(in-package :unittests-constants)
@@ -75,3 +76,7 @@ (defparameter *atom_test.xtm* (asdf:component-pathname (asdf:find-component *unit-tests-component* "atom_test.xtm"))) + +(defparameter *atom-conf.lisp* + (asdf:component-pathname + (asdf:find-component *unit-tests-component* "atom-conf")))