Details
-
Improvement
-
Status: Closed
-
Major
-
Resolution: Implemented
-
None
Description
Both cordova and plugman use own logic to parse and modify jsproj and csproj files, for example (cordova) windows8_parser/update_jsproj and (plugman) w8jsproj.js/removeSourceFile use exactly the same code blocks to parse and update jsproj files.
It is better to remove duplicate code and have special shared classes to work with project files. Cordova and plugman should rely on those classes instead of using own implementation.
We should also remove manual project files manipulation logic from general cordova/plugman classes, like below.
https://github.com/apache/cordova-lib/blob/master/cordova-lib/src/plugman/prepare.js#L83
Implementation layer should be hidden from them, they just need to rely on special well named methods provided by newly introduced classes (see above).