Diff
Not logged in

Differences From:

File tools/cvs2fossil/lib/c2f_project.tcl part of check-in [6d1811d61e] - Continued work on pass II, skeleton of it completed by adding outline of code for persistence. by aku on 2007-10-06 21:19:26. [view]

To:

File tools/cvs2fossil/lib/c2f_project.tcl part of check-in [84871722547960b] - Broke static dependency cycle repository <- project <- file <- repository, now using dynamic/runtime object references instead. This allows us to keep the nice and readable format for our files, code is readable too. by aku on 2007-10-06 22:06:05. [view]

@@ -26,10 +26,11 @@
 snit::type ::vc::fossil::import::cvs::project {
     # # ## ### ##### ######## #############
     ## Public API
 
-    constructor {path} {
-	set mybase $path
+    constructor {path r} {
+	set mybase       $path
+	set myrepository $r
 	return
     }
 
     method base {} { return $mybase }
@@ -51,8 +52,11 @@
     method files {} {
 	# TODO: Loading from state
 	return [TheFiles]
     }
+
+    delegate method author   to myrepository
+    delegate method cmessage to myrepository
 
     # pass I persistence
     method persist {} {
 	state transaction {
@@ -94,8 +98,9 @@
 
     variable mybase         {} ; # Project directory
     variable myfiles -array {} ; # Maps rcs archive to their user files.
     variable myfobj         {} ; # File objects for the rcs archives
+    variable myrepository   {} ; # Repository the prject belongs to.
 
     # # ## ### ##### ######## #############
     ## Internal methods
 
@@ -121,9 +126,8 @@
 
     pragma -hastypeinfo    no  ; # no type introspection
     pragma -hasinfo        no  ; # no object introspection
     pragma -hastypemethods no  ; # type is not relevant.
-    pragma -simpledispatch yes ; # simple fast dispatch
 
     # # ## ### ##### ######## #############
 }