42
42
use TheSeer \phpDox \Generator \ClassStartEvent ;
43
43
use TheSeer \phpDox \Generator \InterfaceStartEvent ;
44
44
use TheSeer \phpDox \Generator \PHPDoxEndEvent ;
45
+ use TheSeer \phpDox \Generator \TokenFileStartEvent ;
45
46
use TheSeer \phpDox \Generator \TraitStartEvent ;
46
47
47
48
class Xml extends AbstractEngine {
@@ -57,6 +58,7 @@ public function registerEventHandlers(EventHandlerRegistry $registry) {
57
58
$ registry ->addHandler ('class.start ' , $ this , 'handle ' );
58
59
$ registry ->addHandler ('trait.start ' , $ this , 'handle ' );
59
60
$ registry ->addHandler ('interface.start ' , $ this , 'handle ' );
61
+ $ registry ->addHandler ('token.file.start ' , $ this , 'handleToken ' );
60
62
}
61
63
62
64
public function handle (AbstractEvent $ event ) {
@@ -85,6 +87,14 @@ public function handleIndex(PHPDoxEndEvent $event) {
85
87
$ dom = $ event ->getIndex ()->asDom ();
86
88
$ this ->saveDomDocument ($ dom , $ this ->outputDir . '/index.xml ' );
87
89
}
90
+
91
+ public function handleToken (TokenFileStartEvent $ event ) {
92
+ $ dom = $ event ->getTokenFile ()->asDom ();
93
+ $ this ->saveDomDocument ($ dom ,
94
+ $ this ->outputDir . '/tokens/ ' . $ dom ->queryOne ('//phpdox:file ' )->getAttribute ('relative ' ) . '.xml '
95
+ );
96
+
97
+ }
88
98
}
89
99
90
100
class XMLEngineException extends EngineException {
0 commit comments