Litle update for Exporter class, export_version metadata was added, and a ")" char was removed from export_datetime meta key
This commit is contained in:
@@ -21,7 +21,15 @@ abstract class Exporter
|
||||
*/
|
||||
protected $bpmnProject;
|
||||
|
||||
protected $projectData;
|
||||
/**
|
||||
* @var array
|
||||
*/
|
||||
protected $projectData = array();
|
||||
|
||||
/**
|
||||
* @var array
|
||||
*/
|
||||
protected $metadata = array();
|
||||
|
||||
public function __construct($prjUid)
|
||||
{
|
||||
@@ -29,6 +37,16 @@ abstract class Exporter
|
||||
|
||||
$this->bpmnProject = Project\Bpmn::load($prjUid);
|
||||
$this->projectData = $this->bpmnProject->getProject();
|
||||
|
||||
$this->metadata = array(
|
||||
"vendor_version" => \System::getVersion(),
|
||||
"vendor_version_code" => "Michelangelo",
|
||||
"export_timestamp" => date("U"),
|
||||
"export_datetime" => date("Y-m-d\TH:i:sP"),
|
||||
"export_server_addr" => isset($_SERVER["SERVER_ADDR"]) ? $_SERVER["SERVER_ADDR"].":".$_SERVER["SERVER_PORT"] : "Unknown",
|
||||
"export_server_os" => PHP_OS ,
|
||||
"export_server_php_version" => PHP_VERSION_ID,
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -73,6 +91,7 @@ abstract class Exporter
|
||||
$data = array();
|
||||
|
||||
$data["metadata"] = $this->getMetadata();
|
||||
$data["metadata"]["workspace"] = defined("SYS_SYS") ? SYS_SYS : "Unknown";
|
||||
$data["metadata"]["name"] = $this->getProjectName();
|
||||
$data["metadata"]["uid"] = $this->getProjectUid();
|
||||
|
||||
@@ -166,22 +185,22 @@ abstract class Exporter
|
||||
return self::VERSION;
|
||||
}
|
||||
|
||||
public function setMetadata($key, $value)
|
||||
{
|
||||
$this->metadata[$key] = $value;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns all metadata to include on export content
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function getMetadata()
|
||||
public function getMetadata($key = "", $default = "")
|
||||
{
|
||||
return array(
|
||||
"vendor_version" => \System::getVersion(),
|
||||
"vendor_version_code" => "Michelangelo",
|
||||
"export_timestamp" => date("U"),
|
||||
"export_datetime" => date("Y-m-d\TH:i:sP)"),
|
||||
"export_server_addr" => isset($_SERVER["SERVER_ADDR"]) ? $_SERVER["SERVER_ADDR"].":".$_SERVER["SERVER_PORT"] : "Unknown",
|
||||
"export_server_os" => PHP_OS ,
|
||||
"export_server_php_version" => PHP_VERSION_ID,
|
||||
"workspace" => defined("SYS_SYS") ? SYS_SYS : "Unknown",
|
||||
);
|
||||
if (! empty($key)) {
|
||||
return isset($this->metadata[$key]) ? $this->metadata[$key] : $default;
|
||||
} else {
|
||||
return $this->metadata;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -101,6 +101,7 @@ class Project extends Api
|
||||
$version = \ProcessMaker\Util\Common::getLastVersion($outputDir . $exporter->getProjectName() . "-*.pmx") + 1;
|
||||
$outputFilename = $outputDir . sprintf("%s-%s.%s", $exporter->getProjectName(), $version, "pmx");
|
||||
|
||||
$exporter->setMetadata("export_version", $version);
|
||||
$exporter->saveExport($outputFilename);
|
||||
|
||||
$httpStream = new \ProcessMaker\Util\IO\HttpStream();
|
||||
|
||||
Reference in New Issue
Block a user