Difference between revisions of "API:EPrints"

From EPrints Documentation
Jump to: navigation, search
 
(8 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
<!-- Pod2Wiki=_preamble_  
 
<!-- Pod2Wiki=_preamble_  
 
This page has been automatically generated from the EPrints 3.2 source. Any wiki changes made between the 'Pod2Wiki=*' and 'Edit below this comment' comments will be lost.
 
This page has been automatically generated from the EPrints 3.2 source. Any wiki changes made between the 'Pod2Wiki=*' and 'Edit below this comment' comments will be lost.
−
  -->{{API}}{{Pod2Wiki}}{{API:Source|file=EPrints.pm|package_name=EPrints}}[[Category:API|EPrints]]<div><!-- Edit below this comment -->
+
  -->{{API}}{{Pod2Wiki}}{{API:Source|file=EPrints|package_name=EPrints}}[[Category:API|EPRINTS]]<div><!-- Edit below this comment -->
  
  
 
<!-- Pod2Wiki=_private_ --><!-- Pod2Wiki=head_name -->
 
<!-- Pod2Wiki=_private_ --><!-- Pod2Wiki=head_name -->
 
==NAME==
 
==NAME==
−
'''EPrints''' - Institutional Repository software
+
EPrints - Institutional Repository software
  
−
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
 
−
<span style='display:none'>User Comments</span>
 
 
<!-- Edit below this comment -->
 
<!-- Edit below this comment -->
  
  
 
<!-- Pod2Wiki= -->
 
<!-- Pod2Wiki= -->
−
</div>
 
−
 
−
<!-- Pod2Wiki= -->
 
−
</div>
 
 
<!-- Pod2Wiki=head_synopsis -->
 
<!-- Pod2Wiki=head_synopsis -->
 
==SYNOPSIS==
 
==SYNOPSIS==
−
  use EPrints qw();
+
<source lang="perl">use EPrints qw();
−
 
+
 
−
  my $session = EPrints::Session-&gt;new( 1, "demoprints" );
+
# don't check current user (CLI only)
−
 
+
use EPrints qw( no_check_user );
−
  ...
+
 
−
 
+
$eprints = EPrints->new;
−
  $session-&gt;terminate;
+
 
−
 
+
# CLI
−
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
+
$repo = $eprints->repository( "demoprints" );
−
<span style='display:none'>User Comments</span>
+
 
 +
# CGI
 +
$repo = $eprints->current_repository;
 +
 
 +
if( EPrints->VERSION() gt v3.2.0 )
 +
{
 +
...
 +
}</source>
 +
 
 
<!-- Edit below this comment -->
 
<!-- Edit below this comment -->
  
  
 
<!-- Pod2Wiki= -->
 
<!-- Pod2Wiki= -->
−
</div>
 
−
 
−
<!-- Pod2Wiki= -->
 
−
</div>
 
 
<!-- Pod2Wiki=head_description -->
 
<!-- Pod2Wiki=head_description -->
 
==DESCRIPTION==
 
==DESCRIPTION==
 
See http://www.eprints.org/.
 
See http://www.eprints.org/.
  
−
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
 
−
<span style='display:none'>User Comments</span>
 
 
<!-- Edit below this comment -->
 
<!-- Edit below this comment -->
  
  
 
<!-- Pod2Wiki= -->
 
<!-- Pod2Wiki= -->
−
</div>
 
−
 
−
<!-- Pod2Wiki= -->
 
−
</div>
 
 
<!-- Pod2Wiki=head_available_symbols -->
 
<!-- Pod2Wiki=head_available_symbols -->
 
===Available Symbols===
 
===Available Symbols===
 
You can pass options to the EPrints package that effect the EPrints initialisation e.g.
 
You can pass options to the EPrints package that effect the EPrints initialisation e.g.
  
−
  use EPrints qw( no_check_user );
+
<pre>  use EPrints qw( no_check_user );</pre>
−
 
+
 
−
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
+
* no_check_user
−
<span style='display:none'>User Comments</span>
+
: Do not check the current user/group is the same as the user/group in SystemSettings.
 +
 
 
<!-- Edit below this comment -->
 
<!-- Edit below this comment -->
  
  
 
<!-- Pod2Wiki= -->
 
<!-- Pod2Wiki= -->
−
</div>
+
<!-- Pod2Wiki=head_debugging -->
−
 
+
===Debugging===
−
<!-- Pod2Wiki= -->
+
To get a full stack trace on errors and warnings use {{API:PodLink|file=Carp|package_name=Carp|section=|text=Carp}}'s verbose mode. E.g. in ''perl_lib/EPrints/SystemSettings.pm'' add:
−
</div>
 
−
<!-- Pod2Wiki=item_no_check_user -->
 
−
====no_check_user====
 
  
−
Do not check the current user/group is the same as the user/group in Systemsettings.
+
<pre>  use Carp 'verbose';</pre>
  
−
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
 
−
<span style='display:none'>User Comments</span>
 
 
<!-- Edit below this comment -->
 
<!-- Edit below this comment -->
  
  
 
<!-- Pod2Wiki= -->
 
<!-- Pod2Wiki= -->
−
</div>
+
<!-- Pod2Wiki=head_methods -->
−
 
+
==METHODS==
−
<!-- Pod2Wiki= -->
+
<!-- Pod2Wiki=head_VERSION -->
−
</div>
+
===VERSION===
−
<!-- Pod2Wiki=head_debugging_slow_processes -->
 
−
===Debugging Slow Processes===
 
−
This module installs a signal handler that will print a stack trace if given a USR2 signal (if your system supports this signal). To print a stack trace to the error log execute:
 
  
−
$ kill -USR2 PID
+
<source lang="perl">$version = EPrints->VERSION()
−
 
 
−
Where PID is the id number of the stalled process.
 
  
−
A shell script will print the stack trace to the console.
+
</source>
 +
Returns the version of EPrints in 'v' format (this is the UNIVERSAL method).
  
−
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
 
−
<span style='display:none'>User Comments</span>
 
 
<!-- Edit below this comment -->
 
<!-- Edit below this comment -->
  
  
 
<!-- Pod2Wiki= -->
 
<!-- Pod2Wiki= -->
−
</div>
+
<!-- Pod2Wiki=head_human_version -->
 +
===human_version===
 +
 
 +
<source lang="perl">EPrints->human_version()
 +
 
 +
</source>
 +
Returns the EPrints version in a human-readable form.
  
−
<!-- Pod2Wiki= -->
 
−
</div>
 
−
<!-- Pod2Wiki=head_methods -->
 
−
==METHODS==
 
−
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
 
−
<span style='display:none'>User Comments</span>
 
 
<!-- Edit below this comment -->
 
<!-- Edit below this comment -->
  
  
 
<!-- Pod2Wiki= -->
 
<!-- Pod2Wiki= -->
−
</div>
+
<!-- Pod2Wiki=head_abort -->
 +
===abort===
  
−
<!-- Pod2Wiki= -->
+
<source lang="perl">EPrints->abort( $errmsg )
−
</div>
 
−
<!-- Pod2Wiki=item_abort -->
 
−
===EPrints-&gt;abort( $errmsg )===
 
  
−
Print an error message and exit. If running under mod_perl then print the error as a webpage and exit.
+
</source>
 +
This subroutine is loaded before other modules so that it may be used to report errors when initialising modules.
  
−
This subroutine is loaded before other modules so that it may be used to report errors when initialising modules.
+
When running under Mod_Perl this method is replaced.
  
−
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
 
−
<span style='display:none'>User Comments</span>
 
 
<!-- Edit below this comment -->
 
<!-- Edit below this comment -->
  
  
 
<!-- Pod2Wiki= -->
 
<!-- Pod2Wiki= -->
−
</div>
+
<!-- Pod2Wiki=head_dump -->
 +
===dump===
  
−
<!-- Pod2Wiki= -->
+
<source lang="perl">EPrints->dump( $VAR1 [, $VAR2 ... ] )
−
</div>
 
−
<!-- Pod2Wiki=item_new -->
 
−
===$ep = EPrints-&gt;new();===
 
  
−
Construct a new EPrints system object.
+
</source>
 +
Use {{API:PodLink|file=Data/Dumper|package_name=Data::Dumper|section=|text=Data::Dumper}} to dump the passed variables to STDERR.
  
−
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
 
−
<span style='display:none'>User Comments</span>
 
 
<!-- Edit below this comment -->
 
<!-- Edit below this comment -->
  
  
 
<!-- Pod2Wiki= -->
 
<!-- Pod2Wiki= -->
−
</div>
+
<!-- Pod2Wiki=head_new -->
 +
===new===
  
−
<!-- Pod2Wiki= -->
+
<source lang="perl">$ep = EPrints->new();
−
</div>
 
−
<!-- Pod2Wiki=item_repository -->
 
−
===$repo = $ep-&gt;repository( $repository_id, %options );===
 
  
−
Return the repository with the given ID, or undef. Options are... optional.
+
</source>
−
 
+
Construct a new EPrints system object.
−
Options noise=&gt;1, etc.
 
  
−
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
 
−
<span style='display:none'>User Comments</span>
 
 
<!-- Edit below this comment -->
 
<!-- Edit below this comment -->
  
  
 
<!-- Pod2Wiki= -->
 
<!-- Pod2Wiki= -->
−
</div>
+
<!-- Pod2Wiki=head_repository -->
 +
===repository===
  
−
<!-- Pod2Wiki= -->
+
<source lang="perl">$repo = $ep->repository( $repository_id, [%options] );
−
</div>
 
−
<!-- Pod2Wiki=item_current_repository -->
 
−
===$repo = $ep-&gt;current_repository( %options );===
 
  
−
Return the repository based on the current web request, or undef.
+
</source>
 +
Return the [[API:EPrints/Repository|EPrints::Repository]] with the given ID, or undef. Options are... optional.
  
−
%options as for $ep-&gt;repository(..)
+
Options noise=&gt;1, etc.
  
−
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
 
−
<span style='display:none'>User Comments</span>
 
 
<!-- Edit below this comment -->
 
<!-- Edit below this comment -->
  
  
 
<!-- Pod2Wiki= -->
 
<!-- Pod2Wiki= -->
−
</div>
+
<!-- Pod2Wiki=head_current_repository -->
 +
===current_repository===
 +
 
 +
<source lang="perl">$repo = $ep->current_repository();
  
−
<!-- Pod2Wiki= -->
+
</source>
−
</div>
+
Returns the current [[API:EPrints/Repository|EPrints::Repository]]. The current  repository is determined by the apache request.
−
<!-- Pod2Wiki=item_repository_ids -->
 
−
===@ids = $eprints-&gt;repository_ids===
 
  
−
Returns a list of the active repository ids.
+
Returns undef if there is no current repository active.
  
−
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
 
−
<span style='display:none'>User Comments</span>
 
 
<!-- Edit below this comment -->
 
<!-- Edit below this comment -->
  
  
 
<!-- Pod2Wiki= -->
 
<!-- Pod2Wiki= -->
−
</div>
+
<!-- Edit below this comment -->
 +
 
  
 
<!-- Pod2Wiki= -->
 
<!-- Pod2Wiki= -->
−
</div>
 
 
<!-- Pod2Wiki=head_see_also -->
 
<!-- Pod2Wiki=head_see_also -->
 
==SEE ALSO==
 
==SEE ALSO==
−
[[API:EPrints/Session|EPrints::Session]]
+
[[API:EPrints/Repository|EPrints::Repository]]
  
−
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
 
−
<span style='display:none'>User Comments</span>
 
 
<!-- Edit below this comment -->
 
<!-- Edit below this comment -->
  
  
 
<!-- Pod2Wiki= -->
 
<!-- Pod2Wiki= -->
−
</div>
 
−
 
−
<!-- Pod2Wiki= -->
 
−
</div>
 
 
<!-- Pod2Wiki=head_copyright -->
 
<!-- Pod2Wiki=head_copyright -->
 
==COPYRIGHT==
 
==COPYRIGHT==
−
__COPYRIGHT__
+
Copyright 2000-2011 University of Southampton.
 +
 
 +
This file is part of EPrints &lt;http://www.eprints.org/&gt;.
 +
 
 +
EPrints is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
 +
 
 +
EPrints 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 Lesser General Public License for more details.
  
−
Copyright 2000-2008 University of Southampton. All Rights Reserved.
+
You should have received a copy of the GNU Lesser General Public License along with EPrints. If not, see &lt;http://www.gnu.org/licenses/&gt;.
  
−
__LICENSE__
 
−
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
 
−
<span style='display:none'>User Comments</span>
 
 
<!-- Edit below this comment -->
 
<!-- Edit below this comment -->
  
  
 
<!-- Pod2Wiki= -->
 
<!-- Pod2Wiki= -->
−
</div>
+
<!-- Pod2Wiki=_postamble_ -->
−
 
+
<!-- Edit below this comment -->
−
<!-- Pod2Wiki= -->
 
−
</div>
 
−
<!-- Pod2Wiki=_postamble_ --><!-- Edit below this comment -->
 

Latest revision as of 09:56, 22 January 2013

EPrints 3 Reference: Directory Structure - Metadata Fields - Repository Configuration - XML Config Files - XML Export Format - EPrints data structure - Core API - Data Objects


API: Core API

Latest Source Code (3.4, 3.3) | Revision Log | Before editing this page please read Pod2Wiki


NAME

EPrints - Institutional Repository software


SYNOPSIS

use EPrints qw();

# don't check current user (CLI only)
use EPrints qw( no_check_user );

$eprints = EPrints->new;

# CLI
$repo = $eprints->repository( "demoprints" );

# CGI
$repo = $eprints->current_repository;

if( EPrints->VERSION() gt v3.2.0 )
{
	...
}


DESCRIPTION

See http://www.eprints.org/.


Available Symbols

You can pass options to the EPrints package that effect the EPrints initialisation e.g.

  use EPrints qw( no_check_user );
  • no_check_user
Do not check the current user/group is the same as the user/group in SystemSettings.


Debugging

To get a full stack trace on errors and warnings use Carp's verbose mode. E.g. in perl_lib/EPrints/SystemSettings.pm add:

  use Carp 'verbose';


METHODS

VERSION

$version = EPrints->VERSION()

Returns the version of EPrints in 'v' format (this is the UNIVERSAL method).


human_version

EPrints->human_version()

Returns the EPrints version in a human-readable form.


abort

EPrints->abort( $errmsg )

This subroutine is loaded before other modules so that it may be used to report errors when initialising modules.

When running under Mod_Perl this method is replaced.


dump

EPrints->dump( $VAR1 [, $VAR2 ... ] )

Use Data::Dumper to dump the passed variables to STDERR.


new

$ep = EPrints->new();

Construct a new EPrints system object.


repository

$repo = $ep->repository( $repository_id, [%options] );

Return the EPrints::Repository with the given ID, or undef. Options are... optional.

Options noise=>1, etc.


current_repository

$repo = $ep->current_repository();

Returns the current EPrints::Repository. The current repository is determined by the apache request.

Returns undef if there is no current repository active.



SEE ALSO

EPrints::Repository


COPYRIGHT

Copyright 2000-2011 University of Southampton.

This file is part of EPrints <http://www.eprints.org/>.

EPrints is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

EPrints 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 Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with EPrints. If not, see <http://www.gnu.org/licenses/>.