From: Rob H. <for...@us...> - 2001-11-26 19:48:19
|
Update of /cvsroot/sandweb/sandweb/lib/SandWeb/Repository In directory usw-pr-cvs1:/tmp/cvs-serv32124 Modified Files: CVS.pm Log Message: put in rule to remove leading / or // ( it's sort of a bug that // gets in there, not sure how to handle it yet though :/ tricky one ). There is alot of redundancy in this class, alot of this stuff could probably be moved to the constructor. Not all of it, unfortunately. The thing is, most of the commands are carried out the exact same way, there's only a couple exceptions. Maybe there should be a catch-all method, and specific methods only where needed? I dunno, seems messy. anyway, it's not a big deal, just that the amount of copy/paste that's required to fix bugs like this seems against the whole idea of OOP. Index: CVS.pm =================================================================== RCS file: /cvsroot/sandweb/sandweb/lib/SandWeb/Repository/CVS.pm,v retrieving revision 1.9 retrieving revision 1.10 diff -U2 -r1.9 -r1.10 --- CVS.pm 2001/11/26 18:42:46 1.9 +++ CVS.pm 2001/11/26 19:48:14 1.10 @@ -6,871 +6,892 @@ sub new { - my $class = shift; - my %args = @_; + my $class = shift; + my %args = @_; - my $root = $args{'root'}; - my $sandbox = $args{'sandbox'}; + my $root = $args{'root'}; + my $sandbox = $args{'sandbox'}; [...1545 lines suppressed...] + } } sub get_root { - my $self = shift; - if ($self->{'root'}) { - return $self->{'root'}; - } - else { - return 0; - } + my $self = shift; + if ($self->{'root'}) { + return $self->{'root'}; + } + else { + return 0; + } } |