| Summary | Package variables | Synopsis | General documentation | Methods |
| Summary | Top |
| CLAIR::MEAD::DocsentConverter - Document => Mead Cluster converter head1 VERSION Version 0.01 |
| Package variables | Top |
| No package variables defined. |
| Included modules | Top |
| Clair::Config |
| Clair::Document |
| MEAD::MEAD_ADDONS_UTIL |
| lib " $MEAD_HOME /lib " |
| Synopsis | Top |
| This module is use to take documents from a directory, Clair::Document objects, or Clair::Cluster objects and create a Mead-style cluster directory. use Clair::MEAD::DocsentConverter; use Clair::Document; use Clair::Cluster; my $doc = Clair::Document->new( ... ); my $cluster = Clair::Cluster->new( ... ); my $dir = "some/path"; my $file = "file.txt"; ... my $c = Clair::MEAD::DocsentConverter->new( dest => "outputdir", name => "mycluster" ); $c->add_document($doc); $c->add_cluster($cluster); $c->add_directory($dir); $c->add_file($file); $c->convert(); |
| Description | Top |
| Methods | Top |
| _clean_ids | No description | Code |
| add_cluster | Description | Code |
| add_directory | Description | Code |
| add_document | Description | Code |
| add_file | Description | Code |
| convert | Description | Code |
| new | Description | Code |
| add_cluster | code | next | Top |
| Adds all of the documents in the given Clair::Cluster to the cluster. |
| add_directory | code | prev | next | Top |
| Adds all of the files in the given directory to the cluster. |
| add_document | code | prev | next | Top |
| Adds the given Clair::Document to the cluster. |
| add_file | code | prev | next | Top |
| Adds the given file to the cluster. |
| convert | code | prev | next | Top |
| Converts the previously added files to a Mead cluster in the directory set in the constructor. |
| new | code | prev | next | Top |
$c = Clair::MEAD::DocsentConverter( |
| _clean_ids | description | prev | next | Top |
sub _clean_ids
{ my $self = shift;
my @docs = @{ $self->{docs} };
foreach my $doc (@docs) {
my $id = $doc->get_id();
$id =~ s/.*?\///g;
$id =~ s/\.docsent//g;
$doc->set_id(id => $id);
}} |
| add_cluster | description | prev | next | Top |
sub add_cluster
{ my $self = shift;
my $cluster = shift;
my @docs = @{ $self->{docs} };
my $documents = $cluster->documents();
foreach my $doc (values %$documents) {
push @docs, $doc;
}
$self->{docs} =\@ docs;} |
| add_directory | description | prev | next | Top |
sub add_directory
{ my $self = shift;
my $dir = shift;
my @docs = @{ $self->{docs} };
die "Expected directory: $!" unless (-d $dir);
opendir DIR, $dir or die "Could not read directory: $!";
my @files = readdir(DIR);
close DIR;
foreach my $file (@files) {
if (-f "$dir/$file") {
my $type = "text";
if ($file =~ /\.html$/) {
$type = "html"
}
$file =~ /([^\/]+)$/;
my $id = $1;
my $doc = Clair::Document->new(
file => "$dir/$file",
type => $type,
id => $id
);
push @docs, $doc;
}
}
$self->{docs} =\@ docs;} |
| add_document | description | prev | next | Top |
sub add_document
{ my $self = shift;
my @new_docs = @_;
my @docs = @{ $self->{docs} };
push @docs, @new_docs;
$self->{docs} =\@ docs;} |
| add_file | description | prev | next | Top |
sub add_file
{ my $self = shift;
my @files = @_;
my @docs = @{ $self->{docs} };
foreach my $file (@files) {
my $type;
if ($file =~ /\.html$/) {
$type = "html";
} else {
$type = "text";
}
$file =~ /([^\/]+)$/;
my $id = $1;
my $doc = Clair::Document->new(file => $file,
type => $type,
id => $1);
push @docs, $doc;
}
$self->{docs} =\@ docs;} |
| convert | description | prev | next | Top |
sub convert
{ my $self = shift;
$self->_clean_ids();
my @docs = @{ $self->{docs} };
my $docsent_dir = "$self->{dest}/docsent";
my $orig_dir = "$self->{dest}/orig";
mkdir($self->{dest}) or die $! unless (-d $self->{dest});
mkdir($docsent_dir) or die $! unless (-d $docsent_dir);
mkdir($orig_dir) or die $! unless (-d $orig_dir);
# Create the docsent files and the originals} |
| new | description | prev | next | Top |
sub new
{ my $class = shift;
my %parameters = @_;
unless (defined $parameters{dest}) {
die "Expected directory";
}
unless (defined $parameters{lang}) {
$parameters{lang} = "ENG";
}
unless (defined $parameters{name}) {
$parameters{name} = $parameters{dest};
}
my @docs = ();
$parameters{docs} =\@ docs;
my $self = bless\% parameters, $class;
return $self;} |