######################################################################
#
#  Show the number of eprints currently in the repository
#
#  Used for remote monitoring of repository growth. eg. by 
#  software.eprints.org
#
######################################################################
#
#
# Copyright 2000-2008 University of Southampton. All Rights Reserved.
# 
#  This file is part of GNU EPrints 3.
#  
#  Copyright (c) 2000-2008 University of Southampton, UK. SO17 1BJ.
#  
#  EPrints 3 is free software; you can redistribute it and/or modify
#  it under the terms of the GNU General Public License as published by
#  the Free Software Foundation; either version 2 of the License, or
#  (at your option) any later version.
#  
#  EPrints 3 is distributed in the hope that it will be useful,
#  but WITHOUT ANY WARRANTY; without even the implied warranty of
#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
#  GNU General Public License for more details.
#  
#  You should have received a copy of the GNU General Public License
#  along with EPrints 3; if not, write to the Free Software
#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
#
######################################################################

use EPrints;


use strict;

my $eprints = EPrints->new;
my $repo = $eprints->current_repository;
exit( 0 ) unless( defined $repo );

$repo->send_http_header( content_type=>"text/plain; charset=UTF-8" );

my @ds_ids = $repo->get_sql_dataset_ids();
push @ds_ids, qw/ inbox buffer deletion archive /;
foreach my $ds_id ( sort @ds_ids )
{
	my $ds = $repo->dataset( $ds_id );
	print $ds_id.": ".$ds->search->count()."\n";
}
print sprintf("version: %s (%s)\n",
	$repo->config( "version_id" ),
	$repo->config( "version" ) );

# Indexer Status
my $daemon = EPrints::Index::Daemon->new(
		session => $repo,
		logfile => EPrints::Index::logfile(),
		noise => ($repo->{noise}||1),
);

my $status = "not-running";
$status = "running" if $daemon->is_running();
$status = "stalled" if $daemon->has_stalled();
print "indexer: $status\n";

exit;
