We have logic in the oxygen plugin to download the conref sourcetopic.dita to a temporary folder in C:// and retrieve the content of the respective ph Id (in this case IP Notes) whenever there is a “abc://” custom protocol found
Setting up Conref in Dita: refer AddingConref.png
Viewing Dita in Oxygen Xml author : (Working as expected) with the actual sourceTopic.dita ph Content in the Destination Topic dita
But the same plugin does'nt work in the Content Fusion
In Content Fusion: (v5.1 Build ID: 2023041205) I have used the same plugin(with the same logic - whenever it finds “abc://” protocol ) to download the source Dita into a temporary folder in server, but
sourceTopicFile is not being downloaded
Even if I manually place the source dita it is not being referenced in the destination topic
Need a way to make it work for all the conref’s being referred currently in 1000’s of topics (in the format of abc://topic/#/<elementId) – any suggestions is highly appreciated. PS: I do know that changing the conref to the format of<sourceTopic.dita>#/ works in the content fusion, but this format is not being supported in the oxygen author unless both the source and destination topics are kept in the same folder, which is not possible in most of our usecases. Any suggestions how to make it work?
Regarding question 1, we don't think it is a good idea to download those files on the server disk because that raises security concerns. Notice that unlike Oxygen XML Author, a Content Fusion instance is used by multiple users, so that may lead to some changes in your plugin. Try first fetching and returning referenced files on demand, without storing them on the disk. For this, you might need to specify the URL of the target server that returns the files in the Firewall section from the Web Author that's embedded in Content Fusion, see [1].
Regarding question 2, see ro.sync.exml.workspace.api.application.ApplicationInformationAccess. It should be somewhat like this: ApplicationInformationAccess.getApplicationType() == ApplicationType.XML_WEB_AUTHOR.
Regarding question 3, we don't have advice specific to Intellij, but you can simply add some logs to the plugin and see them on the Content Fusion Administration Page. If you need network logs see this page [2].
[1] https://www.oxygenxml.com/doc/versions/5.1/ug-content-fusion/topics/cf-enterprise-configuration.html#cf-enterprise-configuration__web_author_tab
[2] https://www.oxygenxml.com/doc/versions/5.1/ug-content-fusion/topics/CF-set-Web-Author-logging.html
Best Regards, Cosmin