Skip to content

Commit 16fd883

Browse files
remove version properties in export.xml (#3)
1 parent 3f928b7 commit 16fd883

File tree

3 files changed

+20
-2
lines changed

3 files changed

+20
-2
lines changed

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,3 @@
11
/vendor/
2+
.idea
3+
composer.lock

composer.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,9 @@
66
"jackalope/jackalope-jackrabbit": "^1.2"
77
},
88
"require-dev": {
9+
"dflydev/embedded-composer": "@dev",
910
"nanbando/core": "^0.1|dev-master",
10-
"phpunit/phpunit": "^5.3"
11+
"phpunit/phpunit": "^6.0"
1112
},
1213
"autoload": {
1314
"psr-4": {

src/JackrabbitPlugin.php

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -104,12 +104,27 @@ public function restore(
104104
*/
105105
private function export(SessionInterface $session, $path, $stream)
106106
{
107+
$memoryStream = \fopen('php://memory', 'w+');
107108
$session->exportSystemView(
108109
$path,
109-
$stream,
110+
$memoryStream,
110111
true,
111112
false
112113
);
114+
115+
\rewind($memoryStream);
116+
$content = \stream_get_contents($memoryStream);
117+
118+
$document = new \DOMDocument();
119+
$document->loadXML($content);
120+
$xpath = new \DOMXPath($document);
121+
$xpath->registerNamespace('sv', 'http://www.jcp.org/jcr/sv/1.0');
122+
123+
foreach ($xpath->query('//sv:property[@sv:name="sulu:versions" or @sv:name="jcr:versionHistory" or @sv:name="jcr:baseVersion" or @sv:name="jcr:predecessors" or @sv:name="jcr:isCheckedOut"]') as $element) {
124+
$element->parentNode->removeChild($element);
125+
}
126+
127+
\fwrite($stream, $document->saveXML());
113128
}
114129

115130
/**

0 commit comments

Comments
 (0)