Sorry all the other comments had me confused. Glad we keep both and also get the new adjustments.
I cannot fail to notice that some users are a little confused here & I thought we may all benefit from a summary explanation of the new system plugin remapping feature currently under development in webman & webMAN-MOD. So after a quick glance at deank's source code, I can provide this brief (? Lol) description of the inner workings of this great feature.
In short, deank used mysis xai_plugin concept & applied it for webman purposes. He also made use of Cobra's path remapping function to avoid messing with /dev_flash files & also to avoid creating annoying dependencies.
WebMAN now creates its own system plugin with its own functions in the wmtmp folder (as well as its related rco file) then it remaps the path of an existing system plugin /dev_flash/vsh/module/kensaku_plugin.sprx to point towards this newly created fake system plugin. This way all calls made to the original kensaku_plugin.sprx are redirected by Cobra to the sprx created by webman. Devs/Advanced users should note that the original kensaku rco file is also remapped to the fake one created by webman in wmtmp to bring full compliance to the plugin remapping.
This fake kensaku_plugin.sprx becomes the official system plugin as far as the system is concerned & can therefore be called from xml using the act0 interface, in exactly the same way as we launch the web browser system plugin by providing the name of the web browser plugin & a URL in xml (see the 2nd xml code snippet below).
With the new feature, xmb links don't have to call webman thru the browser anymore but instead they can call webman's own kensaku_plugin.sprx to perform any implemented module_action in the fake kensaku_plugin, like those for mounting, unmounting etc..
The choice of action performed may be defined by the module_action parameter we pass in the xml.
For example to unmount a game, the xml would now use:
Code:
<Pair key=\"module_name\"><String>"kensaku_plugin"</String></Pair><Pair key=\"module_action\"><String>/mount_ps3/unmount</String></Pair>
instead of calling the web browser in order to trigger the webman unmount function like it was before:
Code:
<Pair key=\"module_name\"><String>"webbrowser_plugin"</String></Pair><Pair key=\"module_action\"><String>/http://127.00.1/mount.ps3/unmount</String></Pair>
There are considerable advantages to using this new method including much better performance. There is hardly any delay when mounting a game anymore!
Note that with the old method, launching the web browser meant loading over 40 different system plugins in memory. To call a simple webman function, it was not exactly a good use of resources.
But now, only one very small system plugin (3kb) is loaded!
While webman is loaded, the real kensaku_plugin.sprx cannot be used but deank implemented the xmb Internet search to launch the browser instead. If ever it was an issue & we wanted to keep the Internet search, it would only take a few lines of code. There would be absolutely no difference in behaviour.
Of course if webMAN gets unloaded, the real kensaku_plugin.sprx will be used by the system instead.
Aldo is currently using idle_plugin.sprx to do exactly the same thing for webMAN-MOD. Of course wMM can benefit a lot from this new approach & not only create improved links for mounting/unmounting/scanning but also externalise many of its heavy functions. If this is fully exploited, the potential improvements in terms of performance & stability should be important.
As you can see, webman/wMM take care of creating the sprx in the temporary folder, no file in /dev_flash ever gets changed with this method.
Current xai_plugin.sprx XMB CFW Tools functions are not affected by any remapping as both webMAN-MOD & webman remap different plugins to create their own "proxy".