Difference between revisions of "API:EPrints/Const"

From EPrints Documentation
Jump to: navigation, search
Line 44: Line 44:
 
===:namespace===
 
===:namespace===
 
* EP_NS_CITATION
 
* EP_NS_CITATION
*: http://eprints.org/ep3/citation
+
: http://eprints.org/ep3/citation
  
 
* EP_NS_DATA
 
* EP_NS_DATA
*: http://eprints.org/ep2/data/2.0
+
: http://eprints.org/ep2/data/2.0
  
 
* EP_NS_XSLT
 
* EP_NS_XSLT
*: http://eprints.org/ep2/xslt/1.0
+
: http://eprints.org/ep2/xslt/1.0
  
 
* EP_NS_OPENSEARCH
 
* EP_NS_OPENSEARCH
*: http://a9.com/-/spec/opensearch/1.1/
+
: http://a9.com/-/spec/opensearch/1.1/
  
 
<!-- Edit below this comment -->
 
<!-- Edit below this comment -->
Line 94: Line 94:
  
 
* EP_TRIGGER_DONE
 
* EP_TRIGGER_DONE
*: Stop processing triggers immediately and return.
+
: Stop processing triggers immediately and return.
  
 
* EP_TRIGGER_OK
 
* EP_TRIGGER_OK
*: Continue normal processing.
+
: Continue normal processing.
  
 
* EP_TRIGGER_LOG
 
* EP_TRIGGER_LOG
Line 104: Line 104:
 
* EP_TRIGGER_BEGIN
 
* EP_TRIGGER_BEGIN
 
* EP_TRIGGER_BEGIN_REQUEST
 
* EP_TRIGGER_BEGIN_REQUEST
*: Called after [[API:EPrints/Repository#init_from_request|EPrints::Repository/init_from_request]].
+
: Called after [[API:EPrints/Repository#init_from_request|EPrints::Repository/init_from_request]].
  
 
* EP_TRIGGER_END_REQUEST
 
* EP_TRIGGER_END_REQUEST
*: Called just before [[API:EPrints/Repository#cleanup|EPrints::Repository/cleanup]] in response to a mod_perl request.
+
: Called just before [[API:EPrints/Repository#cleanup|EPrints::Repository/cleanup]] in response to a mod_perl request.
  
 
* EP_TRIGGER_END
 
* EP_TRIGGER_END
 
* EP_TRIGGER_URL_REWRITE
 
* EP_TRIGGER_URL_REWRITE
*: Called for every request that is within the repository's path. Use this to redirect the user to a different location. <code>return_code</code> is a scalar reference, therefore you must deference when assigning a new value <code>${$rc} = CODE</code>.
+
: Called for every request that is within the repository's path. Use this to redirect the user to a different location. <code>return_code</code> is a scalar reference, therefore you must deference when assigning a new value <code>${$rc} = CODE</code>.
  
 
<pre>  request - mod_perl request object
 
<pre>  request - mod_perl request object
Line 124: Line 124:
 
* EP_TRIGGER_DOC_URL_REWRITE
 
* EP_TRIGGER_DOC_URL_REWRITE
 
* EP_TRIGGER_CREATED
 
* EP_TRIGGER_CREATED
*: Called after $dataset-&gt;create_dataobj( { ... } ).
+
: Called after $dataset-&gt;create_dataobj( { ... } ).
  
 
<pre>  dataobj - the newly created dataobj</pre>
 
<pre>  dataobj - the newly created dataobj</pre>
  
 
* EP_TRIGGER_REMOVED
 
* EP_TRIGGER_REMOVED
*: Called just before the object is removed from the database.
+
: Called just before the object is removed from the database.
  
 
<pre>  dataobj - the object being removed</pre>
 
<pre>  dataobj - the object being removed</pre>
 +
 +
* EP_TRIGGER_DUPLICATE_SEARCH
 +
: Search for duplicate entries of the given data object. Triggers must be quick and conservative i.e. only return duplicates that are very likely candidates. '''ids''' is a list of object identifiers of the duplicate records.
 +
 +
<pre>  dataset = EPrints::DataSet
 +
  dataobj = EPrints::DataObj
 +
  ids = ARRAY</pre>
  
 
* EP_TRIGGER_RDF
 
* EP_TRIGGER_RDF
Line 140: Line 147:
 
* EP_TRIGGER_VALIDATE
 
* EP_TRIGGER_VALIDATE
 
* EP_TRIGGER_VALIDATE_FIELD
 
* EP_TRIGGER_VALIDATE_FIELD
*: Validate a field's value.
+
: Validate a field's value.
  
 
<pre>  field - field to validate
 
<pre>  field - field to validate
Line 150: Line 157:
 
* EP_TRIGGER_FILES_MODIFIED
 
* EP_TRIGGER_FILES_MODIFIED
 
* EP_TRIGGER_MEDIA_INFO
 
* EP_TRIGGER_MEDIA_INFO
*: Populate a Document epdata structure with information about a file.
+
: Populate a Document epdata structure with information about a file.
  
 
<pre>  epdata
 
<pre>  epdata
Line 157: Line 164:
  
 
* EP_TRIGGER_THUMBNAIL_TYPES
 
* EP_TRIGGER_THUMBNAIL_TYPES
*: Manipulate the list of thumbnail types that will be generated for a given user-uploaded document.
+
: Manipulate the list of thumbnail types that will be generated for a given user-uploaded document.
  
 
<pre>  types - array reference of types (strings)
 
<pre>  types - array reference of types (strings)
Line 163: Line 170:
  
 
* EP_TRIGGER_INDEX_FIELDS
 
* EP_TRIGGER_INDEX_FIELDS
*: Add the changed fields for the given data object to the index engine(s).
+
: Add the changed fields for the given data object to the index engine(s).
  
 
<pre>  dataobj = EPrints::DataObj
 
<pre>  dataobj = EPrints::DataObj
Line 169: Line 176:
  
 
* EP_TRIGGER_INDEX_REMOVED
 
* EP_TRIGGER_INDEX_REMOVED
*: An object was removed and should now be removed from the index engine(s).
+
: An object was removed and should now be removed from the index engine(s).
  
 
<pre>  dataset = EPrints::DataSet
 
<pre>  dataset = EPrints::DataSet
Line 175: Line 182:
  
 
* EP_TRIGGER_DYNAMIC_TEMPLATE
 
* EP_TRIGGER_DYNAMIC_TEMPLATE
*: Manipulate parts included in the template. These will be called for every page impression, so don't do anything heavyweight in here.
+
: Manipulate parts included in the template. These will be called for every page impression, so don't do anything heavyweight in here.
  
 
<pre>  pins - hash ref of template pins</pre>
 
<pre>  pins - hash ref of template pins</pre>
Line 186: Line 193:
 
<!-- Pod2Wiki= -->
 
<!-- Pod2Wiki= -->
 
* EP_PROPERTY_FROM_CONFIG
 
* EP_PROPERTY_FROM_CONFIG
*: Get the default value from field defaults in the config.
+
: Get the default value from field defaults in the config.
  
 
* EP_PROPERTY_NO_CHANGE
 
* EP_PROPERTY_NO_CHANGE
*: Don't use a default, the code may have already set this value. setting it to undef has no effect rather than setting it to default value.
+
: Don't use a default, the code may have already set this value. setting it to undef has no effect rather than setting it to default value.
  
 
* EP_PROPERTY_REQUIRED
 
* EP_PROPERTY_REQUIRED
*: This field property must be explicitly set.
+
: This field property must be explicitly set.
  
 
* EP_PROPERTY_UNDEF
 
* EP_PROPERTY_UNDEF
*: This field property defaults to undef.
+
: This field property defaults to undef.
  
 
* EP_PROPERTY_TRUE
 
* EP_PROPERTY_TRUE
*: This field property defaults to true.
+
: This field property defaults to true.
  
 
* EP_PROPERTY_FALSE
 
* EP_PROPERTY_FALSE
*: This field property defaults to false.
+
: This field property defaults to false.
  
 
<!-- Pod2Wiki=head_crypt -->
 
<!-- Pod2Wiki=head_crypt -->
Line 212: Line 219:
 
<!-- Pod2Wiki= -->
 
<!-- Pod2Wiki= -->
 
* EP_CRYPT_CRYPT
 
* EP_CRYPT_CRYPT
*: {{API:PodLink|file=perlfunc|package_name=perlfunc|section=crypt|text=perlfunc/crypt}}.
+
: {{API:PodLink|file=perlfunc|package_name=perlfunc|section=crypt|text=perlfunc/crypt}}.
  
 
* EP_CRYPT_SHA512
 
* EP_CRYPT_SHA512
*: {{API:PodLink|file=Digest/SHA|package_name=Digest::SHA|section=|text=Digest::SHA}} sha512 with 2-byte salt and 10000 rounds.
+
: {{API:PodLink|file=Digest/SHA|package_name=Digest::SHA|section=|text=Digest::SHA}} sha512 with 2-byte salt and 10000 rounds.
  
 
<!-- Edit below this comment -->
 
<!-- Edit below this comment -->

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::Const - constants and enumerations


SYNOPSIS

# don't import any constants
use EPrints::Const qw();

# import trigger and http constants
use EPrints::Const qw( :trigger :http );

# import only the OK DONE DECLINED constants
use EPrints::Const qw( OK DONE DECLINED );


DESCRIPTION

This module contains EPrints constants and enumerations.


CONSTANTS

:namespace

  • EP_NS_CITATION
http://eprints.org/ep3/citation
  • EP_NS_DATA
http://eprints.org/ep2/data/2.0
  • EP_NS_XSLT
http://eprints.org/ep2/xslt/1.0
  • EP_NS_OPENSEARCH
http://a9.com/-/spec/opensearch/1.1/


:xml

  • XML_ELEMENT_NODE
  • XML_ATTRIBUTE_NODE
  • XML_TEXT_NODE
  • XML_CDATA_SECTION_NODE
  • XML_ENTITY_REFERENCE_NODE
  • XML_ENTITY_NODE
  • XML_PROCESSING_INSTRUCTION_NODE
  • XML_COMMENT_NODE
  • XML_DOCUMENT_NODE
  • XML_DOCUMENT_TYPE_NODE
  • XML_DOCUMENT_FRAGMENT_NODE
  • XML_NOTATION_NODE


:http

  • DONE
  • DECLINED
  • NOT_FOUND
  • OK

And all HTTP_* constants defined by Apache2::Const.


:trigger

See EPrints::RepositoryConfig/add_trigger and EPrints::RepositoryConfig/add_dataset_trigger.

  • EP_TRIGGER_DONE
Stop processing triggers immediately and return.
  • EP_TRIGGER_OK
Continue normal processing.
  • EP_TRIGGER_LOG
  • EP_TRIGGER_BOILERPLATE_RDF
  • EP_TRIGGER_REPOSITORY_RDF
  • EP_TRIGGER_BEGIN
  • EP_TRIGGER_BEGIN_REQUEST
Called after EPrints::Repository/init_from_request.
  • EP_TRIGGER_END_REQUEST
Called just before EPrints::Repository/cleanup in response to a mod_perl request.
  • EP_TRIGGER_END
  • EP_TRIGGER_URL_REWRITE
Called for every request that is within the repository's path. Use this to redirect the user to a different location. return_code is a scalar reference, therefore you must deference when assigning a new value ${$rc} = CODE.
  request - mod_perl request object
  lang - current language id
  args - request arguments "?..."
  urlpath - EPrint's HTTP root
  cgipath - EPrints's HTTP cgi root
  uri - request uri "/eprints/12/"
  secure - whether under HTTPS
  return_code - reference to return code
  • EP_TRIGGER_DOC_URL_REWRITE
  • EP_TRIGGER_CREATED
Called after $dataset->create_dataobj( { ... } ).
  dataobj - the newly created dataobj
  • EP_TRIGGER_REMOVED
Called just before the object is removed from the database.
  dataobj - the object being removed
  • EP_TRIGGER_DUPLICATE_SEARCH
Search for duplicate entries of the given data object. Triggers must be quick and conservative i.e. only return duplicates that are very likely candidates. ids is a list of object identifiers of the duplicate records.
  dataset = EPrints::DataSet
  dataobj = EPrints::DataObj
  ids = ARRAY
  • EP_TRIGGER_RDF
  • EP_TRIGGER_DEFAULTS
  • EP_TRIGGER_STATUS_CHANGE
  • EP_TRIGGER_BEFORE_COMMIT
  • EP_TRIGGER_AFTER_COMMIT
  • EP_TRIGGER_VALIDATE
  • EP_TRIGGER_VALIDATE_FIELD
Validate a field's value.
  field - field to validate
  value - value to validate
  dataobj - parent dataobj (if available)
  problems - ARRAYREF of DOM problems encountered
  • EP_TRIGGER_WARNINGS
  • EP_TRIGGER_FILES_MODIFIED
  • EP_TRIGGER_MEDIA_INFO
Populate a Document epdata structure with information about a file.
  epdata
  filename
  filepath
  • EP_TRIGGER_THUMBNAIL_TYPES
Manipulate the list of thumbnail types that will be generated for a given user-uploaded document.
  types - array reference of types (strings)
  dataobj - document object
  • EP_TRIGGER_INDEX_FIELDS
Add the changed fields for the given data object to the index engine(s).
  dataobj = EPrints::DataObj
  fields = ARRAYREF of field objects
  • EP_TRIGGER_INDEX_REMOVED
An object was removed and should now be removed from the index engine(s).
  dataset = EPrints::DataSet
  id = object id
  • EP_TRIGGER_DYNAMIC_TEMPLATE
Manipulate parts included in the template. These will be called for every page impression, so don't do anything heavyweight in here.
  pins - hash ref of template pins

:metafield

  • EP_PROPERTY_FROM_CONFIG
Get the default value from field defaults in the config.
  • EP_PROPERTY_NO_CHANGE
Don't use a default, the code may have already set this value. setting it to undef has no effect rather than setting it to default value.
  • EP_PROPERTY_REQUIRED
This field property must be explicitly set.
  • EP_PROPERTY_UNDEF
This field property defaults to undef.
  • EP_PROPERTY_TRUE
This field property defaults to true.
  • EP_PROPERTY_FALSE
This field property defaults to false.

:crypt

One-way encryption methods for passwords, see EPrints::Utils/crypt.


  • EP_CRYPT_CRYPT
perlfunc/crypt.
  • EP_CRYPT_SHA512
Digest::SHA sha512 with 2-byte salt and 10000 rounds.


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/.