138 lines
2.7 KiB
PHP
138 lines
2.7 KiB
PHP
<?php
|
|
|
|
/**
|
|
* @file plugins/importexport/doaj/DOAJExportDeployment.php
|
|
*
|
|
* Copyright (c) 2014-2021 Simon Fraser University
|
|
* Copyright (c) 2000-2021 John Willinsky
|
|
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
|
|
*
|
|
* @class DOAJExportDeployment
|
|
*
|
|
* @brief Base class configuring the DOAJ export process to an
|
|
* application's specifics.
|
|
*/
|
|
|
|
namespace APP\plugins\importexport\doaj;
|
|
|
|
// XML attributes
|
|
define('DOAJ_XMLNS_XSI', 'http://www.w3.org/2001/XMLSchema-instance');
|
|
define('DOAJ_XSI_SCHEMALOCATION', 'http://doaj.org/static/doaj/doajArticles.xsd');
|
|
|
|
class DOAJExportDeployment
|
|
{
|
|
/** @var \PKP\context\Context The current import/export context */
|
|
public $_context;
|
|
|
|
/** @var \PKP\plugins\Plugin The current import/export plugin */
|
|
public $_plugin;
|
|
|
|
/**
|
|
* Get the plugin cache
|
|
*
|
|
* @return \APP\plugins\PubObjectCache
|
|
*/
|
|
public function getCache()
|
|
{
|
|
return $this->_plugin->getCache();
|
|
}
|
|
|
|
/**
|
|
* Constructor
|
|
*
|
|
* @param \PKP\context\Context $context
|
|
* @param \APP\plugins\importexport\doaj\DOAJExportPlugin $plugin
|
|
*/
|
|
public function __construct($context, $plugin)
|
|
{
|
|
$this->setContext($context);
|
|
$this->setPlugin($plugin);
|
|
}
|
|
|
|
//
|
|
// Deployment items for subclasses to override
|
|
//
|
|
/**
|
|
* Get the root element name
|
|
*
|
|
* @return string
|
|
*/
|
|
public function getRootElementName()
|
|
{
|
|
return 'records';
|
|
}
|
|
|
|
/**
|
|
* Get the schema instance URN
|
|
*
|
|
* @return string
|
|
*/
|
|
public function getXmlSchemaInstance()
|
|
{
|
|
return DOAJ_XMLNS_XSI;
|
|
}
|
|
|
|
/**
|
|
* Get the schema location URL
|
|
*
|
|
* @return string
|
|
*/
|
|
public function getXmlSchemaLocation()
|
|
{
|
|
return DOAJ_XSI_SCHEMALOCATION;
|
|
}
|
|
|
|
/**
|
|
* Get the schema filename.
|
|
*
|
|
* @return string
|
|
*/
|
|
public function getSchemaFilename()
|
|
{
|
|
return 'doajArticles.xsd';
|
|
}
|
|
|
|
//
|
|
// Getter/setters
|
|
//
|
|
/**
|
|
* Set the import/export context.
|
|
*
|
|
* @param \PKP\context\Context $context
|
|
*/
|
|
public function setContext($context)
|
|
{
|
|
$this->_context = $context;
|
|
}
|
|
|
|
/**
|
|
* Get the import/export context.
|
|
*
|
|
* @return \PKP\context\Context
|
|
*/
|
|
public function getContext()
|
|
{
|
|
return $this->_context;
|
|
}
|
|
|
|
/**
|
|
* Set the import/export plugin.
|
|
*
|
|
* @param \PKP\plugins\Plugin $plugin
|
|
*/
|
|
public function setPlugin($plugin)
|
|
{
|
|
$this->_plugin = $plugin;
|
|
}
|
|
|
|
/**
|
|
* Get the import/export plugin.
|
|
*
|
|
* @return \PKP\plugins\Plugin
|
|
*/
|
|
public function getPlugin()
|
|
{
|
|
return $this->_plugin;
|
|
}
|
|
}
|