[librdf-generator-void-perl] 02/10: Put progress statements here and there
Jonas Smedegaard
dr at jones.dk
Sun May 18 12:37:42 UTC 2014
This is an automated email from the git hooks/post-receive script.
js pushed a commit to tag dev-release-0.13_1
in repository librdf-generator-void-perl.
commit 1ffe90b3bbe2c493079cb5a05c274b7203b89c87
Author: Kjetil Kjernsmo <kjetil at kjernsmo.net>
Date: Wed Jul 17 11:47:38 2013 +0200
Put progress statements here and there
---
lib/RDF/Generator/Void.pm | 20 +++++++++++++++++---
lib/RDF/Generator/Void/Stats.pm | 6 ++----
2 files changed, 19 insertions(+), 7 deletions(-)
diff --git a/lib/RDF/Generator/Void.pm b/lib/RDF/Generator/Void.pm
index d16cb59..7a8b3a2 100644
--- a/lib/RDF/Generator/Void.pm
+++ b/lib/RDF/Generator/Void.pm
@@ -11,6 +11,7 @@ use RDF::Generator::Void::Stats;
# use less ();
use utf8;
use URI::Split qw(uri_split uri_join);
+use Progress::Any;
use aliased 'RDF::Generator::Void::Meta::Attribute::ObjectList';
@@ -100,6 +101,9 @@ has dataset_uri => (
coerce => 1,
);
+my $progress = Progress::Any->get_indicator(task => "compute");
+
+
# This will create a URN with a UUID by default
sub _build_dataset_uri {
my ($self) = @_;
@@ -231,7 +235,9 @@ a model, one will be created for you.
sub generate {
my $self = shift;
my $void_model = shift || RDF::Trine::Model->temporary_model;
-
+ $progress->pos(0);
+ $progress->target($self->inmodel->size + 10);
+ $progress->update(message => "Adding base statements");
local $self->{void_model} = $void_model;
# Start generating the actual VoID statements
@@ -260,7 +266,7 @@ sub generate {
iri('http://www.w3.org/2000/01/rdf-schema#label'),
literal("RDF::Generator::Void, Version $VERSION", 'en')));
}
-
+ $progress->update(message => "Adding base statements");
foreach my $endpoint ($self->all_endpoints) {
$void_model->add_statement(statement(
@@ -293,6 +299,7 @@ sub generate {
literal($self->inmodel->size, undef, $xsd->integer),
));
+ $progress->update(message => "Adding base statements");
if ($self->has_urispace) {
$void_model->add_statement(statement(
$self->dataset_uri,
@@ -303,6 +310,7 @@ sub generate {
$self->_generate_counts($void->entities, $self->stats->entities);
}
+
return $void_model if ($self->has_level && $self->level == 0);
$self->_generate_counts($void->distinctSubjects, $self->stats->subjects);
$self->_generate_counts($void->properties, $self->stats->properties);
@@ -314,6 +322,8 @@ sub generate {
$self->_generate_propertypartitions;
$self->_generate_classpartitions;
+ $progress->update(message => "Finishing");
+
return $void_model;
}
@@ -325,6 +335,7 @@ sub _generate_counts {
$predicate,
literal($count, undef, $xsd->integer),
));
+ $progress->update(message => "Adding counts statements");
}
sub _generate_propertypartitions {
@@ -353,7 +364,7 @@ sub _generate_propertypartitions {
literal(scalar keys %{$counts->{'countobjects'}}, undef, $xsd->integer)));
}
-
+ $progress->update(message => "Adding property partition statements");
}
}
@@ -374,6 +385,7 @@ sub _generate_classpartitions {
$self->{void_model}->add_statement(statement($blank,
$void->triples,
literal($count, undef, $xsd->integer)));
+ $progress->update(message => "Adding class partition statements");
}
}
@@ -394,6 +406,8 @@ sub _generate_most_common_vocabs {
iri($vocab),
));
}
+ $progress->update(message => "Adding vocabulary statements");
+
}
diff --git a/lib/RDF/Generator/Void/Stats.pm b/lib/RDF/Generator/Void/Stats.pm
index e2462c0..0382c3d 100644
--- a/lib/RDF/Generator/Void/Stats.pm
+++ b/lib/RDF/Generator/Void/Stats.pm
@@ -83,10 +83,8 @@ sub BUILD {
# Initialize local hashes to count stuff.
my (%vocab_counter, %entities, %properties, %subjects, %objects, %classes);
my $progress = Progress::Any->get_indicator(task => "compute");
- $progress->pos(0);
my $gen = $self->generator;
- $progress->target($gen->inmodel->size);
# Here, we take the data in the model we want to generate
# statistics for and we iterate over it. Doing it this way, we
@@ -130,9 +128,8 @@ sub BUILD {
$properties{$st->predicate->uri_value}{'countsubjects'}{$st->subject->sse} = 1;
$properties{$st->predicate->uri_value}{'countobjects'}{$st->object->sse} = 1;
}
- $progress->update(message => "Triple examined");
+ $progress->update(message => "Examening triples");
});
- $progress->finish;
# Finally, we update the attributes above, they are returned as a side-effect
@@ -145,6 +142,7 @@ sub BUILD {
$self->propertyPartitions(\%properties);
$self->classPartitions(\%classes);
}
+ $progress->update(message => "Data transfer");
}
=head1 FURTHER DOCUMENTATION
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-perl/packages/librdf-generator-void-perl.git
More information about the Pkg-perl-cvs-commits
mailing list