/usr/local/CPAN/VCS-Hms/VCS/Hms/Dir.pm


package VCS::Hms::Dir;

use VCS::Dir;

@ISA = qw(VCS::Hms VCS::Dir);

use strict;
use Carp;

sub new {
    my($class, $url) = @_;
    my $self = $class->init($url);
    my $path = $self->path;
    die "$class->new: $path not an HMS directory: $!\n"
        if system("fls $path >/dev/null") != 0;
    $self;
}

sub content {
    my $self = shift;
    my @result;
    foreach (split "\n",`fll -l $self->{NAME}`) {
        my ($mode,$lock,$size,$month,$date,$h_y,$name,$locked_rev) =
            split /\s+/;
        my $new_class = ($mode =~ /^d/) ? 'VCS::Hms::Dir' : 'VCS::Hms::File';
        push @result, $new_class->new($self->url . $name);
    }
    return @result;
}

1;