⧼vector-jumptocontent⧽

API:EPrints/Config: Difference between revisions

From EPrints Documentation
No edit summary
No edit summary
Line 16: Line 16:
This module handles loading the main configuration for an instance of the eprints software - such as the list of language id's and  the top level configurations for repositories - the XML files in /archives/
This module handles loading the main configuration for an instance of the eprints software - such as the list of language id's and  the top level configurations for repositories - the XML files in /archives/


<!-- Edit below this comment -->
<!-- Pod2Wiki= -->
<!-- Pod2Wiki=head_methods -->
==METHODS==
<!-- Edit below this comment -->
<!-- Edit below this comment -->


Line 28: Line 22:
<!-- Pod2Wiki=head_deprecated_methods -->
<!-- Pod2Wiki=head_deprecated_methods -->
===Deprecated Methods===
===Deprecated Methods===
EPrints::Config::abort
* EPrints::Config::abort
Deprecated, use [[API:EPrints|EPrints]]::abort.
: Deprecated, use [[API:EPrints|EPrints]]::abort.


EPrints::Config::get_archive_config
* EPrints::Config::get_archive_config
EPrints::Config::get_archive_ids
* EPrints::Config::get_archive_ids
EPrints::Config::load_archive_config_module
* EPrints::Config::load_archive_config_module
Deprecated, use *_repository_*.
: Deprecated, use *_repository_*.


<!-- Edit below this comment -->
<!-- Edit below this comment -->
Line 40: Line 34:


<!-- Pod2Wiki= -->
<!-- Pod2Wiki= -->
<!-- Pod2Wiki=head_normal_methods -->
<!-- Pod2Wiki=head_methods -->
===Normal Methods===
==METHODS==
EPrints::Config::init()
<!-- Pod2Wiki=head_init -->
===init===
 
<source lang="perl">EPrints::Config::init()
 
</source>
Load the EPrints configuration.
Load the EPrints configuration.


Line 56: Line 55:
   var_path /var</pre>
   var_path /var</pre>


EPrints::Config::load_system_config()
<!-- Edit below this comment -->
 
 
<!-- Pod2Wiki= -->
<!-- Pod2Wiki=head_load_system_config -->
===load_system_config===
 
<source lang="perl">EPrints::Config::load_system_config()
 
</source>
Load the system configuration files.
Load the system configuration files.


Line 64: Line 72:
   /lib/syscfg.d</pre>
   /lib/syscfg.d</pre>


$conf = EPrints::Config::system_config()
<!-- Edit below this comment -->
 
 
<!-- Pod2Wiki= -->
<!-- Pod2Wiki=head_system_config -->
===system_config===
 
<source lang="perl">$conf = EPrints::Config::system_config()
 
</source>
Returns the system configuration variable. To access a specific configuration option use [[API:EPrints/Config#get|get]].
Returns the system configuration variable. To access a specific configuration option use [[API:EPrints/Config#get|get]].


$repository = EPrints::Config::get_repository_config( $id )
<!-- Edit below this comment -->
 
 
<!-- Pod2Wiki= -->
<!-- Pod2Wiki=head_get_repository_config -->
===get_repository_config===
 
<source lang="perl">$repository = EPrints::Config::get_repository_config( $id )
 
</source>
Returns a hash of the basic configuration for the repository with the given id. This hash will include the properties from SystemSettings.
Returns a hash of the basic configuration for the repository with the given id. This hash will include the properties from SystemSettings.


@ids = EPrints::Config::get_repository_ids()
<!-- Edit below this comment -->
 
 
<!-- Pod2Wiki= -->
<!-- Pod2Wiki=head_get_repository_ids -->
===get_repository_ids===
 
<source lang="perl">@ids = EPrints::Config::get_repository_ids()
 
</source>
Return a list of ids of all repositories belonging to this instance of the eprints software.
Return a list of ids of all repositories belonging to this instance of the eprints software.


$arc_conf = EPrints::Config::load_repository_config_module( $id )
<!-- Edit below this comment -->
 
 
<!-- Pod2Wiki= -->
<!-- Pod2Wiki=head_load_repository_config_module -->
===load_repository_config_module===
 
<source lang="perl">$arc_conf = EPrints::Config::load_repository_config_module( $id )
 
</source>
Load the full configuration for the specified repository.
Load the full configuration for the specified repository.


Line 92: Line 136:
   cgi_path      archives/[archiveid]/cgi</pre>
   cgi_path      archives/[archiveid]/cgi</pre>


$value = EPrints::Config::get( $confitem )
<!-- Edit below this comment -->
 
 
<!-- Pod2Wiki= -->
<!-- Pod2Wiki=head_get -->
===get===
 
<source lang="perl">$value = EPrints::Config::get( $confitem )
 
</source>
Return the value of a given eprints configuration item. These values are obtained from SystemSettings plus a few extras for paths.
Return the value of a given eprints configuration item. These values are obtained from SystemSettings plus a few extras for paths.


$ok = EPrints::Config::write_config( $dest, $names, $values )
<!-- Edit below this comment -->
 
 
<!-- Pod2Wiki= -->
<!-- Pod2Wiki=head_write_config -->
===write_config===
 
<source lang="perl">$ok = EPrints::Config::write_config( $dest, $names, $values )
 
</source>
Write name-value pairs to a configuration file $dest (overwriting any existing data). This uses [[API:EPrints/Dumper|EPrints::Dumper]] to serialise the passed Perl structures.
Write name-value pairs to a configuration file $dest (overwriting any existing data). This uses [[API:EPrints/Dumper|EPrints::Dumper]] to serialise the passed Perl structures.



Revision as of 14:58, 30 July 2013

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


NAME

EPrints::Config - software configuration handler


DESCRIPTION

This module handles loading the main configuration for an instance of the eprints software - such as the list of language id's and the top level configurations for repositories - the XML files in /archives/


Deprecated Methods

  • EPrints::Config::abort
Deprecated, use EPrints::abort.
  • EPrints::Config::get_archive_config
  • EPrints::Config::get_archive_ids
  • EPrints::Config::load_archive_config_module
Deprecated, use *_repository_*.


METHODS

init

EPrints::Config::init()

Load the EPrints configuration.

Do not use this method directly, it will be automatically called when using EPrints.

Defines the following configuration properties:

  cgi_path /cgi
  cfg_path /cfg
  lib_path /lib
  arc_path /archives
  bin_path /bin
  var_path /var


load_system_config

EPrints::Config::load_system_config()

Load the system configuration files.

Configuration files are loaded in order from (later files with the same name will be ignored):

  /cfg/cfg.d
  /lib/syscfg.d


system_config

$conf = EPrints::Config::system_config()

Returns the system configuration variable. To access a specific configuration option use get.


get_repository_config

$repository = EPrints::Config::get_repository_config( $id )

Returns a hash of the basic configuration for the repository with the given id. This hash will include the properties from SystemSettings.


get_repository_ids

@ids = EPrints::Config::get_repository_ids()

Return a list of ids of all repositories belonging to this instance of the eprints software.


load_repository_config_module

$arc_conf = EPrints::Config::load_repository_config_module( $id )

Load the full configuration for the specified repository.

Returns a reference to a hash containing the full repository configuration.

Configuration files are loaded in order from (later files with the same name will be ignored):

  archives/[archiveid]/cfg/cfg.d
  site_lib/cfg.d
  lib/cfg.d

Defines the following configuration properties:

  archiveroot    archives/[archiveid]
  documents_path archives/[archiveid]/documents
  config_path    archives/[archiveid]/cfg
  htdocs_path    archives/[archiveid]/html
  cgi_path       archives/[archiveid]/cgi


get

$value = EPrints::Config::get( $confitem )

Return the value of a given eprints configuration item. These values are obtained from SystemSettings plus a few extras for paths.


write_config

$ok = EPrints::Config::write_config( $dest, $names, $values )

Write name-value pairs to a configuration file $dest (overwriting any existing data). This uses EPrints::Dumper to serialise the passed Perl structures.


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