Difference between revisions of "Perl lib/EPrints/"

From EPrints Documentation
Jump to: navigation, search
m
(5 intermediate revisions by 3 users not shown)
Line 1: Line 1:
 +
{{dirs}}
 
{{noeditdir}}
 
{{noeditdir}}
  
Line 5: Line 6:
 
*'''[[EPrints_Directory_Structure/eprints3|eprints3]]/[[EPrints_Directory_Structure/eprints3/perl_lib|perl_lib]]/EPrints'''
 
*'''[[EPrints_Directory_Structure/eprints3|eprints3]]/[[EPrints_Directory_Structure/eprints3/perl_lib|perl_lib]]/EPrints'''
 
** '''Apache/'''
 
** '''Apache/'''
*** '''AnApache.pm''' -
+
*** '''AnApache.pm''' - Abstracts differences between apache and mod_perl versions.
*** '''Auth.pm''' -
+
*** '''Auth.pm''' - Handles authentication
*** '''LogHandler.pm''' -
+
*** '''LogHandler.pm''' - Logs accesses as [[Access Object]]s
*** '''Login.pm''' -
+
*** '''Login.pm''' - Handles the login screen
*** '''Rewrite.pm''' -
+
*** '''Rewrite.pm''' - Redirects and rewrites URLs in requests, as appropriate
*** '''Template.pm''' -
+
*** '''Template.pm''' - Handles applying the template to pages
*** '''VLit.pm''' -
+
*** '''VLit.pm''' - Handles the [[vlit]] feature.
** '''BackCompatibility.pm''' -
+
** '''BackCompatibility.pm''' - defines EPrints 2.3 function calls which call their 3.0 equivalents.
** '''Config.pm''' -
+
** '''Config.pm''' - Handles the configuration of the EPrints system itself
** '''DataObj/'''
+
** '''DataObj/''' - all classes in this dir are a subclass of [[API:EPrints/DataObj|EPrints::DataObj]]
*** '''Access.pm''' -
+
*** '''Access.pm''' - [[Access Object]]
*** '''Document.pm''' -
+
*** '''Document.pm''' - [[Document Object]]
*** '''EPrint.pm''' -
+
*** '''EPrint.pm''' - [[EPrint Object]]
*** '''History.pm''' -
+
*** '''History.pm''' - [[History Object]]
*** '''Request.pm''' -
+
*** '''Request.pm''' - [[Request Object]]
*** '''SavedSearch.pm''' -
+
*** '''SavedSearch.pm''' - [[Saved Search Object]]
*** '''Subject.pm''' -
+
*** '''Subject.pm''' - [[Subject Object]]
*** '''User.pm''' -
+
*** '''User.pm''' - [[User Object]]
** '''DataObj.pm''' -
+
** '''DataObj.pm''' - Base class for [[Data Object]]s
** '''DataSet.pm''' -
+
** '''DataSet.pm''' - Has one instance per repository for each type of [[Data Object]]
** '''Database.pm''' -
+
** '''Database.pm''' - Object connecting the repository to the database. Provides most database calls.
** '''Email.pm''' -
+
** '''Email.pm''' - Handles sending email messages.
** '''Extras.pm''' -
+
** '''Extras.pm''' - Handy functions. Nearly obselete.
** '''Index.pm''' -
+
** '''Index.pm''' - Handles text indexing and the indexer.
** '''Language.pm''' -
+
** '''Language.pm''' - Provides access to phrases.
** '''Latex.pm''' -
+
** '''Latex.pm''' - Latex rendering tools for functions and equations.
** '''List.pm''' -
+
** '''List.pm''' - A search result, or other list of [[Data Object]]s within a single [[Category:Data Objects#Dataset|Dataset]]
** '''[[EPrints_Directory_Structure/eprints3/perl_lib/EPrints/MetaField|MetaField/]]''' -
+
** '''[[EPrints_Directory_Structure/eprints3/perl_lib/EPrints/MetaField|MetaField/]]''' - Contains classes representing each type of metadata field.
** '''MetaField.pm''' -
+
** '''MetaField.pm''' - Base class for field objects. An instance of a metafield represents a single field in a [[Category:Data Objects#Dataset|Dataset]], not a field + a value.
** '''OpenArchives.pm''' -
+
** '''OpenArchives.pm''' - Handles OAI stuff.
 
** '''Paginate/'''  
 
** '''Paginate/'''  
*** '''Columns.pm''' -
+
*** '''Columns.pm''' - Subclass of EPrints::Paginate which renders the results as a spread sheet style list, and allows sorting by clicking titles.
** '''Paginate.pm''' -
+
** '''Paginate.pm''' - Paginate search results (eg. 20 items per page) in HTML
** '''Paracite.pm''' -
+
** '''Paracite.pm''' - Paracite interface
 
** '''Platform/'''
 
** '''Platform/'''
*** '''Unix.pm''' -
+
*** '''Unix.pm''' - UNIX specific functions
** '''Platform.pm''' -
+
** '''Platform.pm''' - Allows abstraction of methods which are operating system specific.
** '''[[EPrints_Directory_Structure/eprints3/perl_lib/EPrints/Plugin|Plugin/]]''' -
+
** '''[[EPrints_Directory_Structure/eprints3/perl_lib/EPrints/Plugin|Plugin/]]''' - The plugins directory.
** '''Plugin.pm''' -
+
** '''Plugin.pm''' - The base class (and loader) for all plugins.
** '''Probity.pm''' -
+
** '''Probity.pm''' - Handles producing checksum files for documents.
** '''Profiler.pm''' -
+
** '''Profiler.pm''' - ?
** '''Repository.pm''' -
+
** '''Repository.pm''' - An instance of this represents a single repository and has access to the configuration of that repository.
** '''ScreenProcessor.pm''' -
+
** '''ScreenProcessor.pm''' - Handles the Screen plugin interface
** '''Script.pm''' -
+
** '''Script.pm''' - Processes expressions in the mini-scripting language used in citation and workflows.
 
** '''Search/'''
 
** '''Search/'''
*** '''Condition.pm''' -
+
*** '''Condition.pm''' - Represents a single search condition (used internally)
*** '''Field.pm''' -
+
*** '''Field.pm''' - Represents a single search field (a row in the search interface). Has a value and a list of metadata fields to search.
** '''Search.pm''' -
+
** '''Search.pm''' - Represents a single search. Returns a List object when executed.
** '''Session.pm''' -
+
** '''Session.pm''' - A link between a web request (or command line script), a language, a database connection and a repository.
** '''StyleGuide.pm''' -
+
** '''StyleGuide.pm''' - Notes on how to write EPrints code.
** '''SystemSettings.pm''' -
+
** '''SystemSettings.pm''' - Created by the installation. Contains information on your apache version, where commands are to be found and where EPrints is installed.
** '''TempDir.pm''' -
+
** '''TempDir.pm''' - Creates and removes tmp directories.
** '''Time.pm''' -
+
** '''Time.pm''' - Functions related to time and date processing.
** '''Utils.pm''' -
+
** '''Utils.pm''' - Misc. functions.
 
** '''Workflow/'''
 
** '''Workflow/'''
 
*** '''Processor.pm''' -
 
*** '''Processor.pm''' -
Line 64: Line 65:
 
** '''Workflow.pm''' -
 
** '''Workflow.pm''' -
 
** '''XML/'''
 
** '''XML/'''
*** '''DOM.pm''' -
+
*** '''DOM.pm''' -  
*** '''EPC.pm''' -
+
*** '''EPC.pm''' - Code to handle processing the epc namespace: eg. <epc:if>
 
*** '''GDOME.pm''' -
 
*** '''GDOME.pm''' -
*** '''LibXML.pm''' -
+
*** '''LibXML.pm''' -  
** '''XML.pm''' -
+
** '''XML.pm''' - Abstraction to handle diferent XML libraries. (DOM, GDOME, LibXML)

Revision as of 01:54, 11 January 2022

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

DON'T EDIT THESE FILES....

Editing the contents of this directory is not recommended. See Read Only Directories.

This is a list of almost all the EPrints perl modules. We've not expanded the Plugins and MetaField directories as these are pretty big.

  • eprints3/perl_lib/EPrints
    • Apache/
      • AnApache.pm - Abstracts differences between apache and mod_perl versions.
      • Auth.pm - Handles authentication
      • LogHandler.pm - Logs accesses as Access Objects
      • Login.pm - Handles the login screen
      • Rewrite.pm - Redirects and rewrites URLs in requests, as appropriate
      • Template.pm - Handles applying the template to pages
      • VLit.pm - Handles the vlit feature.
    • BackCompatibility.pm - defines EPrints 2.3 function calls which call their 3.0 equivalents.
    • Config.pm - Handles the configuration of the EPrints system itself
    • DataObj/ - all classes in this dir are a subclass of EPrints::DataObj
    • DataObj.pm - Base class for Data Objects
    • DataSet.pm - Has one instance per repository for each type of Data Object
    • Database.pm - Object connecting the repository to the database. Provides most database calls.
    • Email.pm - Handles sending email messages.
    • Extras.pm - Handy functions. Nearly obselete.
    • Index.pm - Handles text indexing and the indexer.
    • Language.pm - Provides access to phrases.
    • Latex.pm - Latex rendering tools for functions and equations.
    • List.pm - A search result, or other list of Data Objects within a single
    • MetaField/ - Contains classes representing each type of metadata field.
    • MetaField.pm - Base class for field objects. An instance of a metafield represents a single field in a, not a field + a value.
    • OpenArchives.pm - Handles OAI stuff.
    • Paginate/
      • Columns.pm - Subclass of EPrints::Paginate which renders the results as a spread sheet style list, and allows sorting by clicking titles.
    • Paginate.pm - Paginate search results (eg. 20 items per page) in HTML
    • Paracite.pm - Paracite interface
    • Platform/
      • Unix.pm - UNIX specific functions
    • Platform.pm - Allows abstraction of methods which are operating system specific.
    • Plugin/ - The plugins directory.
    • Plugin.pm - The base class (and loader) for all plugins.
    • Probity.pm - Handles producing checksum files for documents.
    • Profiler.pm - ?
    • Repository.pm - An instance of this represents a single repository and has access to the configuration of that repository.
    • ScreenProcessor.pm - Handles the Screen plugin interface
    • Script.pm - Processes expressions in the mini-scripting language used in citation and workflows.
    • Search/
      • Condition.pm - Represents a single search condition (used internally)
      • Field.pm - Represents a single search field (a row in the search interface). Has a value and a list of metadata fields to search.
    • Search.pm - Represents a single search. Returns a List object when executed.
    • Session.pm - A link between a web request (or command line script), a language, a database connection and a repository.
    • StyleGuide.pm - Notes on how to write EPrints code.
    • SystemSettings.pm - Created by the installation. Contains information on your apache version, where commands are to be found and where EPrints is installed.
    • TempDir.pm - Creates and removes tmp directories.
    • Time.pm - Functions related to time and date processing.
    • Utils.pm - Misc. functions.
    • Workflow/
      • Processor.pm -
      • Stage.pm -
    • Workflow.pm -
    • XML/
      • DOM.pm -
      • EPC.pm - Code to handle processing the epc namespace: eg. <epc:if>
      • GDOME.pm -
      • LibXML.pm -
    • XML.pm - Abstraction to handle diferent XML libraries. (DOM, GDOME, LibXML)