On Jan 2, 2009, at 6:28 PM, Asiri Rathnayake wrote: > Hi vincent, > > Vincent Massol commented on XAOFFICE-1: >> --------------------------------------- >> >> 31-12-2008 Review: >> * Invalid dep: Log4j > > > Fixed. > > * components must be in an internal package, see >> http://dev.xwiki.org/xwiki/bin/view/Community/DevelopmentPractices#HXWikispecifics > > > Fixed. > > >> * Abstract classes must have Abstract in their name as a prefix. >> OfficeImporterHTMLCleaner is not following this. See >> http://dev.xwiki.org/xwiki/bin/view/Community/CodeStyle > > > Fixed > > * OfficeImporterHTMLCleaner should be named AbstractOfficeHTMLCleaner > > > Fixed. > > * I don't think that the default/strict/moderate thing should be > implemented >> as components. IMO there should be a singme OpenOfficeHTMLCleaner >> and a >> single MicrosoftOfficeHTMLCleaner and the interface signature >> should be >> something like: clean(Reader, CleaningStrategy) where >> CleaningStrategy is an >> enum of STRICT, MODERATE or LENIENT. The reason is that it's a >> property of >> the cleaning IMO and not a different type of cleaner. > > > Fixed. > > * The org.xwiki.officeimporter.html.cleaner package should be instead >> org.xwiki.officeimporter.cleaner. No need for "html" since we don't >> have >> any other cleaner. >> * org.xwiki.officeimporter.html.filter should renamed to >> org.xwiki.officeimporter.cleaner.filter > > > Fixed. > > * Don't use public static final String in an interface since String > are >> always public static final in interfaces! > > > Fixed. > > * Fix javadoc errors > > > Partially Fixed (working on it) > > * I have no idea why we need a special cleaner > WysiwygDefaultHTMLCleaner and >> the javadoc doesn't help to understand the reason. > > > Need to improve the javadoc comments. > > * OfficeImporter.import takes a byte[] array. I don't think this is > a good >> idea since you'd also need to specify the encoding. Better use a >> Reader. > > > As I explained, office documents are binary files. So this has to be a > byte[]. > > * OfficeImporterVelocityContextInitializer should be in the internal > package > > > Fixed. > > * "private static final String[] presentationFormatExtensions" private >> static final strings should be in uppercase. Also this would be >> better as an >> enum. > > > Fixed. > > * I don't understand the notion of Transformer. What's the difference >> between Transformer and Importer? > > > Transformers are now inside internal package and they are not > components > anymore. Importer is composed of DocumentTransformers. > > * components that wants logging must extend AbstractLogEnabled > > > Fixed. > > * filters need to be reorganized. There are too many notions mixed > together: >> strict/lenient/moderate vs ImageFilter/Etc > > > I'm not sure how to do this.
My comment was about the mixing, not about the need for the Document Access bridge. > Unlike other filters, ImageFilter needs to have > access to the original XWikiDocument (via DocumentAccessBridge) > other than > the w3c DOM. This is because when cleaning image links, the src > attribute > need to be replaced by the corresponding attachment url. This is why I > introduced XWikiHTMLCleaner which takes in the OfficeImporterContext > in > addition to the w3c dom. Make them components and have the bridge injected. BTW not sure why you removed the Transformer components. > * there shouldn't be a utils package > > > Fixed. > > * role hints should be simpler and lowercase > > > Fixed. > > * there are no tests! > > > Few added. More unit/integration tests will be added. > > >> * there are test resources but they're not used! >> > > Fixed (Removed) > > Thanks. > > - Asiri Thanks -Vincent http://xwiki.com http://massol.net http://xwiki.org _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs

