summaryrefslogtreecommitdiff
path: root/ucb
diff options
context:
space:
mode:
authorJan Holesovsky <kendy@suse.cz>2011-03-18 15:49:47 +0100
committerJan Holesovsky <kendy@suse.cz>2011-03-18 15:49:47 +0100
commit091e4aee3386f3bfee081dc8646494e0eb97f88a (patch)
treedd79298b4e8729ca7dc874274d4a33ea88fe107d /ucb
parentf0681adbf092e2b455db52535f2df882bc87343a (diff)
parent224bd63b3fa459baa0a6bb5cd03f5dc2ca475d82 (diff)
Merge remote-tracking branch 'origin/integration/dev300_m101'
Conflicts: avmedia/source/framework/mediacontrol.cxx connectivity/source/commontools/DateConversion.cxx desktop/source/deployment/registry/component/dp_component.cxx editeng/inc/editeng/numitem.hxx editeng/inc/editeng/txtrange.hxx editeng/source/editeng/editobj.cxx editeng/source/editeng/editview.cxx editeng/source/editeng/eehtml.cxx editeng/source/editeng/impedit3.cxx editeng/source/editeng/impedit4.cxx editeng/source/misc/txtrange.cxx editeng/source/outliner/outlin2.cxx editeng/source/outliner/outlvw.cxx framework/source/layoutmanager/layoutmanager.cxx linguistic/source/lngsvcmgr.hxx sfx2/source/appl/app.cxx sfx2/source/appl/app.src sfx2/source/appl/appbas.cxx sfx2/source/appl/appcfg.cxx sfx2/source/appl/appdde.cxx sfx2/source/appl/appmain.cxx sfx2/source/appl/appopen.cxx sfx2/source/appl/appquit.cxx sfx2/source/appl/appserv.cxx sfx2/source/appl/childwin.cxx sfx2/source/appl/fileobj.cxx sfx2/source/appl/fileobj.hxx sfx2/source/appl/workwin.cxx sfx2/source/control/dispatch.cxx sfx2/source/control/macro.cxx sfx2/source/control/objface.cxx sfx2/source/control/request.cxx sfx2/source/control/shell.cxx sfx2/source/control/statcach.cxx sfx2/source/dialog/dinfdlg.cxx sfx2/source/dialog/dockwin.cxx sfx2/source/dialog/mailmodel.cxx sfx2/source/dialog/mailmodelapi.cxx sfx2/source/dialog/mgetempl.cxx sfx2/source/dialog/splitwin.cxx sfx2/source/dialog/styledlg.cxx sfx2/source/dialog/tabdlg.cxx sfx2/source/dialog/templdlg.cxx sfx2/source/dialog/tplcitem.cxx sfx2/source/dialog/tplpitem.cxx sfx2/source/doc/doctempl.cxx sfx2/source/doc/docvor.cxx sfx2/source/doc/new.cxx sfx2/source/doc/objcont.cxx sfx2/source/doc/objserv.cxx sfx2/source/doc/objxtor.cxx sfx2/source/inc/appdata.hxx sfx2/source/inc/helpid.hrc sfx2/source/inc/sfxlocal.hrc sfx2/source/inc/statcach.hxx sfx2/source/inc/templdgi.hxx sfx2/source/inc/virtmenu.hxx sfx2/source/inc/workwin.hxx sfx2/source/menu/mnumgr.cxx sfx2/source/menu/virtmenu.cxx sfx2/source/statbar/stbitem.cxx sfx2/source/view/frame.cxx sfx2/source/view/frame2.cxx sfx2/source/view/orgmgr.cxx sfx2/source/view/printer.cxx sfx2/source/view/prnmon.cxx sfx2/source/view/sfxbasecontroller.cxx sfx2/source/view/viewfrm.cxx sfx2/source/view/viewfrm2.cxx sfx2/source/view/viewprn.cxx sfx2/source/view/viewsh.cxx svx/inc/svx/svditer.hxx svx/source/dialog/sdstring.src svx/source/form/fmpage.cxx svx/source/form/formcontroller.cxx svx/source/svdraw/svdcrtv.cxx svx/source/svdraw/svditer.cxx svx/source/svdraw/svdview.cxx xmloff/source/forms/elementimport.cxx
Diffstat (limited to 'ucb')
-rwxr-xr-x[-rw-r--r--]ucb/inc/makefile.mk0
-rwxr-xr-x[-rw-r--r--]ucb/inc/pch/precompiled_ucb.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/inc/pch/precompiled_ucb.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/prj/build.lst5
-rwxr-xr-x[-rw-r--r--]ucb/prj/d.lst15
-rwxr-xr-xucb/qa/complex/tdoc/CheckContentProvider.java247
-rwxr-xr-xucb/qa/complex/tdoc/CheckTransientDocumentsContent.java81
-rwxr-xr-xucb/qa/complex/tdoc/CheckTransientDocumentsContentProvider.java83
-rwxr-xr-xucb/qa/complex/tdoc/CheckTransientDocumentsDocumentContent.java94
-rwxr-xr-xucb/qa/complex/tdoc/TestDocument.java39
-rwxr-xr-x[-rw-r--r--]ucb/qa/complex/tdoc/_XChild.java (renamed from ucb/qa/complex/tdoc/interfaces/_XChild.java)2
-rwxr-xr-xucb/qa/complex/tdoc/_XCommandInfoChangeNotifier.java (renamed from ucb/qa/complex/tdoc/interfaces/_XCommandInfoChangeNotifier.java)2
-rwxr-xr-xucb/qa/complex/tdoc/_XCommandProcessor.java (renamed from ucb/qa/complex/tdoc/interfaces/_XCommandProcessor.java)2
-rwxr-xr-xucb/qa/complex/tdoc/_XComponent.java (renamed from ucb/qa/complex/tdoc/interfaces/_XComponent.java)2
-rwxr-xr-xucb/qa/complex/tdoc/_XContent.java (renamed from ucb/qa/complex/tdoc/interfaces/_XContent.java)2
-rwxr-xr-xucb/qa/complex/tdoc/_XPropertiesChangeNotifier.java (renamed from ucb/qa/complex/tdoc/interfaces/_XPropertiesChangeNotifier.java)2
-rwxr-xr-xucb/qa/complex/tdoc/_XPropertyContainer.java (renamed from ucb/qa/complex/tdoc/interfaces/_XPropertyContainer.java)2
-rwxr-xr-xucb/qa/complex/tdoc/_XPropertySetInfoChangeNotifier.java (renamed from ucb/qa/complex/tdoc/interfaces/_XPropertySetInfoChangeNotifier.java)2
-rwxr-xr-x[-rw-r--r--]ucb/qa/complex/tdoc/_XServiceInfo.java (renamed from ucb/qa/complex/tdoc/interfaces/_XServiceInfo.java)2
-rwxr-xr-x[-rw-r--r--]ucb/qa/complex/tdoc/_XTypeProvider.java (renamed from ucb/qa/complex/tdoc/interfaces/_XTypeProvider.java)2
-rwxr-xr-xucb/qa/complex/tdoc/interfaces/makefile.mk4
-rwxr-xr-xucb/qa/complex/tdoc/makefile.mk83
-rwxr-xr-x[-rw-r--r--]ucb/qa/complex/tdoc/test_documents/Iterator.sxw (renamed from ucb/qa/complex/test_documents/Iterator.sxw)bin5627 -> 5627 bytes
-rwxr-xr-x[-rw-r--r--]ucb/qa/complex/tdoc/test_documents/chinese.sxw (renamed from ucb/qa/complex/test_documents/chinese.sxw)bin5757 -> 5757 bytes
-rwxr-xr-x[-rw-r--r--]ucb/qa/complex/tdoc/test_documents/filter.sxw (renamed from ucb/qa/complex/test_documents/filter.sxw)bin14359 -> 14359 bytes
-rwxr-xr-xucb/qa/complex/ucb/UCB.java171
-rwxr-xr-xucb/qa/complex/ucb/makefile.mk58
-rwxr-xr-x[-rw-r--r--]ucb/qa/unoapi/Test.java0
-rwxr-xr-x[-rw-r--r--]ucb/qa/unoapi/knownissues.xcl0
-rwxr-xr-x[-rw-r--r--]ucb/qa/unoapi/makefile.mk0
-rwxr-xr-x[-rw-r--r--]ucb/qa/unoapi/ucb.sce0
-rwxr-xr-x[-rw-r--r--]ucb/source/cacher/cached.xml0
-rwxr-xr-xucb/source/cacher/cached1.component43
-rwxr-xr-x[-rw-r--r--]ucb/source/cacher/cachedcontentresultset.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/cacher/cachedcontentresultset.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/cacher/cachedcontentresultsetstub.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/cacher/cachedcontentresultsetstub.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/cacher/cacheddynamicresultset.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/cacher/cacheddynamicresultset.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/cacher/cacheddynamicresultsetstub.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/cacher/cacheddynamicresultsetstub.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/cacher/cacheserv.cxx77
-rwxr-xr-x[-rw-r--r--]ucb/source/cacher/contentresultsetwrapper.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/cacher/contentresultsetwrapper.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/cacher/dynamicresultsetwrapper.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/cacher/dynamicresultsetwrapper.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/cacher/makefile.mk8
-rwxr-xr-x[-rw-r--r--]ucb/source/core/cmdenv.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/core/cmdenv.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/core/exports2.dxp1
-rwxr-xr-x[-rw-r--r--]ucb/source/core/identify.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/core/identify.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/core/makefile.mk8
-rwxr-xr-x[-rw-r--r--]ucb/source/core/providermap.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/core/provprox.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/core/provprox.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/core/ucb.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/core/ucb.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/core/ucb.xml0
-rwxr-xr-xucb/source/core/ucb1.component46
-rwxr-xr-x[-rw-r--r--]ucb/source/core/ucbcmds.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/core/ucbcmds.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/core/ucbprops.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/core/ucbprops.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/core/ucbserv.cxx87
-rwxr-xr-x[-rw-r--r--]ucb/source/core/ucbstore.cxx2
-rwxr-xr-x[-rw-r--r--]ucb/source/core/ucbstore.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/inc/regexp.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/inc/regexpmap.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/inc/regexpmap.tpt0
-rwxr-xr-x[-rw-r--r--]ucb/source/regexp/makefile.mk0
-rwxr-xr-x[-rw-r--r--]ucb/source/regexp/regexp.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/sorter/makefile.mk8
-rwxr-xr-x[-rw-r--r--]ucb/source/sorter/sortdynres.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/sorter/sortdynres.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/sorter/sortmain.cxx55
-rwxr-xr-x[-rw-r--r--]ucb/source/sorter/sortresult.cxx6
-rwxr-xr-x[-rw-r--r--]ucb/source/sorter/sortresult.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/sorter/srtrs.xml0
-rwxr-xr-xucb/source/sorter/srtrs1.component34
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/expand/makefile.mk8
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/expand/ucpexpand.cxx8
-rwxr-xr-xucb/source/ucp/expand/ucpexpand1.component34
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ext/makefile.mk8
-rwxr-xr-xucb/source/ucp/ext/ucpext.component34
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ext/ucpext_content.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ext/ucpext_content.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ext/ucpext_datasupplier.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ext/ucpext_datasupplier.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ext/ucpext_provider.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ext/ucpext_provider.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ext/ucpext_resultset.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ext/ucpext_resultset.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ext/ucpext_services.cxx6
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/file/bc.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/file/bc.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/file/exports2.dxp1
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/file/filcmd.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/file/filcmd.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/file/filerror.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/file/filglob.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/file/filglob.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/file/filid.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/file/filid.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/file/filinl.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/file/filinpstr.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/file/filinpstr.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/file/filinsreq.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/file/filinsreq.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/file/filnot.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/file/filnot.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/file/filprp.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/file/filprp.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/file/filrec.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/file/filrec.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/file/filrow.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/file/filrow.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/file/filrset.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/file/filrset.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/file/filstr.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/file/filstr.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/file/filtask.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/file/filtask.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/file/makefile.mk8
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/file/prov.cxx54
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/file/prov.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/file/shell.cxx38
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/file/shell.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/file/ucpfile.xml0
-rwxr-xr-xucb/source/ucp/file/ucpfile1.component34
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ftp/curl.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ftp/ftpcfunc.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ftp/ftpcfunc.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ftp/ftpcontainer.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ftp/ftpcontent.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ftp/ftpcontent.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ftp/ftpcontentcaps.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ftp/ftpcontentidentifier.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ftp/ftpcontentidentifier.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ftp/ftpcontentprovider.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ftp/ftpcontentprovider.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ftp/ftpdirp.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ftp/ftpdirp.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ftp/ftpdynresultset.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ftp/ftpdynresultset.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ftp/ftphandleprovider.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ftp/ftpinpstr.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ftp/ftpinpstr.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ftp/ftpintreq.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ftp/ftpintreq.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ftp/ftploaderthread.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ftp/ftploaderthread.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ftp/ftpresultsetI.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ftp/ftpresultsetI.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ftp/ftpresultsetbase.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ftp/ftpresultsetbase.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ftp/ftpresultsetfactory.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ftp/ftpservices.cxx54
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ftp/ftpstrcont.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ftp/ftpurl.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ftp/ftpurl.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ftp/makefile.mk17
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ftp/test.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ftp/test.py0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ftp/test_activedatasink.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ftp/test_activedatasink.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ftp/test_ftpurl.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ftp/test_ftpurl.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ftp/test_interactionhandler.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ftp/test_multiservicefac.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ftp/test_multiservicefac.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/ftp/ucpftp.xml0
-rwxr-xr-xucb/source/ucp/ftp/ucpftp1.component34
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/gio/gio_content.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/gio/gio_content.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/gio/gio_datasupplier.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/gio/gio_datasupplier.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/gio/gio_inputstream.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/gio/gio_inputstream.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/gio/gio_mount.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/gio/gio_mount.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/gio/gio_outputstream.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/gio/gio_outputstream.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/gio/gio_provider.cxx43
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/gio/gio_provider.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/gio/gio_resultset.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/gio/gio_resultset.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/gio/gio_seekable.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/gio/gio_seekable.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/gio/makefile.mk10
-rw-r--r--ucb/source/ucp/gio/ucpgio-ucd.txt6
-rwxr-xr-xucb/source/ucp/gio/ucpgio.component34
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/gio/ucpgio.xml0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/gvfs/gvfs_content.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/gvfs/gvfs_content.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/gvfs/gvfs_directory.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/gvfs/gvfs_directory.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/gvfs/gvfs_provider.cxx45
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/gvfs/gvfs_provider.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/gvfs/gvfs_stream.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/gvfs/gvfs_stream.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/gvfs/makefile.mk9
-rw-r--r--ucb/source/ucp/gvfs/ucpgvfs-ucd.txt6
-rwxr-xr-xucb/source/ucp/gvfs/ucpgvfs.component34
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/gvfs/ucpgvfs.xml0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/hierarchy/dynamicresultset.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/hierarchy/dynamicresultset.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/hierarchy/hierarchycontent.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/hierarchy/hierarchycontent.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/hierarchy/hierarchycontentcaps.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/hierarchy/hierarchydata.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/hierarchy/hierarchydata.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/hierarchy/hierarchydatasource.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/hierarchy/hierarchydatasource.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/hierarchy/hierarchydatasupplier.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/hierarchy/hierarchydatasupplier.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/hierarchy/hierarchyprovider.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/hierarchy/hierarchyprovider.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/hierarchy/hierarchyservices.cxx63
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/hierarchy/hierarchyuri.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/hierarchy/hierarchyuri.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/hierarchy/makefile.mk8
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/hierarchy/ucphier.xml0
-rwxr-xr-xucb/source/ucp/hierarchy/ucphier1.component38
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/inc/urihelper.hxx0
-rw-r--r--ucb/source/ucp/odma/makefile.mk7
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/odma/odma.h0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/odma/odma_content.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/odma/odma_content.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/odma/odma_contentcaps.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/odma/odma_contentprops.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/odma/odma_datasupplier.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/odma/odma_datasupplier.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/odma/odma_inputstream.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/odma/odma_inputstream.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/odma/odma_lib.cxx3
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/odma/odma_lib.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/odma/odma_main.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/odma/odma_provider.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/odma/odma_provider.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/odma/odma_resultset.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/odma/odma_resultset.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/odma/odma_services.cxx55
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/odma/ucpodma.xml0
-rw-r--r--ucb/source/ucp/odma/ucpodma1.component34
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/package/makefile.mk8
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/package/pkgcontent.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/package/pkgcontent.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/package/pkgcontentcaps.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/package/pkgdatasupplier.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/package/pkgdatasupplier.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/package/pkgprovider.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/package/pkgprovider.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/package/pkgresultset.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/package/pkgresultset.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/package/pkgservices.cxx59
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/package/pkguri.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/package/pkguri.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/package/ucppkg.xml0
-rwxr-xr-xucb/source/ucp/package/ucppkg1.component34
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/tdoc/makefile.mk8
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/tdoc/tdoc_content.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/tdoc/tdoc_content.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/tdoc/tdoc_contentcaps.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/tdoc/tdoc_datasupplier.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/tdoc/tdoc_datasupplier.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/tdoc/tdoc_docmgr.cxx105
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/tdoc/tdoc_docmgr.hxx34
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/tdoc/tdoc_documentcontentfactory.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/tdoc/tdoc_documentcontentfactory.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/tdoc/tdoc_passwordrequest.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/tdoc/tdoc_passwordrequest.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/tdoc/tdoc_provider.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/tdoc/tdoc_provider.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/tdoc/tdoc_resultset.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/tdoc/tdoc_resultset.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/tdoc/tdoc_services.cxx62
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/tdoc/tdoc_stgelems.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/tdoc/tdoc_stgelems.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/tdoc/tdoc_storage.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/tdoc/tdoc_storage.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/tdoc/tdoc_uri.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/tdoc/tdoc_uri.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/tdoc/ucptdoc.xml0
-rwxr-xr-xucb/source/ucp/tdoc/ucptdoc1.component37
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/ContentProperties.cxx120
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/ContentProperties.hxx38
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/DAVAuthListener.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/DAVAuthListenerImpl.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/DAVException.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/DAVProperties.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/DAVProperties.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/DAVRequestEnvironment.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/DAVResource.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/DAVResourceAccess.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/DAVResourceAccess.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/DAVSession.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/DAVSessionFactory.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/DAVSessionFactory.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/DAVTypes.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/DateTimeHelper.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/DateTimeHelper.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/LinkSequence.cxx4
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/LinkSequence.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/LockEntrySequence.cxx4
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/LockEntrySequence.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/LockSequence.cxx26
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/LockSequence.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/NeonHeadRequest.cxx89
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/NeonHeadRequest.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/NeonInputStream.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/NeonInputStream.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/NeonLockStore.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/NeonLockStore.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/NeonPropFindRequest.cxx18
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/NeonPropFindRequest.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/NeonSession.cxx20
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/NeonSession.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/NeonTypes.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/NeonUri.cxx18
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/NeonUri.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/PropertyMap.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/UCBDeadPropertyValue.cxx4
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/UCBDeadPropertyValue.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/makefile.mk8
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/ucpdav.xml0
-rwxr-xr-xucb/source/ucp/webdav/ucpdav1.component34
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/webdavcontent.cxx65
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/webdavcontent.hxx4
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/webdavcontentcaps.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/webdavdatasupplier.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/webdavdatasupplier.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/webdavprovider.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/webdavprovider.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/webdavresultset.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/webdavresultset.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/source/ucp/webdav/webdavservices.cxx54
-rwxr-xr-x[-rw-r--r--]ucb/test/com/sun/star/comp/ucb/GlobalTransfer_Test.java0
-rwxr-xr-x[-rw-r--r--]ucb/test/com/sun/star/comp/ucb/makefile.mk0
-rwxr-xr-x[-rw-r--r--]ucb/workben/cachemap/cachemapobject1.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/workben/cachemap/cachemapobject1.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/workben/cachemap/cachemapobject2.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/workben/cachemap/cachemapobject3.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/workben/cachemap/cachemapobject3.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/workben/cachemap/cachemapobjectcontainer2.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/workben/cachemap/cachemapobjectcontainer2.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/workben/cachemap/cachemaptest.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/workben/cachemap/makefile.mk0
-rwxr-xr-x[-rw-r--r--]ucb/workben/ucb/makefile.mk0
-rwxr-xr-x[-rw-r--r--]ucb/workben/ucb/srcharg.cxx0
-rwxr-xr-x[-rw-r--r--]ucb/workben/ucb/srcharg.hxx0
-rwxr-xr-x[-rw-r--r--]ucb/workben/ucb/ucbdemo.cxx0
352 files changed, 1503 insertions, 1358 deletions
diff --git a/ucb/inc/makefile.mk b/ucb/inc/makefile.mk
index 1ed22bada671..1ed22bada671 100644..100755
--- a/ucb/inc/makefile.mk
+++ b/ucb/inc/makefile.mk
diff --git a/ucb/inc/pch/precompiled_ucb.cxx b/ucb/inc/pch/precompiled_ucb.cxx
index 095311deb222..095311deb222 100644..100755
--- a/ucb/inc/pch/precompiled_ucb.cxx
+++ b/ucb/inc/pch/precompiled_ucb.cxx
diff --git a/ucb/inc/pch/precompiled_ucb.hxx b/ucb/inc/pch/precompiled_ucb.hxx
index e6e38e02b3e5..e6e38e02b3e5 100644..100755
--- a/ucb/inc/pch/precompiled_ucb.hxx
+++ b/ucb/inc/pch/precompiled_ucb.hxx
diff --git a/ucb/prj/build.lst b/ucb/prj/build.lst
index e58d23926b22..7e9d2d4046ce 100644..100755
--- a/ucb/prj/build.lst
+++ b/ucb/prj/build.lst
@@ -1,4 +1,4 @@
-uc ucb : cppuhelper CURL:curl OPENSSL:openssl NEON:neon LIBXML2:libxml2 offapi sal salhelper ucbhelper udkapi comphelper tools NULL
+uc ucb : cppuhelper CURL:curl OPENSSL:openssl NEON:neon LIBXML2:libxml2 LIBXSLT:libxslt offapi sal salhelper ucbhelper udkapi comphelper tools NULL
uc ucb usr1 - all uc_mkout NULL
uc ucb\inc nmake - all uc_inc NULL
uc ucb\source\regexp nmake - all uc_regexp uc_inc NULL
@@ -17,3 +17,6 @@ uc ucb\source\ucp\expand nmake - all uc_expand uc_inc NULL
uc ucb\source\ucp\ext nmake - all uc_ext uc_inc NULL
uc ucb\qa\unoapi nmake - all uc_qa_unoapi NULL
uc ucb\source\ucp\odma nmake - w uc_odma uc_inc NULL
+uc ucb\qa\complex\ucb nmake - all uc_complex_ucb uc_inc NULL
+# fails, please fix
+# uc ucb\qa\complex\tdoc nmake - all uc_complex_tdoc uc_complex_tdoc_interfaces uc_inc NULL
diff --git a/ucb/prj/d.lst b/ucb/prj/d.lst
index 7b15e5b7fa3b..a8242541a58d 100644..100755
--- a/ucb/prj/d.lst
+++ b/ucb/prj/d.lst
@@ -36,5 +36,16 @@
..\source\ucp\gvfs\ucpgvfs.xml %_DEST%\xml%_EXT%\ucpgvfs.xml
..\source\ucp\tdoc\ucptdoc.xml %_DEST%\xml%_EXT%\ucptdoc.xml
-..\%__SRC%\misc\ucpgvfs-ucd.txt %_DEST%\bin%_EXT%\ucpgvfs-ucd.txt
-..\%__SRC%\misc\ucpgio-ucd.txt %_DEST%\bin%_EXT%\ucpgio-ucd.txt
+..\%__SRC%\misc\ucpgvfs.component %_DEST%\xml%_EXT%\ucpgvfs.component
+..\%__SRC%\misc\ucpgio.component %_DEST%\xml%_EXT%\ucpgio.component
+..\%__SRC%\misc\cached1.component %_DEST%\xml%_EXT%\cached1.component
+..\%__SRC%\misc\srtrs1.component %_DEST%\xml%_EXT%\srtrs1.component
+..\%__SRC%\misc\ucb1.component %_DEST%\xml%_EXT%\ucb1.component
+..\%__SRC%\misc\ucpdav1.component %_DEST%\xml%_EXT%\ucpdav1.component
+..\%__SRC%\misc\ucpexpand1.component %_DEST%\xml%_EXT%\ucpexpand1.component
+..\%__SRC%\misc\ucpext.component %_DEST%\xml%_EXT%\ucpext.component
+..\%__SRC%\misc\ucpfile1.component %_DEST%\xml%_EXT%\ucpfile1.component
+..\%__SRC%\misc\ucpftp1.component %_DEST%\xml%_EXT%\ucpftp1.component
+..\%__SRC%\misc\ucphier1.component %_DEST%\xml%_EXT%\ucphier1.component
+..\%__SRC%\misc\ucppkg1.component %_DEST%\xml%_EXT%\ucppkg1.component
+..\%__SRC%\misc\ucptdoc1.component %_DEST%\xml%_EXT%\ucptdoc1.component
diff --git a/ucb/qa/complex/tdoc/CheckContentProvider.java b/ucb/qa/complex/tdoc/CheckContentProvider.java
index a20a96829e0b..a039c0c14e87 100755
--- a/ucb/qa/complex/tdoc/CheckContentProvider.java
+++ b/ucb/qa/complex/tdoc/CheckContentProvider.java
@@ -42,20 +42,15 @@ import com.sun.star.ucb.XContentIdentifier;
import com.sun.star.ucb.XContentIdentifierFactory;
import com.sun.star.ucb.XContentProvider;
import com.sun.star.uno.UnoRuntime;
-import complexlib.ComplexTestCase;
-import complex.tdoc.interfaces._XChild;
-import complex.tdoc.interfaces._XCommandInfoChangeNotifier;
-import complex.tdoc.interfaces._XComponent;
-import complex.tdoc.interfaces._XServiceInfo;
-import complex.tdoc.interfaces._XTypeProvider;
-import complex.tdoc.interfaces._XCommandProcessor;
-import complex.tdoc.interfaces._XContent;
-import complex.tdoc.interfaces._XPropertiesChangeNotifier;
-import complex.tdoc.interfaces._XPropertyContainer;
-import complex.tdoc.interfaces._XPropertySetInfoChangeNotifier;
-import lib.TestEnvironment;
import util.WriterTools;
-import util.utils;
+
+import org.junit.After;
+import org.junit.AfterClass;
+import org.junit.Before;
+import org.junit.BeforeClass;
+import org.junit.Test;
+import org.openoffice.test.OfficeConnection;
+import static org.junit.Assert.*;
/**
* Check the TransientDocumentsContentProvider (TDOC). Three documents are
@@ -66,7 +61,7 @@ import util.utils;
* with an accept parameter (writer is initially opened). Otherwise loaded
* documents are not found.
*/
-public class CheckContentProvider extends ComplexTestCase {
+public class CheckContentProvider {
private final String testDocuments[] = new String[]{"filter.sxw", "chinese.sxw", "Iterator.sxw"};
private final int countDocs = testDocuments.length;
private XMultiServiceFactory xMSF = null;
@@ -89,37 +84,38 @@ public class CheckContentProvider extends ComplexTestCase {
* Important is, that the test of the element comes first, then the test of
* its interfaces.
**/
- public String[] getTestMethodNames() {
- return new String[]{"checkTDOCRoot",
- "checkTDOCRootInterfaces",
- "checkTDOCDocument",
- "checkTDOCDocumentInterfaces",
- "checkTDOCFolder",
- "checkTDOCFolderInterfaces",
- "checkTDOCStream",
- "checkTDOCStreamInterfaces",
- };
- }
+// public String[] getTestMethodNames() {
+// return new String[]{"checkTDOCRoot",
+// "checkTDOCRootInterfaces",
+// "checkTDOCDocument",
+// "checkTDOCDocumentInterfaces",
+// "checkTDOCFolder",
+// "checkTDOCFolderInterfaces",
+// "checkTDOCStream",
+// "checkTDOCStreamInterfaces",
+// };
+// }
/**
* Open some documents before the test
*/
- public void before() {
- xMSF = (XMultiServiceFactory)param.getMSF();
+ @Before public void before() {
+ xMSF = getMSF();
xTextDoc = new XTextDocument[countDocs];
- log.println("Open some new documents.");
+ System.out.println("Open some new documents.");
for (int i=0; i<countDocs; i++) {
- String fileName = utils.getFullTestURL(testDocuments[i]);
+ String fileName = TestDocument.getUrl(testDocuments[i]);
System.out.println("Doc " + i + ": " + fileName);
xTextDoc[i] = WriterTools.loadTextDoc(xMSF, fileName);
+ assertNotNull("Can't load document " + fileName, xTextDoc[i]);
}
}
/**
* Close the documents
*/
- public void after() {
- log.println("Close all documents.");
+ @After public void after() {
+ System.out.println("Close all documents.");
for (int i=0; i<countDocs; i++) {
xTextDoc[i].dispose();
}
@@ -128,18 +124,16 @@ public class CheckContentProvider extends ComplexTestCase {
/**
* Check the tdcp root.
*/
- public void checkTDOCRoot() {
+ @Test public void checkTDOCRoot() {
try {
// create a content provider
Object o = xMSF.createInstance("com.sun.star.comp.ucb.TransientDocumentsContentProvider");
XContentProvider xContentProvider =
- (XContentProvider)UnoRuntime.queryInterface(XContentProvider.class, o);
+ UnoRuntime.queryInterface(XContentProvider.class, o);
// create the ucb
XContentIdentifierFactory xContentIdentifierFactory =
- (XContentIdentifierFactory)UnoRuntime.queryInterface(
- XContentIdentifierFactory.class, xMSF.createInstance(
- "com.sun.star.ucb.UniversalContentBroker"));
+ UnoRuntime.queryInterface(XContentIdentifierFactory.class, xMSF.createInstance("com.sun.star.ucb.UniversalContentBroker"));
// create a content identifier from the ucb for tdoc
XContentIdentifier xContentIdentifier =
xContentIdentifierFactory.createContentIdentifier("vnd.sun.star.tdoc:/");
@@ -147,7 +141,7 @@ public class CheckContentProvider extends ComplexTestCase {
xContent = xContentProvider.queryContent(xContentIdentifier);
String content = xContent.getContentType();
- log.println("#### Content root: " + content);
+ System.out.println("#### Content root: " + content);
// try to get some documents: should be "countDocs" at least.
XContentIdentifier[] xContentId = new XContentIdentifier[countDocs+5];
@@ -160,66 +154,68 @@ public class CheckContentProvider extends ComplexTestCase {
int returnVal = xContentProvider.compareContentIds(xContentId[i], xContentIdentifier);
String cont = null;
if (xCont[i] != null)
+ {
cont = xCont[i].getContentType();
- log.println("Document Content " + i + ": " + cont + " compare with root: " + returnVal);
+ }
+ System.out.println("Document Content " + i + ": " + cont + " compare with root: " + returnVal);
xContentId[i] = xContentIdentifierFactory.createContentIdentifier("vnd.sun.star.tdoc:/" + i + "/content.xml");
// get content
xCont[i] = xContentProvider.queryContent(xContentId[i]);
cont = null;
if (xCont[i] != null)
+ {
cont = xCont[i].getContentType();
- log.println("\tContent.xml Content " + i + ": " + cont);
+ }
+ System.out.println("\tContent.xml Content " + i + ": " + cont);
}
util.dbg.printInterfaces(xContent);
}
catch(Exception e) {
- e.printStackTrace((java.io.PrintWriter)log);
- failed("Unexpected Exception: " + e.getMessage());
+ e.printStackTrace();
+ fail("Unexpected Exception: " + e.getMessage());
}
}
/**
* Check the interfaces of the root.
*/
- public void checkTDOCRootInterfaces() {
+ @Test public void checkTDOCRootInterfaces() {
checkInterfaces(false);
}
/**
* Check the tdcp document: document 3 is used.
*/
- public void checkTDOCDocument() {
+ @Test public void checkTDOCDocument() {
try {
xContent = null;
Object o = xMSF.createInstance("com.sun.star.comp.ucb.TransientDocumentsContentProvider");
XContentProvider xContentProvider =
- (XContentProvider)UnoRuntime.queryInterface(XContentProvider.class, o);
+ UnoRuntime.queryInterface(XContentProvider.class, o);
// create the ucb
XContentIdentifierFactory xContentIdentifierFactory =
- (XContentIdentifierFactory)UnoRuntime.queryInterface(
- XContentIdentifierFactory.class, xMSF.createInstance(
- "com.sun.star.ucb.UniversalContentBroker"));
+ UnoRuntime.queryInterface(XContentIdentifierFactory.class, xMSF.createInstance("com.sun.star.ucb.UniversalContentBroker"));
// create a content identifier from the ucb for tdoc
XContentIdentifier xContentIdentifier =
xContentIdentifierFactory.createContentIdentifier("vnd.sun.star.tdoc:/3");
// get content
xContent = xContentProvider.queryContent(xContentIdentifier);
-
+ // assertNotNull(xContent);
String content = xContent.getContentType();
- log.println("#### Document root: " + content);
+ System.out.println("#### Document root: " + content);
}
catch(Exception e) {
- e.printStackTrace((java.io.PrintWriter)log);
- failed("Unexpected Exception: " + e.getMessage());
+ e.printStackTrace();
+ fail("Unexpected Exception: " + e.getMessage());
}
}
/**
* Check the interfaces on the document.
*/
- public void checkTDOCDocumentInterfaces() {
+ @Test public void checkTDOCDocumentInterfaces() {
checkInterfaces(true);
}
@@ -227,17 +223,15 @@ public class CheckContentProvider extends ComplexTestCase {
* Check a folder on document 2 (document 2 contains an embedded picture and
* therefore contans a subfolder "Pictures"
*/
- public void checkTDOCFolder() {
+ @Test public void checkTDOCFolder() {
try {
xContent = null;
Object o = xMSF.createInstance("com.sun.star.comp.ucb.TransientDocumentsContentProvider");
XContentProvider xContentProvider =
- (XContentProvider)UnoRuntime.queryInterface(XContentProvider.class, o);
+ UnoRuntime.queryInterface(XContentProvider.class, o);
// create the ucb
XContentIdentifierFactory xContentIdentifierFactory =
- (XContentIdentifierFactory)UnoRuntime.queryInterface(
- XContentIdentifierFactory.class, xMSF.createInstance(
- "com.sun.star.ucb.UniversalContentBroker"));
+ UnoRuntime.queryInterface(XContentIdentifierFactory.class, xMSF.createInstance("com.sun.star.ucb.UniversalContentBroker"));
// create a content identifier from the ucb for tdoc
XContentIdentifier xContentIdentifier =
xContentIdentifierFactory.createContentIdentifier("vnd.sun.star.tdoc:/2/Pictures");
@@ -245,36 +239,34 @@ public class CheckContentProvider extends ComplexTestCase {
xContent = xContentProvider.queryContent(xContentIdentifier);
String content = xContent.getContentType();
- log.println("#### Folder type: " + content);
+ System.out.println("#### Folder type: " + content);
}
catch(Exception e) {
- e.printStackTrace((java.io.PrintWriter)log);
- failed("Unexpected Exception: " + e.getMessage());
+ e.printStackTrace();
+ fail("Unexpected Exception: " + e.getMessage());
}
}
/**
* Check the interfaces on the folder.
*/
- public void checkTDOCFolderInterfaces() {
+ @Test public void checkTDOCFolderInterfaces() {
checkInterfaces(true);
}
/**
* Open a stream to the embedded picture of document 1.
*/
- public void checkTDOCStream() {
+ @Test public void checkTDOCStream() {
try {
xContent = null;
Object o = xMSF.createInstance("com.sun.star.comp.ucb.TransientDocumentsContentProvider");
XContentProvider xContentProvider =
- (XContentProvider)UnoRuntime.queryInterface(XContentProvider.class, o);
+ UnoRuntime.queryInterface(XContentProvider.class, o);
// create the ucb
XContentIdentifierFactory xContentIdentifierFactory =
- (XContentIdentifierFactory)UnoRuntime.queryInterface(
- XContentIdentifierFactory.class, xMSF.createInstance(
- "com.sun.star.ucb.UniversalContentBroker"));
+ UnoRuntime.queryInterface(XContentIdentifierFactory.class, xMSF.createInstance("com.sun.star.ucb.UniversalContentBroker"));
// create a content identifier from the ucb for tdoc
XContentIdentifier xContentIdentifier =
xContentIdentifierFactory.createContentIdentifier("vnd.sun.star.tdoc:/1/Pictures/10000000000000640000004B9C743800.gif");
@@ -282,18 +274,18 @@ public class CheckContentProvider extends ComplexTestCase {
xContent = xContentProvider.queryContent(xContentIdentifier);
String content = xContent.getContentType();
- log.println("#### Folder type: " + content);
+ System.out.println("#### Folder type: " + content);
}
catch(Exception e) {
- e.printStackTrace((java.io.PrintWriter)log);
- failed("Unexpected Exception: " + e.getMessage());
+ e.printStackTrace();
+ fail("Unexpected Exception: " + e.getMessage());
}
}
/**
* Check the interfaces on the stream.
*/
- public void checkTDOCStreamInterfaces() {
+ @Test public void checkTDOCStreamInterfaces() {
checkInterfaces(true);
}
@@ -319,80 +311,105 @@ public class CheckContentProvider extends ComplexTestCase {
private void checkInterfaces(boolean hasParent) {
// check the XTypeProvider interface
_XTypeProvider xTypeProvider = new _XTypeProvider();
- xTypeProvider.oObj = (XTypeProvider)UnoRuntime.queryInterface(XTypeProvider.class, xContent);
- xTypeProvider.log = log;
- assure("getImplementationId()", xTypeProvider._getImplementationId());
- assure("getTypes()", xTypeProvider._getTypes());
+ xTypeProvider.oObj = UnoRuntime.queryInterface(XTypeProvider.class, xContent);
+ // xTypeProvider.log = log;
+ assertNotNull("getImplementationId()", xTypeProvider._getImplementationId());
+ assertNotNull("getTypes()", xTypeProvider._getTypes());
// check the XSewrviceInfo interface
_XServiceInfo xServiceInfo = new _XServiceInfo();
- xServiceInfo.oObj = (XServiceInfo)UnoRuntime.queryInterface(XServiceInfo.class, xContent);
- xServiceInfo.log = log;
- assure("getImplementationName()", xServiceInfo._getImplementationName());
- assure("getSupportedServiceNames()", xServiceInfo._getSupportedServiceNames());
- assure("supportsService()", xServiceInfo._supportsService());
+ xServiceInfo.oObj = UnoRuntime.queryInterface(XServiceInfo.class, xContent);
+ // xServiceInfo.log = log;
+ assertNotNull("getImplementationName()", xServiceInfo._getImplementationName());
+ assertNotNull("getSupportedServiceNames()", xServiceInfo._getSupportedServiceNames());
+ assertNotNull("supportsService()", xServiceInfo._supportsService());
// check the XCommandProcessor interface
_XCommandProcessor xCommandProcessor = new _XCommandProcessor();
- xCommandProcessor.oObj = (XCommandProcessor)UnoRuntime.queryInterface(XCommandProcessor.class, xContent);
- xCommandProcessor.log = log;
- xCommandProcessor.before((XMultiServiceFactory)param.getMSF());
- assure("createCommandIdentifier()", xCommandProcessor._createCommandIdentifier());
- assure("execute()", xCommandProcessor._execute());
- assure("abort()", xCommandProcessor._abort());
+ xCommandProcessor.oObj = UnoRuntime.queryInterface(XCommandProcessor.class, xContent);
+ // xCommandProcessor.log = log;
+ xCommandProcessor.before(getMSF());
+ assertNotNull("createCommandIdentifier()", xCommandProcessor._createCommandIdentifier());
+ assertNotNull("execute()", xCommandProcessor._execute());
+ assertNotNull("abort()", xCommandProcessor._abort());
// check the XChild interface
_XChild xChild = new _XChild();
- xChild.oObj = (XChild)UnoRuntime.queryInterface(XChild.class, xContent);
- xChild.log = log;
+ xChild.oObj = UnoRuntime.queryInterface(XChild.class, xContent);
+ // xChild.log = log;
// hasParent dermines, if this content has a parent
- assure("getParent()", xChild._getParent(hasParent));
+ assertNotNull("getParent()", xChild._getParent(hasParent));
// parameter does dermine, if this funczion is supported: generally not supported with tdcp content
- assure("setParent()", xChild._setParent(false));
+ assertNotNull("setParent()", xChild._setParent(false));
// check the XPropertyChangeNotifier interface
_XPropertiesChangeNotifier xPropChange = new _XPropertiesChangeNotifier();
- xPropChange.oObj = (XPropertiesChangeNotifier)UnoRuntime.queryInterface(XPropertiesChangeNotifier.class, xContent);
- xPropChange.log = log;
- assure("addPropertiesChangeListener()", xPropChange._addPropertiesChangeListener());
- assure("removePropertiesChangeListener()", xPropChange._removePropertiesChangeListener());
+ xPropChange.oObj = UnoRuntime.queryInterface(XPropertiesChangeNotifier.class, xContent);
+ // xPropChange.log = log;
+ assertNotNull("addPropertiesChangeListener()", xPropChange._addPropertiesChangeListener());
+ assertNotNull("removePropertiesChangeListener()", xPropChange._removePropertiesChangeListener());
// check the XPropertySetInfoChangeNotifier interface
_XPropertySetInfoChangeNotifier xPropSetInfo = new _XPropertySetInfoChangeNotifier();
- xPropSetInfo.oObj = (XPropertySetInfoChangeNotifier)UnoRuntime.queryInterface(XPropertySetInfoChangeNotifier.class, xContent);
- xPropSetInfo.log = log;
- assure("addPropertiesChangeListener()", xPropSetInfo._addPropertiesChangeListener());
- assure("removePropertiesChangeListener()", xPropSetInfo._removePropertiesChangeListener());
+ xPropSetInfo.oObj = UnoRuntime.queryInterface(XPropertySetInfoChangeNotifier.class, xContent);
+ // xPropSetInfo.log = log;
+ assertNotNull("addPropertiesChangeListener()", xPropSetInfo._addPropertiesChangeListener());
+ assertNotNull("removePropertiesChangeListener()", xPropSetInfo._removePropertiesChangeListener());
// check the XCommandInfoChangeNotifier interface
_XCommandInfoChangeNotifier xCommandChange = new _XCommandInfoChangeNotifier();
- xCommandChange.oObj = (XCommandInfoChangeNotifier)UnoRuntime.queryInterface(XCommandInfoChangeNotifier.class, xContent);
- xCommandChange.log = log;
- assure("addCommandInfoChangeListener()", xCommandChange._addCommandInfoChangeListener());
- assure("removeCommandInfoChangeListener()", xCommandChange._removeCommandInfoChangeListener());
+ xCommandChange.oObj = UnoRuntime.queryInterface(XCommandInfoChangeNotifier.class, xContent);
+ // xCommandChange.log = log;
+ assertNotNull("addCommandInfoChangeListener()", xCommandChange._addCommandInfoChangeListener());
+ assertNotNull("removeCommandInfoChangeListener()", xCommandChange._removeCommandInfoChangeListener());
// check the XContent interface
_XContent xCont = new _XContent();
- xCont.oObj = (XContent)UnoRuntime.queryInterface(XContent.class, xContent);
- xCont.log = log;
- assure("addContentEventListener()", xCont._addContentEventListener());
- assure("getContentType()", xCont._getContentType());
- assure("getIdentifier()", xCont._getIdentifier());
- assure("removeContentEventListener()", xCont._removeContentEventListener());
+ xCont.oObj = UnoRuntime.queryInterface(XContent.class, xContent);
+ // xCont.log = log;
+ assertNotNull("addContentEventListener()", xCont._addContentEventListener());
+ assertNotNull("getContentType()", xCont._getContentType());
+ assertNotNull("getIdentifier()", xCont._getIdentifier());
+ assertNotNull("removeContentEventListener()", xCont._removeContentEventListener());
// check the XPropertyContainer interface
_XPropertyContainer xPropCont = new _XPropertyContainer();
- xPropCont.oObj = (XPropertyContainer)UnoRuntime.queryInterface(XPropertyContainer.class, xContent);
- xPropCont.log = log;
- assure("addProperty()", xPropCont._addProperty());
- assure("removeProperty()", xPropCont._removeProperty());
+ xPropCont.oObj = UnoRuntime.queryInterface(XPropertyContainer.class, xContent);
+ // xPropCont.log = log;
+ assertNotNull("addProperty()", xPropCont._addProperty());
+ assertNotNull("removeProperty()", xPropCont._removeProperty());
// check the XComponent interface
_XComponent xComponent = new _XComponent();
- xComponent.oObj = (XComponent)UnoRuntime.queryInterface(XComponent.class, xContent);
- xComponent.log = log;
- assure("addEventListener()", xComponent._addEventListener());
- assure("removeEventListener()", xComponent._removeEventListener());
+ xComponent.oObj = UnoRuntime.queryInterface(XComponent.class, xContent);
+ // xComponent.log = log;
+ assertNotNull("addEventListener()", xComponent._addEventListener());
+ assertNotNull("removeEventListener()", xComponent._removeEventListener());
// assure("dispose()", xComponent._dispose());
}
+
+
+
+
+ private XMultiServiceFactory getMSF()
+ {
+ final XMultiServiceFactory xMSF1 = UnoRuntime.queryInterface(XMultiServiceFactory.class, connection.getComponentContext().getServiceManager());
+ return xMSF1;
+ }
+
+ // setup and close connections
+ @BeforeClass public static void setUpConnection() throws Exception {
+ System.out.println("setUpConnection()");
+ connection.setUp();
+ }
+
+ @AfterClass public static void tearDownConnection()
+ throws InterruptedException, com.sun.star.uno.Exception
+ {
+ System.out.println("tearDownConnection()");
+ connection.tearDown();
+ }
+
+ private static final OfficeConnection connection = new OfficeConnection();
+
}
diff --git a/ucb/qa/complex/tdoc/CheckTransientDocumentsContent.java b/ucb/qa/complex/tdoc/CheckTransientDocumentsContent.java
index b492fd219119..ed121e92f9f1 100755
--- a/ucb/qa/complex/tdoc/CheckTransientDocumentsContent.java
+++ b/ucb/qa/complex/tdoc/CheckTransientDocumentsContent.java
@@ -30,28 +30,28 @@ import com.sun.star.beans.Property;
import com.sun.star.beans.XPropertySetInfo;
import com.sun.star.frame.XModel;
import com.sun.star.lang.XMultiServiceFactory;
-import com.sun.star.lang.XServiceInfo;
-import com.sun.star.sdbc.XResultSet;
import com.sun.star.text.XTextDocument;
import com.sun.star.ucb.Command;
-import com.sun.star.ucb.OpenCommandArgument2;
-import com.sun.star.ucb.OpenMode;
import com.sun.star.ucb.XCommandProcessor;
import com.sun.star.ucb.XContent;
-import com.sun.star.ucb.XContentAccess;
import com.sun.star.ucb.XContentIdentifier;
import com.sun.star.ucb.XContentIdentifierFactory;
import com.sun.star.ucb.XContentProvider;
-import com.sun.star.ucb.XDynamicResultSet;
import com.sun.star.uno.UnoRuntime;
-import complexlib.ComplexTestCase;
import util.WriterTools;
-import util.utils;
+import org.junit.After;
+import org.junit.AfterClass;
+import org.junit.Before;
+import org.junit.BeforeClass;
+import org.junit.Test;
+import org.openoffice.test.OfficeConnection;
+import static org.junit.Assert.*;
/**
*
*/
-public class CheckTransientDocumentsContent extends ComplexTestCase{
+public class CheckTransientDocumentsContent {
+ // TODO: document doesn't exists
private final String testDocuments[] = new String[]{"sForm.sxw"};//, "chinese.sxw", "Iterator.sxw"};
private final int countDocs = testDocuments.length;
private XMultiServiceFactory xMSF = null;
@@ -61,17 +61,18 @@ public class CheckTransientDocumentsContent extends ComplexTestCase{
return new String[] {"checkTransientDocumentsContent"};
}
- public void before() {
- xMSF = (XMultiServiceFactory)param.getMSF();
+ @Before public void before() {
+ xMSF = getMSF();
xTextDoc = new XTextDocument[countDocs];
- log.println("Open some documents.");
+ System.out.println("Open some documents.");
for (int i=0; i<countDocs; i++) {
- String fileName = utils.getFullTestURL(testDocuments[i]);
+ String fileName = TestDocument.getUrl(testDocuments[i]);
xTextDoc[i] = WriterTools.loadTextDoc(xMSF, fileName);
+ assertNotNull("Can't load document " + fileName, xTextDoc[i]);
}
}
- public void after() {
- log.println("Close all documents.");
+ @After public void after() {
+ System.out.println("Close all documents.");
for (int i=0; i<countDocs; i++) {
xTextDoc[i].dispose();
}
@@ -80,15 +81,13 @@ public class CheckTransientDocumentsContent extends ComplexTestCase{
/**
* Check the content of one document
*/
- public void checkTransientDocumentsContent() {
+ @Test public void checkTransientDocumentsContent() {
try {
// create the ucb
XContentIdentifierFactory xContentIdentifierFactory =
- (XContentIdentifierFactory)UnoRuntime.queryInterface(
- XContentIdentifierFactory.class, xMSF.createInstance(
- "com.sun.star.ucb.UniversalContentBroker"));
+ UnoRuntime.queryInterface(XContentIdentifierFactory.class, xMSF.createInstance("com.sun.star.ucb.UniversalContentBroker"));
XContentProvider xContentProvider =
- (XContentProvider)UnoRuntime.queryInterface(XContentProvider.class, xContentIdentifierFactory);
+ UnoRuntime.queryInterface(XContentProvider.class, xContentIdentifierFactory);
// create a content identifier from the ucb for tdoc
XContentIdentifier xContentIdentifier =
xContentIdentifierFactory.createContentIdentifier("vnd.sun.star.tdoc:/1");
@@ -96,7 +95,7 @@ public class CheckTransientDocumentsContent extends ComplexTestCase{
XContent xContent = xContentProvider.queryContent(xContentIdentifier);
// actual test: commands to get some properties
- XCommandProcessor xCommandProcessor = (XCommandProcessor)UnoRuntime.queryInterface(XCommandProcessor.class, xContent);
+ XCommandProcessor xCommandProcessor = UnoRuntime.queryInterface(XCommandProcessor.class, xContent);
// build up the command
Command command = new Command();
command.Name = "getPropertySetInfo";
@@ -106,16 +105,16 @@ public class CheckTransientDocumentsContent extends ComplexTestCase{
Object result = xCommandProcessor.execute(command, 0, null);
// check the result
- log.println("Result: "+ result.getClass().toString());
- XPropertySetInfo xPropertySetInfo = (XPropertySetInfo)UnoRuntime.queryInterface(XPropertySetInfo.class, result);
+ System.out.println("Result: "+ result.getClass().toString());
+ XPropertySetInfo xPropertySetInfo = UnoRuntime.queryInterface(XPropertySetInfo.class, result);
Property[] props = xPropertySetInfo.getProperties();
boolean res = false;
for(int i=0; i<props.length; i++) {
String propName = props[i].Name;
res |= propName.equals("DocumentModel");
- log.println("Found property: " + propName + " type: " + props[i].Type.getTypeName());
+ System.out.println("Found property: " + propName + " type: " + props[i].Type.getTypeName());
}
- assure("Did not find property 'DocumentModel' in the Property array.", res);
+ assertNotNull("Did not find property 'DocumentModel' in the Property array.", res);
// get on property
command.Name = "getPropertyValues";
@@ -130,16 +129,38 @@ public class CheckTransientDocumentsContent extends ComplexTestCase{
result = xCommandProcessor.execute(command, 0, null);
// check the result
- log.println("Result: "+ result.getClass().toString());
+ System.out.println("Result: "+ result.getClass().toString());
- XModel xModel = (XModel)UnoRuntime.queryInterface(XModel.class, result);
- assure("Did not get property 'DocumentModel'.", xModel == null);
+ XModel xModel = UnoRuntime.queryInterface(XModel.class, result);
+ assertTrue("Did not get property 'DocumentModel'.", xModel == null);
}
catch (com.sun.star.uno.Exception e) {
- e.printStackTrace((java.io.PrintWriter)log);
- failed("Could not create test objects.");
+ e.printStackTrace();
+ fail("Could not create test objects.");
}
}
+ private XMultiServiceFactory getMSF()
+ {
+ final XMultiServiceFactory xMSF1 = UnoRuntime.queryInterface(XMultiServiceFactory.class, connection.getComponentContext().getServiceManager());
+ return xMSF1;
+ }
+
+ // setup and close connections
+ @BeforeClass public static void setUpConnection() throws Exception {
+ System.out.println("setUpConnection()");
+ connection.setUp();
+ }
+
+ @AfterClass public static void tearDownConnection()
+ throws InterruptedException, com.sun.star.uno.Exception
+ {
+ System.out.println("tearDownConnection()");
+ connection.tearDown();
+ }
+
+ private static final OfficeConnection connection = new OfficeConnection();
+
+
}
diff --git a/ucb/qa/complex/tdoc/CheckTransientDocumentsContentProvider.java b/ucb/qa/complex/tdoc/CheckTransientDocumentsContentProvider.java
index ddac0cbb2d47..d5aebc7fc3cd 100755
--- a/ucb/qa/complex/tdoc/CheckTransientDocumentsContentProvider.java
+++ b/ucb/qa/complex/tdoc/CheckTransientDocumentsContentProvider.java
@@ -41,15 +41,23 @@ import com.sun.star.ucb.XContentIdentifierFactory;
import com.sun.star.ucb.XContentProvider;
import com.sun.star.ucb.XDynamicResultSet;
import com.sun.star.uno.UnoRuntime;
-import complexlib.ComplexTestCase;
+// import complexlib.ComplexTestCase;
import util.WriterTools;
-import util.utils;
+
+import org.junit.After;
+import org.junit.AfterClass;
+import org.junit.Before;
+import org.junit.BeforeClass;
+import org.junit.Test;
+import org.openoffice.test.OfficeConnection;
+import static org.junit.Assert.*;
/**
*
*/
-public class CheckTransientDocumentsContentProvider extends ComplexTestCase {
- private final String testDocuments[] = new String[]{"sForm.sxw", "chinese.sxw", "Iterator.sxw"};
+public class CheckTransientDocumentsContentProvider {
+ // TODO: document doesn't exists
+ private final String testDocuments[] = new String[]{/*"sForm.sxw",*/ "chinese.sxw", "Iterator.sxw"};
private final int countDocs = testDocuments.length;
private XMultiServiceFactory xMSF = null;
private XTextDocument[] xTextDoc = null;
@@ -58,17 +66,18 @@ public class CheckTransientDocumentsContentProvider extends ComplexTestCase {
return new String[]{"checkTransientDocumentsContentProvider"};
}
- public void before() {
- xMSF = (XMultiServiceFactory)param.getMSF();
+ @Before public void before() {
+ xMSF = getMSF();
xTextDoc = new XTextDocument[countDocs];
- log.println("Open some documents.");
+ System.out.println("Open some documents.");
for (int i=0; i<countDocs; i++) {
- String fileName = utils.getFullTestURL(testDocuments[i]);
+ String fileName = TestDocument.getUrl(testDocuments[i]);
xTextDoc[i] = WriterTools.loadTextDoc(xMSF, fileName);
+ assertNotNull("Can't load document " + fileName, xTextDoc[i]);
}
}
- public void after() {
- log.println("Close all documents.");
+ @After public void after() {
+ System.out.println("Close all documents.");
for (int i=0; i<countDocs; i++) {
xTextDoc[i].dispose();
}
@@ -78,18 +87,16 @@ public class CheckTransientDocumentsContentProvider extends ComplexTestCase {
* Check the provider of document content: open some documents
* and look if they are accessible.
*/
- public void checkTransientDocumentsContentProvider() {
+ @Test public void checkTransientDocumentsContentProvider() {
try {
// create a content provider
Object o = xMSF.createInstance("com.sun.star.comp.ucb.TransientDocumentsContentProvider");
XContentProvider xContentProvider =
- (XContentProvider)UnoRuntime.queryInterface(XContentProvider.class, o);
+ UnoRuntime.queryInterface(XContentProvider.class, o);
// create the ucb
XContentIdentifierFactory xContentIdentifierFactory =
- (XContentIdentifierFactory)UnoRuntime.queryInterface(
- XContentIdentifierFactory.class, xMSF.createInstance(
- "com.sun.star.ucb.UniversalContentBroker"));
+ UnoRuntime.queryInterface(XContentIdentifierFactory.class, xMSF.createInstance("com.sun.star.ucb.UniversalContentBroker"));
// create a content identifier from the ucb for tdoc
XContentIdentifier xContentIdentifier =
xContentIdentifierFactory.createContentIdentifier("vnd.sun.star.tdoc:/");
@@ -97,7 +104,7 @@ public class CheckTransientDocumentsContentProvider extends ComplexTestCase {
XContent xContent = xContentProvider.queryContent(xContentIdentifier);
// actual test: execute an "open" command with the content
- XCommandProcessor xCommandProcessor = (XCommandProcessor)UnoRuntime.queryInterface(XCommandProcessor.class, xContent);
+ XCommandProcessor xCommandProcessor = UnoRuntime.queryInterface(XCommandProcessor.class, xContent);
// build up the command
Command command = new Command();
OpenCommandArgument2 commandarg2 = new OpenCommandArgument2();
@@ -109,35 +116,59 @@ public class CheckTransientDocumentsContentProvider extends ComplexTestCase {
Object result = xCommandProcessor.execute(command, 0, null);
// check the result
- log.println("Result: "+ result.getClass().toString());
- XDynamicResultSet xDynamicResultSet = (XDynamicResultSet)UnoRuntime.queryInterface(XDynamicResultSet.class, result);
+ System.out.println("Result: "+ result.getClass().toString());
+ XDynamicResultSet xDynamicResultSet = UnoRuntime.queryInterface(XDynamicResultSet.class, result);
// check bug of wrong returned service name.
- XServiceInfo xServiceInfo = (XServiceInfo)UnoRuntime.queryInterface(XServiceInfo.class, xDynamicResultSet);
+ XServiceInfo xServiceInfo = UnoRuntime.queryInterface(XServiceInfo.class, xDynamicResultSet);
String[] sNames = xServiceInfo.getSupportedServiceNames();
String serviceName = sNames[0];
if (sNames.length > 1)
- failed("Implementation has been changed. Check this test!");
- assure("The service name '" + serviceName + "' is not valid.", !serviceName.equals("com.sun.star.ucb.DynamicContentResultSet"), true);
+ {
+ fail("Implementation has been changed. Check this test!");
+ }
+ assertTrue("The service name '" + serviceName + "' is not valid.", !serviceName.equals("com.sun.star.ucb.DynamicContentResultSet"));
XResultSet xResultSet = xDynamicResultSet.getStaticResultSet();
- XContentAccess xContentAccess = (XContentAccess)UnoRuntime.queryInterface(XContentAccess.class, xResultSet);
+ XContentAccess xContentAccess = UnoRuntime.queryInterface(XContentAccess.class, xResultSet);
// iterate over the result: three docs were opened, we should have at least three content identifier strings
int countContentIdentifiers = 0;
while(xResultSet.next()) {
countContentIdentifiers++;
String identifier = xContentAccess.queryContentIdentifierString();
- log.println("Identifier of row " + xResultSet.getRow() + ": " + identifier);
+ System.out.println("Identifier of row " + xResultSet.getRow() + ": " + identifier);
}
// some feeble test: if the amount >2, we're ok.
// 2do: check better
- assure("Did only find " + countContentIdentifiers + " open documents." +
+ assertTrue("Did only find " + countContentIdentifiers + " open documents." +
" Should have been at least 3.", countContentIdentifiers>2);
}
catch (com.sun.star.uno.Exception e) {
- e.printStackTrace((java.io.PrintWriter)log);
- failed("Could not create test objects.");
+ e.printStackTrace();
+ fail("Could not create test objects.");
}
}
+
+ private XMultiServiceFactory getMSF()
+ {
+ final XMultiServiceFactory xMSF1 = UnoRuntime.queryInterface(XMultiServiceFactory.class, connection.getComponentContext().getServiceManager());
+ return xMSF1;
+ }
+
+ // setup and close connections
+ @BeforeClass public static void setUpConnection() throws Exception {
+ System.out.println("setUpConnection()");
+ connection.setUp();
+ }
+
+ @AfterClass public static void tearDownConnection()
+ throws InterruptedException, com.sun.star.uno.Exception
+ {
+ System.out.println("tearDownConnection()");
+ connection.tearDown();
+ }
+
+ private static final OfficeConnection connection = new OfficeConnection();
+
}
diff --git a/ucb/qa/complex/tdoc/CheckTransientDocumentsDocumentContent.java b/ucb/qa/complex/tdoc/CheckTransientDocumentsDocumentContent.java
index 229f5d388697..30411458daee 100755
--- a/ucb/qa/complex/tdoc/CheckTransientDocumentsDocumentContent.java
+++ b/ucb/qa/complex/tdoc/CheckTransientDocumentsDocumentContent.java
@@ -34,49 +34,50 @@ import com.sun.star.embed.XStorage;
import com.sun.star.frame.XModel;
import com.sun.star.frame.XTransientDocumentsDocumentContentFactory;
import com.sun.star.lang.XMultiServiceFactory;
-import com.sun.star.lang.XServiceInfo;
import com.sun.star.sdbc.XResultSet;
import com.sun.star.sdbc.XRow;
import com.sun.star.text.XTextDocument;
import com.sun.star.ucb.Command;
import com.sun.star.ucb.ContentInfo;
-import com.sun.star.ucb.InsertCommandArgument;
import com.sun.star.ucb.OpenCommandArgument2;
import com.sun.star.ucb.OpenMode;
import com.sun.star.ucb.XCommandProcessor;
import com.sun.star.ucb.XContent;
-import com.sun.star.ucb.XContentAccess;
-import com.sun.star.ucb.XContentIdentifier;
-import com.sun.star.ucb.XContentIdentifierFactory;
-import com.sun.star.ucb.XContentProvider;
import com.sun.star.ucb.XDynamicResultSet;
import com.sun.star.uno.UnoRuntime;
-import complexlib.ComplexTestCase;
import util.WriterTools;
import util.utils;
-
+import org.junit.After;
+import org.junit.AfterClass;
+import org.junit.Before;
+import org.junit.BeforeClass;
+import org.junit.Test;
+import org.openoffice.test.OfficeConnection;
+import static org.junit.Assert.*;
/**
*
*/
-public class CheckTransientDocumentsDocumentContent extends ComplexTestCase {
+public class CheckTransientDocumentsDocumentContent {
+ // TODO: document doesn't exists
private final String testDocuments = "sForm.sxw";
private final String folderName = "TestFolder";
private XMultiServiceFactory xMSF = null;
private XTextDocument xTextDoc = null;
- public String[] getTestMethodNames() {
- return new String[]{"checkTransientDocumentsDocumentContent"};
- }
+// public String[] getTestMethodNames() {
+// return new String[]{"checkTransientDocumentsDocumentContent"};
+// }
- public void before() {
- xMSF = (XMultiServiceFactory)param.getMSF();
- log.println("Open a document.");
- String fileName = utils.getFullTestURL(testDocuments);
+ @Before public void before() {
+ xMSF = getMSF();
+ System.out.println("Open a document.");
+ String fileName = TestDocument.getUrl(testDocuments);
xTextDoc = WriterTools.loadTextDoc(xMSF, fileName);
+ assertNotNull(xTextDoc);
}
- public void after() {
- log.println("Close all documents.");
+ @After public void after() {
+ System.out.println("Close all documents.");
xTextDoc.dispose();
}
@@ -84,30 +85,28 @@ public class CheckTransientDocumentsDocumentContent extends ComplexTestCase {
* Check the provider of document content: open some documents
* and look if they are accessible.
*/
- public void checkTransientDocumentsDocumentContent() {
+ @Test public void checkTransientDocumentsDocumentContent() {
try {
// create a content provider
Object o = xMSF.createInstance("com.sun.star.comp.ucb.TransientDocumentsDocumentContentFactory");
XTransientDocumentsDocumentContentFactory xTransientDocumentsDocumentContentFactory =
- (XTransientDocumentsDocumentContentFactory)UnoRuntime.queryInterface(
- XTransientDocumentsDocumentContentFactory.class, o);
+ UnoRuntime.queryInterface(XTransientDocumentsDocumentContentFactory.class, o);
// get the model from the opened document
XModel xModel = xTextDoc.getCurrentController().getModel();
// a little additional check for 114733
- XDocumentSubStorageSupplier xDocumentSubStorageSupplier = (XDocumentSubStorageSupplier)
- UnoRuntime.queryInterface(XDocumentSubStorageSupplier.class, xModel);
+ XDocumentSubStorageSupplier xDocumentSubStorageSupplier = UnoRuntime.queryInterface(XDocumentSubStorageSupplier.class, xModel);
String[]names = xDocumentSubStorageSupplier.getDocumentSubStoragesNames();
for (int i=0; i<names.length; i++) {
- log.println("SubStorage names " + i + ": " +names[i]);
+ System.out.println("SubStorage names " + i + ": " +names[i]);
}
XStorage xStorage = xDocumentSubStorageSupplier.getDocumentSubStorage(names[0], ElementModes.READWRITE);
- assure("Could not get a storage from the XDocumentStorageSupplier.", xStorage != null);
+ assertTrue("Could not get a storage from the XDocumentStorageSupplier.", xStorage != null);
// get content
XContent xContent = xTransientDocumentsDocumentContentFactory.createDocumentContent(xModel);
// actual test: execute some commands
- XCommandProcessor xCommandProcessor = (XCommandProcessor)UnoRuntime.queryInterface(XCommandProcessor.class, xContent);
+ XCommandProcessor xCommandProcessor = UnoRuntime.queryInterface(XCommandProcessor.class, xContent);
// create the command and arguments
Command command = new Command();
@@ -123,19 +122,19 @@ public class CheckTransientDocumentsDocumentContent extends ComplexTestCase {
command.Argument = cmargs2;
Object result = xCommandProcessor.execute(command, 0, null);
- XDynamicResultSet xDynamicResultSet = (XDynamicResultSet)UnoRuntime.queryInterface(XDynamicResultSet.class, result);
+ XDynamicResultSet xDynamicResultSet = UnoRuntime.queryInterface(XDynamicResultSet.class, result);
XResultSet xResultSet = xDynamicResultSet.getStaticResultSet();
- XRow xRow = (XRow)UnoRuntime.queryInterface(XRow.class, xResultSet);
+ XRow xRow = UnoRuntime.queryInterface(XRow.class, xResultSet);
// create the new folder 'folderName': first, check if it's already there
while(xResultSet.next()) {
String existingFolderName = xRow.getString(1);
- log.println("Found existing folder: '" + existingFolderName + "'");
+ System.out.println("Found existing folder: '" + existingFolderName + "'");
if (folderName.equals(existingFolderName)) {
- failed("Cannot create a new folder: folder already exists: adapt test or choose a different document.");
+ fail("Cannot create a new folder: folder already exists: adapt test or choose a different document.");
}
}
// create a folder
- log.println("Create new folder "+ folderName);
+ System.out.println("Create new folder "+ folderName);
ContentInfo contentInfo = new ContentInfo();
contentInfo.Type = "application/vnd.sun.star.tdoc-folder";
@@ -143,10 +142,10 @@ public class CheckTransientDocumentsDocumentContent extends ComplexTestCase {
command.Argument = contentInfo;
result = xCommandProcessor.execute(command, 0, null);
- XContent xNewFolder = (XContent)UnoRuntime.queryInterface(XContent.class, result);
+ XContent xNewFolder = UnoRuntime.queryInterface(XContent.class, result);
- XCommandProcessor xFolderCommandProcessor = (XCommandProcessor)UnoRuntime.queryInterface(XCommandProcessor.class, xNewFolder);
- log.println("Got the new folder: " + utils.getImplName(xNewFolder));
+ XCommandProcessor xFolderCommandProcessor = UnoRuntime.queryInterface(XCommandProcessor.class, xNewFolder);
+ System.out.println("Got the new folder: " + utils.getImplName(xNewFolder));
// name the new folder
PropertyValue[] titleProp = new PropertyValue[1];
@@ -170,10 +169,33 @@ public class CheckTransientDocumentsDocumentContent extends ComplexTestCase {
xFolderCommandProcessor.execute(commitCommand, 0, null); */
}
catch (com.sun.star.uno.Exception e) {
- e.printStackTrace((java.io.PrintWriter)log);
- failed("Could not create test objects.");
+ e.printStackTrace();
+ fail("Could not create test objects.");
}
}
+
+ private XMultiServiceFactory getMSF()
+ {
+ final XMultiServiceFactory xMSF1 = UnoRuntime.queryInterface(XMultiServiceFactory.class, connection.getComponentContext().getServiceManager());
+ return xMSF1;
+ }
+
+ // setup and close connections
+ @BeforeClass public static void setUpConnection() throws Exception {
+ System.out.println("setUpConnection()");
+ connection.setUp();
+ }
+
+ @AfterClass public static void tearDownConnection()
+ throws InterruptedException, com.sun.star.uno.Exception
+ {
+ System.out.println("tearDownConnection()");
+ connection.tearDown();
+ }
+
+ private static final OfficeConnection connection = new OfficeConnection();
+
+
}
diff --git a/ucb/qa/complex/tdoc/TestDocument.java b/ucb/qa/complex/tdoc/TestDocument.java
new file mode 100755
index 000000000000..875b75ccb0d0
--- /dev/null
+++ b/ucb/qa/complex/tdoc/TestDocument.java
@@ -0,0 +1,39 @@
+/*************************************************************************
+*
+* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+*
+* Copyright 2000, 2010 Oracle and/or its affiliates.
+*
+* OpenOffice.org - a multi-platform office productivity suite
+*
+* This file is part of OpenOffice.org.
+*
+* OpenOffice.org is free software: you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License version 3
+* only, as published by the Free Software Foundation.
+*
+* OpenOffice.org is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU Lesser General Public License version 3 for more details
+* (a copy is included in the LICENSE file that accompanied this code).
+*
+* You should have received a copy of the GNU Lesser General Public License
+* version 3 along with OpenOffice.org. If not, see
+* <http://www.openoffice.org/license.html>
+* for a copy of the LGPLv3 License.
+*
+************************************************************************/
+
+package complex.tdoc;
+
+import java.io.File;
+import org.openoffice.test.OfficeFileUrl;
+
+final class TestDocument {
+ public static String getUrl(String name) {
+ return OfficeFileUrl.getAbsolute(new File("test_documents", name));
+ }
+
+ private TestDocument() {}
+}
diff --git a/ucb/qa/complex/tdoc/interfaces/_XChild.java b/ucb/qa/complex/tdoc/_XChild.java
index f59df2776ade..d6893f3570fe 100644..100755
--- a/ucb/qa/complex/tdoc/interfaces/_XChild.java
+++ b/ucb/qa/complex/tdoc/_XChild.java
@@ -25,7 +25,7 @@
*
************************************************************************/
-package complex.tdoc.interfaces;
+package complex.tdoc;
import lib.MultiMethodTest;
import lib.Status;
diff --git a/ucb/qa/complex/tdoc/interfaces/_XCommandInfoChangeNotifier.java b/ucb/qa/complex/tdoc/_XCommandInfoChangeNotifier.java
index 9800c5c0a398..ab32873e9ffb 100755
--- a/ucb/qa/complex/tdoc/interfaces/_XCommandInfoChangeNotifier.java
+++ b/ucb/qa/complex/tdoc/_XCommandInfoChangeNotifier.java
@@ -24,7 +24,7 @@
* for a copy of the LGPLv3 License.
*
************************************************************************/
-package complex.tdoc.interfaces;
+package complex.tdoc;
import com.sun.star.ucb.XCommandInfoChangeListener;
import com.sun.star.ucb.XCommandInfoChangeNotifier;
diff --git a/ucb/qa/complex/tdoc/interfaces/_XCommandProcessor.java b/ucb/qa/complex/tdoc/_XCommandProcessor.java
index 2fc31a4bd586..92411d05456f 100755
--- a/ucb/qa/complex/tdoc/interfaces/_XCommandProcessor.java
+++ b/ucb/qa/complex/tdoc/_XCommandProcessor.java
@@ -25,7 +25,7 @@
*
************************************************************************/
-package complex.tdoc.interfaces;
+package complex.tdoc;
import com.sun.star.beans.Property;
import com.sun.star.beans.XPropertySetInfo;
diff --git a/ucb/qa/complex/tdoc/interfaces/_XComponent.java b/ucb/qa/complex/tdoc/_XComponent.java
index 1716e51d1358..16d5c9bebeea 100755
--- a/ucb/qa/complex/tdoc/interfaces/_XComponent.java
+++ b/ucb/qa/complex/tdoc/_XComponent.java
@@ -25,7 +25,7 @@
*
************************************************************************/
-package complex.tdoc.interfaces;
+package complex.tdoc;
import com.sun.star.container.XNameContainer;
import lib.MultiMethodTest;
diff --git a/ucb/qa/complex/tdoc/interfaces/_XContent.java b/ucb/qa/complex/tdoc/_XContent.java
index 4c84ecc1d8df..820d2cef0fc7 100755
--- a/ucb/qa/complex/tdoc/interfaces/_XContent.java
+++ b/ucb/qa/complex/tdoc/_XContent.java
@@ -24,7 +24,7 @@
* for a copy of the LGPLv3 License.
*
************************************************************************/
-package complex.tdoc.interfaces;
+package complex.tdoc;
import com.sun.star.ucb.XContent;
import com.sun.star.ucb.XContentEventListener;
diff --git a/ucb/qa/complex/tdoc/interfaces/_XPropertiesChangeNotifier.java b/ucb/qa/complex/tdoc/_XPropertiesChangeNotifier.java
index 790f295c7be5..88e080cd9ec2 100755
--- a/ucb/qa/complex/tdoc/interfaces/_XPropertiesChangeNotifier.java
+++ b/ucb/qa/complex/tdoc/_XPropertiesChangeNotifier.java
@@ -24,7 +24,7 @@
* for a copy of the LGPLv3 License.
*
************************************************************************/
-package complex.tdoc.interfaces;
+package complex.tdoc;
import com.sun.star.beans.XPropertiesChangeListener;
import com.sun.star.beans.XPropertiesChangeNotifier;
diff --git a/ucb/qa/complex/tdoc/interfaces/_XPropertyContainer.java b/ucb/qa/complex/tdoc/_XPropertyContainer.java
index fd7ff94c8f8f..e425a703d403 100755
--- a/ucb/qa/complex/tdoc/interfaces/_XPropertyContainer.java
+++ b/ucb/qa/complex/tdoc/_XPropertyContainer.java
@@ -24,7 +24,7 @@
* for a copy of the LGPLv3 License.
*
************************************************************************/
-package complex.tdoc.interfaces;
+package complex.tdoc;
import com.sun.star.beans.XPropertyContainer;
import share.LogWriter;
diff --git a/ucb/qa/complex/tdoc/interfaces/_XPropertySetInfoChangeNotifier.java b/ucb/qa/complex/tdoc/_XPropertySetInfoChangeNotifier.java
index ec1d7d64ada5..4671a0d21571 100755
--- a/ucb/qa/complex/tdoc/interfaces/_XPropertySetInfoChangeNotifier.java
+++ b/ucb/qa/complex/tdoc/_XPropertySetInfoChangeNotifier.java
@@ -24,7 +24,7 @@
* for a copy of the LGPLv3 License.
*
************************************************************************/
-package complex.tdoc.interfaces;
+package complex.tdoc;
import com.sun.star.beans.XPropertySetInfoChangeListener;
import com.sun.star.beans.XPropertySetInfoChangeNotifier;
diff --git a/ucb/qa/complex/tdoc/interfaces/_XServiceInfo.java b/ucb/qa/complex/tdoc/_XServiceInfo.java
index 20ea90c75b68..ee0304bc52c9 100644..100755
--- a/ucb/qa/complex/tdoc/interfaces/_XServiceInfo.java
+++ b/ucb/qa/complex/tdoc/_XServiceInfo.java
@@ -25,7 +25,7 @@
*
************************************************************************/
-package complex.tdoc.interfaces;
+package complex.tdoc;
import lib.MultiMethodTest;
diff --git a/ucb/qa/complex/tdoc/interfaces/_XTypeProvider.java b/ucb/qa/complex/tdoc/_XTypeProvider.java
index 378dfb267f09..f88e00d18825 100644..100755
--- a/ucb/qa/complex/tdoc/interfaces/_XTypeProvider.java
+++ b/ucb/qa/complex/tdoc/_XTypeProvider.java
@@ -25,7 +25,7 @@
*
************************************************************************/
-package complex.tdoc.interfaces;
+package complex.tdoc;
import lib.MultiMethodTest;
diff --git a/ucb/qa/complex/tdoc/interfaces/makefile.mk b/ucb/qa/complex/tdoc/interfaces/makefile.mk
index 3a57d1501ca4..5399383f19e6 100755
--- a/ucb/qa/complex/tdoc/interfaces/makefile.mk
+++ b/ucb/qa/complex/tdoc/interfaces/makefile.mk
@@ -25,10 +25,10 @@
#
#*************************************************************************
-PRJ = ..$/..$/..$/..
+PRJ = ../../../..
TARGET = TransientDocument
PRJNAME = $(TARGET)
-PACKAGE = complex$/tdoc$/interfaces
+PACKAGE = complex/tdoc/interfaces
# --- Settings -----------------------------------------------------
.INCLUDE: settings.mk
diff --git a/ucb/qa/complex/tdoc/makefile.mk b/ucb/qa/complex/tdoc/makefile.mk
index 175184de0f27..01f8ec0f76fa 100755
--- a/ucb/qa/complex/tdoc/makefile.mk
+++ b/ucb/qa/complex/tdoc/makefile.mk
@@ -25,62 +25,49 @@
#
#*************************************************************************
-PRJ = ..$/..$/..
-TARGET = TransientDocument
-PRJNAME = $(TARGET)
-PACKAGE = complex.tdoc
-
-# --- Settings -----------------------------------------------------
-.INCLUDE: settings.mk
-
-
-#----- compile .java files -----------------------------------------
-
-JARFILES = ridl.jar unoil.jar jurt.jar juh.jar java_uno.jar OOoRunner.jar
-JAVAFILES = CheckContentProvider.java \
- CheckTransientDocumentsContent.java \
- CheckTransientDocumentsContentProvider.java \
- CheckTransientDocumentsDocumentContent.java
-
-# CheckSimpleFileAccess.java \
-#----- make a jar from compiled files ------------------------------
+.IF "$(OOO_SUBSEQUENT_TESTS)" == ""
+nothing .PHONY:
+.ELSE
-MAXLINELENGTH = 100000
+PRJ = ../../..
+PRJNAME = sc
+TARGET = qa_complex_tdoc
-JARCLASSDIRS = $(PACKAGE)
-JARTARGET = $(TARGET).jar
-JARCOMPRESS = TRUE
+.IF "$(OOO_JUNIT_JAR)" != ""
+PACKAGE = complex/tdoc
-# --- Parameters for the test --------------------------------------
+JAVATESTFILES = \
+ CheckContentProvider.java \
+ CheckTransientDocumentsContent.java \
+ CheckTransientDocumentsContentProvider.java \
+ CheckTransientDocumentsDocumentContent.java
-# start an office if the parameter is set for the makefile
-.IF "$(OFFICE)" == ""
-CT_APPEXECCOMMAND =
-.ELSE
-CT_APPEXECCOMMAND = -AppExecutionCommand \
- "$(OFFICE)$/soffice -accept=socket,host=localhost,port=8100;urp;"
-.ENDIF
+JAVAFILES = $(JAVATESTFILES) \
+ TestDocument.java \
+ _XChild.java \
+ _XCommandInfoChangeNotifier.java \
+ _XCommandProcessor.java \
+ _XComponent.java \
+ _XContent.java \
+ _XPropertiesChangeNotifier.java \
+ _XPropertyContainer.java \
+ _XPropertySetInfoChangeNotifier.java \
+ _XServiceInfo.java \
+ _XTypeProvider.java
-# test base is java complex
-CT_TESTBASE = -TestBase java_complex
+JARFILES = OOoRunner.jar ridl.jar test.jar unoil.jar
+EXTRAJARFILES = $(OOO_JUNIT_JAR)
-# replace $/ with . in package name
-CT_PACKAGE = -o $(PACKAGE:s\$/\.\)
+# Sample how to debug
+# JAVAIFLAGS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,address=9003,suspend=y
-# start the runner application
-CT_APP = org.openoffice.Runner
+.END
-# test document path
-CT_TESTDOCS = -tdoc $(PWD)$/..$/test_documents
-
-# --- Targets ------------------------------------------------------
+.INCLUDE: settings.mk
+.INCLUDE: target.mk
+.INCLUDE: installationtest.mk
-run: ALLTAR
- @echo .
- @echo "The followig tests are available:"
- @echo $(foreach,i,$(JAVAFILES) "dmake $(i:b) ")
+ALLTAR : javatest
-.INCLUDE : target.mk
+.END
-Check%:
- +java -cp $(CLASSPATH) $(CT_APP) $(CT_TESTBASE) $(CT_TESTDOCS) $(CT_APPEXECCOMMAND) $(CT_PACKAGE).$@
diff --git a/ucb/qa/complex/test_documents/Iterator.sxw b/ucb/qa/complex/tdoc/test_documents/Iterator.sxw
index 9a7f8961bb47..9a7f8961bb47 100644..100755
--- a/ucb/qa/complex/test_documents/Iterator.sxw
+++ b/ucb/qa/complex/tdoc/test_documents/Iterator.sxw
Binary files differ
diff --git a/ucb/qa/complex/test_documents/chinese.sxw b/ucb/qa/complex/tdoc/test_documents/chinese.sxw
index 53b242a292c3..53b242a292c3 100644..100755
--- a/ucb/qa/complex/test_documents/chinese.sxw
+++ b/ucb/qa/complex/tdoc/test_documents/chinese.sxw
Binary files differ
diff --git a/ucb/qa/complex/test_documents/filter.sxw b/ucb/qa/complex/tdoc/test_documents/filter.sxw
index e4b077c65f11..e4b077c65f11 100644..100755
--- a/ucb/qa/complex/test_documents/filter.sxw
+++ b/ucb/qa/complex/tdoc/test_documents/filter.sxw
Binary files differ
diff --git a/ucb/qa/complex/ucb/UCB.java b/ucb/qa/complex/ucb/UCB.java
index f7b1d2a8e918..445525927703 100755
--- a/ucb/qa/complex/ucb/UCB.java
+++ b/ucb/qa/complex/ucb/UCB.java
@@ -34,7 +34,6 @@ package complex.ucb;
* Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
*/
-import complexlib.ComplexTestCase;
import java.util.List;
import java.util.Vector;
@@ -42,13 +41,22 @@ import com.sun.star.beans.Property;
import com.sun.star.lang.XMultiServiceFactory;
import com.sun.star.sdbc.XResultSet;
import com.sun.star.sdbc.XRow;
-import com.sun.star.uno.XComponentContext;
+// import com.sun.star.uno.XComponentContext;
import com.sun.star.ucb.*;
-import com.sun.star.bridge.XUnoUrlResolver;
+// import com.sun.star.bridge.XUnoUrlResolver;
import com.sun.star.uno.UnoRuntime;
-import com.sun.star.uno.XComponentContext;
-import com.sun.star.lang.XMultiComponentFactory;
-import com.sun.star.beans.XPropertySet;
+// import com.sun.star.uno.XComponentContext;
+// import com.sun.star.lang.XMultiComponentFactory;
+// import com.sun.star.beans.XPropertySet;
+
+import org.junit.After;
+import org.junit.AfterClass;
+import org.junit.Before;
+import org.junit.BeforeClass;
+import org.junit.Test;
+import org.openoffice.test.OfficeConnection;
+import static org.junit.Assert.*;
+
/**
* @author rpiterman
* This class is used to copy the content of a folder to
@@ -56,12 +64,12 @@ import com.sun.star.beans.XPropertySet;
* There is an incosistency with argument order.
* It should be always: dir,filename.
*/
-public class UCB extends ComplexTestCase {
+public class UCB {
private Object ucb;
- public String[] getTestMethodNames() {
- return new String[] {"checkWrongFtpConnection"};
- }
+// public String[] getTestMethodNames() {
+// return new String[] {"checkWrongFtpConnection"};
+// }
public void init(XMultiServiceFactory xmsf) throws Exception {
String[] keys = new String[2];
@@ -79,11 +87,13 @@ public class UCB extends ComplexTestCase {
/**
* target name can be "", in which case the name stays lige the source name
- * @param sourceDir
- * @param filename
- * @param targetDir
- * @param targetName
- * @return
+
+ * @param xContent
+ * @param aCommandName
+ * @param aArgument
+ * @return
+ * @throws com.sun.star.ucb.CommandAbortedException
+ * @throws com.sun.star.uno.Exception
*/
public Object executeCommand(
@@ -92,9 +102,7 @@ public class UCB extends ComplexTestCase {
Object aArgument)
throws com.sun.star.ucb.CommandAbortedException, com.sun.star.uno.Exception {
XCommandProcessor xCmdProcessor =
- (XCommandProcessor) UnoRuntime.queryInterface(
- XCommandProcessor.class,
- xContent);
+ UnoRuntime.queryInterface(XCommandProcessor.class, xContent);
Command aCommand = new Command();
aCommand.Name = aCommandName;
aCommand.Handle = -1; // not available
@@ -118,39 +126,44 @@ public class UCB extends ComplexTestCase {
XDynamicResultSet xSet;
xSet =
- (XDynamicResultSet) UnoRuntime.queryInterface(
- XDynamicResultSet.class,
- executeCommand(xContent, "open", aArg));
+ UnoRuntime.queryInterface(XDynamicResultSet.class, executeCommand(xContent, "open", aArg));
XResultSet xResultSet = xSet.getStaticResultSet();
List files = new Vector();
- if (xResultSet.first()) {
+ if (xResultSet.first())
+ {
// obtain XContentAccess interface for child content access and XRow for properties
- XContentAccess xContentAccess =
- (XContentAccess) UnoRuntime.queryInterface(
- XContentAccess.class,
- xResultSet);
- XRow xRow =
- (XRow) UnoRuntime.queryInterface(XRow.class, xResultSet);
- do {
+ XContentAccess xContentAccess = UnoRuntime.queryInterface(XContentAccess.class, xResultSet);
+ XRow xRow = UnoRuntime.queryInterface(XRow.class, xResultSet);
+ do
+ {
// Obtain URL of child.
String aId = xContentAccess.queryContentIdentifierString();
// First column: Title (column numbers are 1-based!)
String aTitle = xRow.getString(1);
- if (aTitle.length() == 0 && xRow.wasNull());
- //ignore
+ if (aTitle.length() == 0 && xRow.wasNull())
+ {
+ //ignore
+ }
else
- files.add(aTitle);
+ {
+ files.add(aTitle);
+ }
} while (xResultSet.next()); // next child
}
if (verifier != null)
- for (int i = 0; i < files.size(); i++)
- if (!verifier.verify(files.get(i)))
- files.remove(i--);
-
+ {
+ for (int i = 0; i < files.size(); i++)
+ {
+ if (!verifier.verify(files.get(i)))
+ {
+ files.remove(i--);
+ }
+ }
+ }
return files;
}
@@ -165,45 +178,46 @@ public class UCB extends ComplexTestCase {
pv[0].Handle = -1;
Object row = executeCommand(content, "getPropertyValues", pv);
- XRow xrow = (XRow) UnoRuntime.queryInterface(XRow.class, row);
+ XRow xrow = UnoRuntime.queryInterface(XRow.class, row);
if (type.equals(String.class))
- return xrow.getString(1);
+ {
+ return xrow.getString(1);
+ }
else if (type.equals(Boolean.class))
- return xrow.getBoolean(1) ? Boolean.TRUE : Boolean.FALSE;
+ {
+ return xrow.getBoolean(1) ? Boolean.TRUE : Boolean.FALSE;
+ }
else if (type.equals(Integer.class))
- return new Integer(xrow.getInt(1));
+ {
+ return new Integer(xrow.getInt(1));
+ }
else if (type.equals(Short.class))
- return new Short(xrow.getShort(1));
+ {
+ return new Short(xrow.getShort(1));
+ }
else
- return null;
+ {
+ return null;
+ }
}
- public Object getContent(String path) throws Exception {
- XContentIdentifier id =
- (
- (XContentIdentifierFactory) UnoRuntime.queryInterface(
- XContentIdentifierFactory.class,
- ucb)).createContentIdentifier(
- path);
-
- return (
- (XContentProvider) UnoRuntime.queryInterface(
- XContentProvider.class,
- ucb)).queryContent(
- id);
+ public Object getContent(String path) throws Exception
+ {
+ XContentIdentifier id = (UnoRuntime.queryInterface(XContentIdentifierFactory.class, ucb)).createContentIdentifier(path);
+ return (UnoRuntime.queryInterface(XContentProvider.class, ucb)).queryContent(id);
}
public static interface Verifier {
public boolean verify(Object object);
}
- public void checkWrongFtpConnection() {
+ @Test public void checkWrongFtpConnection() {
//localhost ;Lo-1.Germany.sun.com; 10.16.65.155
try {
- XMultiServiceFactory xLocMSF = (XMultiServiceFactory)param.getMSF();
+ XMultiServiceFactory xLocMSF = getMSF();
String acountUrl = "ftp://noname:nopasswd@nohost";
- log.println(acountUrl);
+ System.out.println(acountUrl);
init(xLocMSF);
Object content = getContent(acountUrl);
@@ -211,22 +225,45 @@ public class UCB extends ComplexTestCase {
aArg.Mode = OpenMode.ALL; // FOLDER, DOCUMENTS -> simple filter
aArg.Priority = 32768; // Ignored by most implementations
- log.println("now executing open");
+ System.out.println("now executing open");
executeCommand(content, "open", aArg);
- failed("Expected 'IllegalArgumentException' was not thrown.");
+ fail("Expected 'IllegalArgumentException' was not thrown.");
} catch (com.sun.star.lang.IllegalArgumentException ex) {
//TODO error message;
- log.println("Correct exception thrown: " + ex.getClass().toString());
- } catch(com.sun.star.ucb.InteractiveNetworkResolveNameException ex) {
- log.println("This Exception is correctly thrown when no Proxy in StarOffice is used.");
- log.println("To reproduce the bug behaviour, use a Proxy and try again.");
+ System.out.println("Correct exception thrown: " + ex.getClass().toString());
+ } catch(com.sun.star.ucb.InteractiveNetworkException ex) {
+ System.out.println("This Exception is correctly thrown when no Proxy in StarOffice is used.");
+ System.out.println("To reproduce the bug behaviour, use a Proxy and try again.");
} catch (Exception ex) {
- ex.printStackTrace((java.io.PrintWriter)log);
+ ex.printStackTrace();
String exceptionName = ex.toString();
- log.println("ExName: '"+exceptionName+"'");
- failed("Wrong exception thrown: " + exceptionName);
+ System.out.println("ExName: '"+exceptionName+"'");
+ fail("Wrong exception thrown: " + exceptionName);
}
// System.exit(0);
}
+
+
+ private XMultiServiceFactory getMSF()
+ {
+ final XMultiServiceFactory xMSF1 = UnoRuntime.queryInterface(XMultiServiceFactory.class, connection.getComponentContext().getServiceManager());
+ return xMSF1;
+ }
+
+ // setup and close connections
+ @BeforeClass public static void setUpConnection() throws Exception {
+ System.out.println("setUpConnection()");
+ connection.setUp();
+ }
+
+ @AfterClass public static void tearDownConnection()
+ throws InterruptedException, com.sun.star.uno.Exception
+ {
+ System.out.println("tearDownConnection()");
+ connection.tearDown();
+ }
+
+ private static final OfficeConnection connection = new OfficeConnection();
+
}
diff --git a/ucb/qa/complex/ucb/makefile.mk b/ucb/qa/complex/ucb/makefile.mk
index 4664bd3cfae7..4ac3928c9e5e 100755
--- a/ucb/qa/complex/ucb/makefile.mk
+++ b/ucb/qa/complex/ucb/makefile.mk
@@ -25,54 +25,38 @@
#
#*************************************************************************
-PRJ = ..$/..$/..
-TARGET = UCB
-PRJNAME = $(TARGET)
-PACKAGE = complex$/ucb
-
-# --- Settings -----------------------------------------------------
-.INCLUDE: settings.mk
-
-
-#----- compile .java files -----------------------------------------
-
-JARFILES = mysql.jar ridl.jar unoil.jar jurt.jar juh.jar java_uno.jar OOoRunner.jar
-JAVAFILES = UCB.java
-JAVACLASSFILES = $(foreach,i,$(JAVAFILES) $(CLASSDIR)$/$(PACKAGE)$/$(i:b).class)
+.IF "$(OOO_SUBSEQUENT_TESTS)" == ""
+nothing .PHONY:
+.ELSE
-#----- make a jar from compiled files ------------------------------
+PRJ = ../../..
+PRJNAME = UCB
+TARGET = qa_complex_ucb
-MAXLINELENGTH = 100000
+.IF "$(OOO_JUNIT_JAR)" != ""
+PACKAGE = complex/ucb
+JAVATESTFILES = \
+ UCB.java
-JARCLASSDIRS = $(PACKAGE)
-JARTARGET = $(TARGET).jar
-JARCOMPRESS = TRUE
+JAVAFILES = $(JAVATESTFILES)
-# --- Parameters for the test --------------------------------------
+JARFILES = OOoRunner.jar ridl.jar test.jar unoil.jar jurt.jar
+EXTRAJARFILES = $(OOO_JUNIT_JAR)
-# start an office if the parameter is set for the makefile
-.IF "$(OFFICE)" == ""
-CT_APPEXECCOMMAND =
-.ELSE
-CT_APPEXECCOMMAND = -AppExecutionCommand "$(OFFICE)$/soffice -accept=socket,host=localhost,port=8100;urp;"
-.ENDIF
+# Sample how to debug
+# JAVAIFLAGS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,address=9003,suspend=y
+.END
-# test base is java complex
-CT_TESTBASE = -TestBase java_complex
+.INCLUDE: settings.mk
+.INCLUDE: target.mk
+.INCLUDE: installationtest.mk
-# test looks something like the.full.package.TestName
-CT_TEST = -o $(PACKAGE:s\$/\.\).$(JAVAFILES:b)
+ALLTAR : javatest
-# start the runner application
-CT_APP = org.openoffice.Runner
+.END
-# --- Targets ------------------------------------------------------
-.INCLUDE : target.mk
-RUN:
- +java -cp $(CLASSPATH) $(CT_APP) $(CT_APPEXECCOMMAND) $(CT_TESTBASE) $(CT_TEST)
-run: RUN
diff --git a/ucb/qa/unoapi/Test.java b/ucb/qa/unoapi/Test.java
index 145716d871d4..145716d871d4 100644..100755
--- a/ucb/qa/unoapi/Test.java
+++ b/ucb/qa/unoapi/Test.java
diff --git a/ucb/qa/unoapi/knownissues.xcl b/ucb/qa/unoapi/knownissues.xcl
index 7929c1612c18..7929c1612c18 100644..100755
--- a/ucb/qa/unoapi/knownissues.xcl
+++ b/ucb/qa/unoapi/knownissues.xcl
diff --git a/ucb/qa/unoapi/makefile.mk b/ucb/qa/unoapi/makefile.mk
index 80c7caae73b7..80c7caae73b7 100644..100755
--- a/ucb/qa/unoapi/makefile.mk
+++ b/ucb/qa/unoapi/makefile.mk
diff --git a/ucb/qa/unoapi/ucb.sce b/ucb/qa/unoapi/ucb.sce
index 6d8cd4584ed2..6d8cd4584ed2 100644..100755
--- a/ucb/qa/unoapi/ucb.sce
+++ b/ucb/qa/unoapi/ucb.sce
diff --git a/ucb/source/cacher/cached.xml b/ucb/source/cacher/cached.xml
index 208520272f7c..208520272f7c 100644..100755
--- a/ucb/source/cacher/cached.xml
+++ b/ucb/source/cacher/cached.xml
diff --git a/ucb/source/cacher/cached1.component b/ucb/source/cacher/cached1.component
new file mode 100755
index 000000000000..aa19e54b5da3
--- /dev/null
+++ b/ucb/source/cacher/cached1.component
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--**********************************************************************
+*
+* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+*
+* Copyright 2000, 2010 Oracle and/or its affiliates.
+*
+* OpenOffice.org - a multi-platform office productivity suite
+*
+* This file is part of OpenOffice.org.
+*
+* OpenOffice.org is free software: you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License version 3
+* only, as published by the Free Software Foundation.
+*
+* OpenOffice.org is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU Lesser General Public License version 3 for more details
+* (a copy is included in the LICENSE file that accompanied this code).
+*
+* You should have received a copy of the GNU Lesser General Public License
+* version 3 along with OpenOffice.org. If not, see
+* <http://www.openoffice.org/license.html>
+* for a copy of the LGPLv3 License.
+*
+**********************************************************************-->
+
+<component loader="com.sun.star.loader.SharedLibrary"
+ xmlns="http://openoffice.org/2010/uno-components">
+ <implementation name="com.sun.star.comp.ucb.CachedContentResultSetFactory">
+ <service name="com.sun.star.ucb.CachedContentResultSetFactory"/>
+ </implementation>
+ <implementation name="com.sun.star.comp.ucb.CachedContentResultSetStubFactory">
+ <service name="com.sun.star.ucb.CachedContentResultSetStubFactory"/>
+ </implementation>
+ <implementation name="com.sun.star.comp.ucb.CachedDynamicResultSetFactory">
+ <service name="com.sun.star.ucb.CachedDynamicResultSetFactory"/>
+ </implementation>
+ <implementation name="com.sun.star.comp.ucb.CachedDynamicResultSetStubFactory">
+ <service name="com.sun.star.ucb.CachedDynamicResultSetStubFactory"/>
+ </implementation>
+</component>
diff --git a/ucb/source/cacher/cachedcontentresultset.cxx b/ucb/source/cacher/cachedcontentresultset.cxx
index c4e2f8bb113e..c4e2f8bb113e 100644..100755
--- a/ucb/source/cacher/cachedcontentresultset.cxx
+++ b/ucb/source/cacher/cachedcontentresultset.cxx
diff --git a/ucb/source/cacher/cachedcontentresultset.hxx b/ucb/source/cacher/cachedcontentresultset.hxx
index d630db4779cd..d630db4779cd 100644..100755
--- a/ucb/source/cacher/cachedcontentresultset.hxx
+++ b/ucb/source/cacher/cachedcontentresultset.hxx
diff --git a/ucb/source/cacher/cachedcontentresultsetstub.cxx b/ucb/source/cacher/cachedcontentresultsetstub.cxx
index a381911d53da..a381911d53da 100644..100755
--- a/ucb/source/cacher/cachedcontentresultsetstub.cxx
+++ b/ucb/source/cacher/cachedcontentresultsetstub.cxx
diff --git a/ucb/source/cacher/cachedcontentresultsetstub.hxx b/ucb/source/cacher/cachedcontentresultsetstub.hxx
index f05a76690f50..f05a76690f50 100644..100755
--- a/ucb/source/cacher/cachedcontentresultsetstub.hxx
+++ b/ucb/source/cacher/cachedcontentresultsetstub.hxx
diff --git a/ucb/source/cacher/cacheddynamicresultset.cxx b/ucb/source/cacher/cacheddynamicresultset.cxx
index 3eb99d080499..3eb99d080499 100644..100755
--- a/ucb/source/cacher/cacheddynamicresultset.cxx
+++ b/ucb/source/cacher/cacheddynamicresultset.cxx
diff --git a/ucb/source/cacher/cacheddynamicresultset.hxx b/ucb/source/cacher/cacheddynamicresultset.hxx
index 8d728c71a9a4..8d728c71a9a4 100644..100755
--- a/ucb/source/cacher/cacheddynamicresultset.hxx
+++ b/ucb/source/cacher/cacheddynamicresultset.hxx
diff --git a/ucb/source/cacher/cacheddynamicresultsetstub.cxx b/ucb/source/cacher/cacheddynamicresultsetstub.cxx
index eece777a645a..eece777a645a 100644..100755
--- a/ucb/source/cacher/cacheddynamicresultsetstub.cxx
+++ b/ucb/source/cacher/cacheddynamicresultsetstub.cxx
diff --git a/ucb/source/cacher/cacheddynamicresultsetstub.hxx b/ucb/source/cacher/cacheddynamicresultsetstub.hxx
index f5874ceac9bf..f5874ceac9bf 100644..100755
--- a/ucb/source/cacher/cacheddynamicresultsetstub.hxx
+++ b/ucb/source/cacher/cacheddynamicresultsetstub.hxx
diff --git a/ucb/source/cacher/cacheserv.cxx b/ucb/source/cacher/cacheserv.cxx
index 60667fdd13d3..da1f310f577f 100644..100755
--- a/ucb/source/cacher/cacheserv.cxx
+++ b/ucb/source/cacher/cacheserv.cxx
@@ -43,45 +43,6 @@ using namespace com::sun::star::registry;
using ::rtl::OUString;
//=========================================================================
-static sal_Bool writeInfo( void * pRegistryKey,
- const OUString & rImplementationName,
- Sequence< OUString > const & rServiceNames )
-{
- OUString aKeyName( RTL_CONSTASCII_USTRINGPARAM( "/" ) );
- aKeyName += rImplementationName;
- aKeyName += OUString(RTL_CONSTASCII_USTRINGPARAM( "/UNO/SERVICES" ));
-
- Reference< XRegistryKey > xKey;
- try
- {
- xKey = static_cast< XRegistryKey * >(
- pRegistryKey )->createKey( aKeyName );
- }
- catch ( InvalidRegistryException const & )
- {
- }
-
- if ( !xKey.is() )
- return sal_False;
-
- sal_Bool bSuccess = sal_True;
-
- for ( sal_Int32 n = 0; n < rServiceNames.getLength(); ++n )
- {
- try
- {
- xKey->createKey( rServiceNames[ n ] );
- }
- catch ( InvalidRegistryException const & )
- {
- bSuccess = sal_False;
- break;
- }
- }
- return bSuccess;
-}
-
-//=========================================================================
extern "C" void SAL_CALL component_getImplementationEnvironment(
const sal_Char ** ppEnvTypeName, uno_Environment ** )
{
@@ -89,44 +50,6 @@ extern "C" void SAL_CALL component_getImplementationEnvironment(
}
//=========================================================================
-extern "C" sal_Bool SAL_CALL component_writeInfo( void *, void * pRegistryKey )
-{
- return pRegistryKey &&
-
- //////////////////////////////////////////////////////////////////////
- // CachedContentResultSetFactory.
- //////////////////////////////////////////////////////////////////////
-
- writeInfo( pRegistryKey,
- CachedContentResultSetFactory::getImplementationName_Static(),
- CachedContentResultSetFactory::getSupportedServiceNames_Static() ) &&
-
- //////////////////////////////////////////////////////////////////////
- // CachedContentResultSetStubFactory.
- //////////////////////////////////////////////////////////////////////
-
- writeInfo( pRegistryKey,
- CachedContentResultSetStubFactory::getImplementationName_Static(),
- CachedContentResultSetStubFactory::getSupportedServiceNames_Static() ) &&
-
- //////////////////////////////////////////////////////////////////////
- // CachedDynamicResultSetFactory.
- //////////////////////////////////////////////////////////////////////
-
- writeInfo( pRegistryKey,
- CachedDynamicResultSetFactory::getImplementationName_Static(),
- CachedDynamicResultSetFactory::getSupportedServiceNames_Static() ) &&
-
- //////////////////////////////////////////////////////////////////////
- // CachedDynamicResultSetStubFactory.
- //////////////////////////////////////////////////////////////////////
-
- writeInfo( pRegistryKey,
- CachedDynamicResultSetStubFactory::getImplementationName_Static(),
- CachedDynamicResultSetStubFactory::getSupportedServiceNames_Static() );
-}
-
-//=========================================================================
extern "C" void * SAL_CALL component_getFactory(
const sal_Char * pImplName, void * pServiceManager, void * )
{
diff --git a/ucb/source/cacher/contentresultsetwrapper.cxx b/ucb/source/cacher/contentresultsetwrapper.cxx
index 60a824c8351c..60a824c8351c 100644..100755
--- a/ucb/source/cacher/contentresultsetwrapper.cxx
+++ b/ucb/source/cacher/contentresultsetwrapper.cxx
diff --git a/ucb/source/cacher/contentresultsetwrapper.hxx b/ucb/source/cacher/contentresultsetwrapper.hxx
index 5ad14328e2ee..5ad14328e2ee 100644..100755
--- a/ucb/source/cacher/contentresultsetwrapper.hxx
+++ b/ucb/source/cacher/contentresultsetwrapper.hxx
diff --git a/ucb/source/cacher/dynamicresultsetwrapper.cxx b/ucb/source/cacher/dynamicresultsetwrapper.cxx
index 3574c6813da7..3574c6813da7 100644..100755
--- a/ucb/source/cacher/dynamicresultsetwrapper.cxx
+++ b/ucb/source/cacher/dynamicresultsetwrapper.cxx
diff --git a/ucb/source/cacher/dynamicresultsetwrapper.hxx b/ucb/source/cacher/dynamicresultsetwrapper.hxx
index edbf4677f217..edbf4677f217 100644..100755
--- a/ucb/source/cacher/dynamicresultsetwrapper.hxx
+++ b/ucb/source/cacher/dynamicresultsetwrapper.hxx
diff --git a/ucb/source/cacher/makefile.mk b/ucb/source/cacher/makefile.mk
index 600fefc174f7..24d245ec6ce8 100644..100755
--- a/ucb/source/cacher/makefile.mk
+++ b/ucb/source/cacher/makefile.mk
@@ -66,3 +66,11 @@ DEF1NAME=$(SHL1TARGET)
.INCLUDE: target.mk
+
+ALLTAR : $(MISC)/cached1.component
+
+$(MISC)/cached1.component .ERRREMOVE : $(SOLARENV)/bin/createcomponent.xslt \
+ cached1.component
+ $(XSLTPROC) --nonet --stringparam uri \
+ '$(COMPONENTPREFIX_BASIS_NATIVE)$(SHL1TARGETN:f)' -o $@ \
+ $(SOLARENV)/bin/createcomponent.xslt cached1.component
diff --git a/ucb/source/core/cmdenv.cxx b/ucb/source/core/cmdenv.cxx
index 4bb07bb77269..4bb07bb77269 100644..100755
--- a/ucb/source/core/cmdenv.cxx
+++ b/ucb/source/core/cmdenv.cxx
diff --git a/ucb/source/core/cmdenv.hxx b/ucb/source/core/cmdenv.hxx
index 4f45989666f3..4f45989666f3 100644..100755
--- a/ucb/source/core/cmdenv.hxx
+++ b/ucb/source/core/cmdenv.hxx
diff --git a/ucb/source/core/exports2.dxp b/ucb/source/core/exports2.dxp
index a1936474f752..8091459f4d84 100644..100755
--- a/ucb/source/core/exports2.dxp
+++ b/ucb/source/core/exports2.dxp
@@ -1,5 +1,4 @@
component_getImplementationEnvironment
-component_writeInfo
component_getFactory
_ZTIN3com3sun4star3ucb34InteractiveBadTransferURLExceptionE
diff --git a/ucb/source/core/identify.cxx b/ucb/source/core/identify.cxx
index 9e02137a79ca..9e02137a79ca 100644..100755
--- a/ucb/source/core/identify.cxx
+++ b/ucb/source/core/identify.cxx
diff --git a/ucb/source/core/identify.hxx b/ucb/source/core/identify.hxx
index 6c554c85d6e0..6c554c85d6e0 100644..100755
--- a/ucb/source/core/identify.hxx
+++ b/ucb/source/core/identify.hxx
diff --git a/ucb/source/core/makefile.mk b/ucb/source/core/makefile.mk
index 34765eb74289..6360f82320d2 100644..100755
--- a/ucb/source/core/makefile.mk
+++ b/ucb/source/core/makefile.mk
@@ -74,3 +74,11 @@ DEF1NAME=$(SHL1TARGET)
.INCLUDE: target.mk
+
+ALLTAR : $(MISC)/ucb1.component
+
+$(MISC)/ucb1.component .ERRREMOVE : $(SOLARENV)/bin/createcomponent.xslt \
+ ucb1.component
+ $(XSLTPROC) --nonet --stringparam uri \
+ '$(COMPONENTPREFIX_BASIS_NATIVE)$(SHL1TARGETN:f)' -o $@ \
+ $(SOLARENV)/bin/createcomponent.xslt ucb1.component
diff --git a/ucb/source/core/providermap.hxx b/ucb/source/core/providermap.hxx
index 6649563af477..6649563af477 100644..100755
--- a/ucb/source/core/providermap.hxx
+++ b/ucb/source/core/providermap.hxx
diff --git a/ucb/source/core/provprox.cxx b/ucb/source/core/provprox.cxx
index 8233a3300d9d..8233a3300d9d 100644..100755
--- a/ucb/source/core/provprox.cxx
+++ b/ucb/source/core/provprox.cxx
diff --git a/ucb/source/core/provprox.hxx b/ucb/source/core/provprox.hxx
index d5168d058717..d5168d058717 100644..100755
--- a/ucb/source/core/provprox.hxx
+++ b/ucb/source/core/provprox.hxx
diff --git a/ucb/source/core/ucb.cxx b/ucb/source/core/ucb.cxx
index 4124c8c6ec71..4124c8c6ec71 100644..100755
--- a/ucb/source/core/ucb.cxx
+++ b/ucb/source/core/ucb.cxx
diff --git a/ucb/source/core/ucb.hxx b/ucb/source/core/ucb.hxx
index a7b373cd9e3e..a7b373cd9e3e 100644..100755
--- a/ucb/source/core/ucb.hxx
+++ b/ucb/source/core/ucb.hxx
diff --git a/ucb/source/core/ucb.xml b/ucb/source/core/ucb.xml
index 1473c035ba83..1473c035ba83 100644..100755
--- a/ucb/source/core/ucb.xml
+++ b/ucb/source/core/ucb.xml
diff --git a/ucb/source/core/ucb1.component b/ucb/source/core/ucb1.component
new file mode 100755
index 000000000000..e9d408822cc9
--- /dev/null
+++ b/ucb/source/core/ucb1.component
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--**********************************************************************
+*
+* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+*
+* Copyright 2000, 2010 Oracle and/or its affiliates.
+*
+* OpenOffice.org - a multi-platform office productivity suite
+*
+* This file is part of OpenOffice.org.
+*
+* OpenOffice.org is free software: you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License version 3
+* only, as published by the Free Software Foundation.
+*
+* OpenOffice.org is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU Lesser General Public License version 3 for more details
+* (a copy is included in the LICENSE file that accompanied this code).
+*
+* You should have received a copy of the GNU Lesser General Public License
+* version 3 along with OpenOffice.org. If not, see
+* <http://www.openoffice.org/license.html>
+* for a copy of the LGPLv3 License.
+*
+**********************************************************************-->
+
+<component loader="com.sun.star.loader.SharedLibrary"
+ xmlns="http://openoffice.org/2010/uno-components">
+ <implementation name="com.sun.star.comp.ucb.CommandEnvironment">
+ <service name="com.sun.star.ucb.CommandEnvironment"/>
+ </implementation>
+ <implementation name="com.sun.star.comp.ucb.UcbContentProviderProxyFactory">
+ <service name="com.sun.star.ucb.ContentProviderProxyFactory"/>
+ </implementation>
+ <implementation name="com.sun.star.comp.ucb.UcbPropertiesManager">
+ <service name="com.sun.star.ucb.PropertiesManager"/>
+ </implementation>
+ <implementation name="com.sun.star.comp.ucb.UcbStore">
+ <service name="com.sun.star.ucb.Store"/>
+ </implementation>
+ <implementation name="com.sun.star.comp.ucb.UniversalContentBroker">
+ <service name="com.sun.star.ucb.UniversalContentBroker"/>
+ </implementation>
+</component>
diff --git a/ucb/source/core/ucbcmds.cxx b/ucb/source/core/ucbcmds.cxx
index 488fcbfcd731..488fcbfcd731 100644..100755
--- a/ucb/source/core/ucbcmds.cxx
+++ b/ucb/source/core/ucbcmds.cxx
diff --git a/ucb/source/core/ucbcmds.hxx b/ucb/source/core/ucbcmds.hxx
index 20f2a4eb90b0..20f2a4eb90b0 100644..100755
--- a/ucb/source/core/ucbcmds.hxx
+++ b/ucb/source/core/ucbcmds.hxx
diff --git a/ucb/source/core/ucbprops.cxx b/ucb/source/core/ucbprops.cxx
index a35de4af8e2a..a35de4af8e2a 100644..100755
--- a/ucb/source/core/ucbprops.cxx
+++ b/ucb/source/core/ucbprops.cxx
diff --git a/ucb/source/core/ucbprops.hxx b/ucb/source/core/ucbprops.hxx
index 5cb608e3c60c..5cb608e3c60c 100644..100755
--- a/ucb/source/core/ucbprops.hxx
+++ b/ucb/source/core/ucbprops.hxx
diff --git a/ucb/source/core/ucbserv.cxx b/ucb/source/core/ucbserv.cxx
index 85a935b7a8bd..6fac85a716df 100644..100755
--- a/ucb/source/core/ucbserv.cxx
+++ b/ucb/source/core/ucbserv.cxx
@@ -30,7 +30,6 @@
#include "precompiled_ucb.hxx"
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
#include <com/sun/star/lang/XSingleServiceFactory.hpp>
-#include <com/sun/star/registry/XRegistryKey.hpp>
#include "ucb.hxx"
#include "ucbstore.hxx"
#include "ucbprops.hxx"
@@ -39,48 +38,8 @@
using namespace com::sun::star::uno;
using namespace com::sun::star::lang;
-using namespace com::sun::star::registry;
-
using ::rtl::OUString;
-//=========================================================================
-static sal_Bool writeInfo( void * pRegistryKey,
- const OUString & rImplementationName,
- Sequence< OUString > const & rServiceNames )
-{
- OUString aKeyName( RTL_CONSTASCII_USTRINGPARAM("/") );
- aKeyName += rImplementationName;
- aKeyName += OUString(RTL_CONSTASCII_USTRINGPARAM("/UNO/SERVICES"));
-
- Reference< XRegistryKey > xKey;
- try
- {
- xKey = static_cast< XRegistryKey * >(
- pRegistryKey )->createKey( aKeyName );
- }
- catch ( InvalidRegistryException const & )
- {
- }
-
- if ( !xKey.is() )
- return sal_False;
-
- sal_Bool bSuccess = sal_True;
-
- for ( sal_Int32 n = 0; n < rServiceNames.getLength(); ++n )
- {
- try
- {
- xKey->createKey( rServiceNames[ n ] );
- }
- catch ( InvalidRegistryException const & )
- {
- bSuccess = sal_False;
- break;
- }
- }
- return bSuccess;
-}
//=========================================================================
extern "C" void SAL_CALL component_getImplementationEnvironment(
@@ -90,52 +49,6 @@ extern "C" void SAL_CALL component_getImplementationEnvironment(
}
//=========================================================================
-extern "C" sal_Bool SAL_CALL component_writeInfo( void *, void * pRegistryKey )
-{
- return pRegistryKey &&
-
- //////////////////////////////////////////////////////////////////////
- // Universal Content Broker.
- //////////////////////////////////////////////////////////////////////
-
- writeInfo( pRegistryKey,
- UniversalContentBroker::getImplementationName_Static(),
- UniversalContentBroker::getSupportedServiceNames_Static() ) &&
-
- //////////////////////////////////////////////////////////////////////
- // UCB Store.
- //////////////////////////////////////////////////////////////////////
-
- writeInfo( pRegistryKey,
- UcbStore::getImplementationName_Static(),
- UcbStore::getSupportedServiceNames_Static() ) &&
-
- //////////////////////////////////////////////////////////////////////
- // UCB PropertiesManager.
- //////////////////////////////////////////////////////////////////////
-
- writeInfo( pRegistryKey,
- UcbPropertiesManager::getImplementationName_Static(),
- UcbPropertiesManager::getSupportedServiceNames_Static() ) &&
-
- //////////////////////////////////////////////////////////////////////
- // UCP Proxy Factory.
- //////////////////////////////////////////////////////////////////////
-
- writeInfo( pRegistryKey,
- UcbContentProviderProxyFactory::getImplementationName_Static(),
- UcbContentProviderProxyFactory::getSupportedServiceNames_Static() ) &&
-
- //////////////////////////////////////////////////////////////////////
- // Command Environment.
- //////////////////////////////////////////////////////////////////////
-
- writeInfo( pRegistryKey,
- ucb_cmdenv::UcbCommandEnvironment::getImplementationName_Static(),
- ucb_cmdenv::UcbCommandEnvironment::getSupportedServiceNames_Static() );
-}
-
-//=========================================================================
extern "C" void * SAL_CALL component_getFactory(
const sal_Char * pImplName, void * pServiceManager, void * )
{
diff --git a/ucb/source/core/ucbstore.cxx b/ucb/source/core/ucbstore.cxx
index 8aaf9d294937..1e8aeda7df0b 100644..100755
--- a/ucb/source/core/ucbstore.cxx
+++ b/ucb/source/core/ucbstore.cxx
@@ -321,7 +321,7 @@ struct PropertySetRegistry_Impl
sal_Bool m_bTriedToGetRootWriteAccess; // #82494#
PropertySetRegistry_Impl( const Sequence< Any > &rInitArgs )
- : m_aInitArgs( rInitArgs ),
+ : m_aInitArgs( rInitArgs ),
m_bTriedToGetRootReadAccess( sal_False ),
m_bTriedToGetRootWriteAccess( sal_False )
{
diff --git a/ucb/source/core/ucbstore.hxx b/ucb/source/core/ucbstore.hxx
index 0d54bbb28e75..0d54bbb28e75 100644..100755
--- a/ucb/source/core/ucbstore.hxx
+++ b/ucb/source/core/ucbstore.hxx
diff --git a/ucb/source/inc/regexp.hxx b/ucb/source/inc/regexp.hxx
index f115afa35c31..f115afa35c31 100644..100755
--- a/ucb/source/inc/regexp.hxx
+++ b/ucb/source/inc/regexp.hxx
diff --git a/ucb/source/inc/regexpmap.hxx b/ucb/source/inc/regexpmap.hxx
index 717a077a9e0f..717a077a9e0f 100644..100755
--- a/ucb/source/inc/regexpmap.hxx
+++ b/ucb/source/inc/regexpmap.hxx
diff --git a/ucb/source/inc/regexpmap.tpt b/ucb/source/inc/regexpmap.tpt
index 9d4a7fb69c82..9d4a7fb69c82 100644..100755
--- a/ucb/source/inc/regexpmap.tpt
+++ b/ucb/source/inc/regexpmap.tpt
diff --git a/ucb/source/regexp/makefile.mk b/ucb/source/regexp/makefile.mk
index e748f054ea13..e748f054ea13 100644..100755
--- a/ucb/source/regexp/makefile.mk
+++ b/ucb/source/regexp/makefile.mk
diff --git a/ucb/source/regexp/regexp.cxx b/ucb/source/regexp/regexp.cxx
index 18136bc16b5d..18136bc16b5d 100644..100755
--- a/ucb/source/regexp/regexp.cxx
+++ b/ucb/source/regexp/regexp.cxx
diff --git a/ucb/source/sorter/makefile.mk b/ucb/source/sorter/makefile.mk
index 68a9959589d2..008e39b4bce3 100644..100755
--- a/ucb/source/sorter/makefile.mk
+++ b/ucb/source/sorter/makefile.mk
@@ -61,3 +61,11 @@ DEF1NAME=$(SHL1TARGET)
.INCLUDE: target.mk
+
+ALLTAR : $(MISC)/srtrs1.component
+
+$(MISC)/srtrs1.component .ERRREMOVE : $(SOLARENV)/bin/createcomponent.xslt \
+ srtrs1.component
+ $(XSLTPROC) --nonet --stringparam uri \
+ '$(COMPONENTPREFIX_BASIS_NATIVE)$(SHL1TARGETN:f)' -o $@ \
+ $(SOLARENV)/bin/createcomponent.xslt srtrs1.component
diff --git a/ucb/source/sorter/sortdynres.cxx b/ucb/source/sorter/sortdynres.cxx
index c1da9c32159c..c1da9c32159c 100644..100755
--- a/ucb/source/sorter/sortdynres.cxx
+++ b/ucb/source/sorter/sortdynres.cxx
diff --git a/ucb/source/sorter/sortdynres.hxx b/ucb/source/sorter/sortdynres.hxx
index bd11c530564b..bd11c530564b 100644..100755
--- a/ucb/source/sorter/sortdynres.hxx
+++ b/ucb/source/sorter/sortdynres.hxx
diff --git a/ucb/source/sorter/sortmain.cxx b/ucb/source/sorter/sortmain.cxx
index 846bb0d9e8ad..d30cfebf1334 100644..100755
--- a/ucb/source/sorter/sortmain.cxx
+++ b/ucb/source/sorter/sortmain.cxx
@@ -31,52 +31,11 @@
#include <sortdynres.hxx>
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
#include <com/sun/star/lang/XSingleServiceFactory.hpp>
-#include <com/sun/star/registry/XRegistryKey.hpp>
using namespace com::sun::star::uno;
using namespace com::sun::star::lang;
-using namespace com::sun::star::registry;
-
using ::rtl::OUString;
-//=========================================================================
-static sal_Bool writeInfo( void * pRegistryKey,
- const OUString & rImplementationName,
- Sequence< OUString > const & rServiceNames )
-{
- OUString aKeyName( RTL_CONSTASCII_USTRINGPARAM("/") );
- aKeyName += rImplementationName;
- aKeyName += OUString(RTL_CONSTASCII_USTRINGPARAM("/UNO/SERVICES"));
-
- Reference< XRegistryKey > xKey;
- try
- {
- xKey = static_cast< XRegistryKey * >(
- pRegistryKey )->createKey( aKeyName );
- }
- catch ( InvalidRegistryException const & )
- {
- }
-
- if ( !xKey.is() )
- return sal_False;
-
- sal_Bool bSuccess = sal_True;
-
- for ( sal_Int32 n = 0; n < rServiceNames.getLength(); ++n )
- {
- try
- {
- xKey->createKey( rServiceNames[ n ] );
- }
- catch ( InvalidRegistryException const & )
- {
- bSuccess = sal_False;
- break;
- }
- }
- return bSuccess;
-}
//=========================================================================
extern "C" void SAL_CALL component_getImplementationEnvironment(
@@ -86,20 +45,6 @@ extern "C" void SAL_CALL component_getImplementationEnvironment(
}
//=========================================================================
-extern "C" sal_Bool SAL_CALL component_writeInfo( void *, void * pRegistryKey )
-{
- return pRegistryKey &&
-
- //////////////////////////////////////////////////////////////////////
- // SortedDynamicResultSetFactory.
- //////////////////////////////////////////////////////////////////////
-
- writeInfo( pRegistryKey,
- SortedDynamicResultSetFactory::getImplementationName_Static(),
- SortedDynamicResultSetFactory::getSupportedServiceNames_Static() );
-}
-
-//=========================================================================
extern "C" void * SAL_CALL component_getFactory(
const sal_Char * pImplName, void * pServiceManager, void * )
{
diff --git a/ucb/source/sorter/sortresult.cxx b/ucb/source/sorter/sortresult.cxx
index b34303a043d8..f0a6bb3fb516 100644..100755
--- a/ucb/source/sorter/sortresult.cxx
+++ b/ucb/source/sorter/sortresult.cxx
@@ -492,7 +492,7 @@ sal_Int32 SAL_CALL SortedResultSet::getRow()
@param row
is the number of rows to move. Could be negative.
@returns
- <sal_True/> if the cursor is on a row; <sal_False/> otherwise
+ <TRUE/> if the cursor is on a row; <FALSE/> otherwise
@throws SQLException
if a database access error occurs or if row is 0, or the result set
type is FORWARD_ONLY.
@@ -554,7 +554,7 @@ sal_Bool SAL_CALL SortedResultSet::absolute( sal_Int32 row )
@param rows
is the number of rows to move. Could be negative.
@returns
- <sal_True/> if the cursor is on a valid row; <sal_False/> if it is off
+ <TRUE/> if the cursor is on a valid row; <FALSE/> if it is off
the result set.
@throws SQLException
if a database access error occurs or if there is no
@@ -599,7 +599,7 @@ sal_Bool SAL_CALL SortedResultSet::relative( sal_Int32 rows )
<p>Note: <code>previous()</code> is not the same as
<code>relative(-1)</code> because it makes sense to call
<code>previous()</code> when there is no current row.
- @returns <sal_True/> if the cursor is on a valid row; <sal_False/> if it is off
+ @returns <TRUE/> if the cursor is on a valid row; <FALSE/> if it is off
the result set.
@throws SQLException
if a database access error occurs or the result set type
diff --git a/ucb/source/sorter/sortresult.hxx b/ucb/source/sorter/sortresult.hxx
index bb6a0260c897..bb6a0260c897 100644..100755
--- a/ucb/source/sorter/sortresult.hxx
+++ b/ucb/source/sorter/sortresult.hxx
diff --git a/ucb/source/sorter/srtrs.xml b/ucb/source/sorter/srtrs.xml
index 51626a1e6acc..51626a1e6acc 100644..100755
--- a/ucb/source/sorter/srtrs.xml
+++ b/ucb/source/sorter/srtrs.xml
diff --git a/ucb/source/sorter/srtrs1.component b/ucb/source/sorter/srtrs1.component
new file mode 100755
index 000000000000..c32705160c0f
--- /dev/null
+++ b/ucb/source/sorter/srtrs1.component
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--**********************************************************************
+*
+* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+*
+* Copyright 2000, 2010 Oracle and/or its affiliates.
+*
+* OpenOffice.org - a multi-platform office productivity suite
+*
+* This file is part of OpenOffice.org.
+*
+* OpenOffice.org is free software: you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License version 3
+* only, as published by the Free Software Foundation.
+*
+* OpenOffice.org is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU Lesser General Public License version 3 for more details
+* (a copy is included in the LICENSE file that accompanied this code).
+*
+* You should have received a copy of the GNU Lesser General Public License
+* version 3 along with OpenOffice.org. If not, see
+* <http://www.openoffice.org/license.html>
+* for a copy of the LGPLv3 License.
+*
+**********************************************************************-->
+
+<component loader="com.sun.star.loader.SharedLibrary"
+ xmlns="http://openoffice.org/2010/uno-components">
+ <implementation name="com.sun.star.comp.ucb.SortedDynamicResultSetFactory">
+ <service name="com.sun.star.ucb.SortedDynamicResultSetFactory"/>
+ </implementation>
+</component>
diff --git a/ucb/source/ucp/expand/makefile.mk b/ucb/source/ucp/expand/makefile.mk
index 32de160318f2..70e441171a44 100644..100755
--- a/ucb/source/ucp/expand/makefile.mk
+++ b/ucb/source/ucp/expand/makefile.mk
@@ -59,3 +59,11 @@ DEF1NAME = $(SHL1TARGET)
.ENDIF # L10N_framework
.INCLUDE : target.mk
+
+ALLTAR : $(MISC)/ucpexpand1.component
+
+$(MISC)/ucpexpand1.component .ERRREMOVE : $(SOLARENV)/bin/createcomponent.xslt \
+ ucpexpand1.component
+ $(XSLTPROC) --nonet --stringparam uri \
+ '$(COMPONENTPREFIX_BASIS_NATIVE)$(SHL1TARGETN:f)' -o $@ \
+ $(SOLARENV)/bin/createcomponent.xslt ucpexpand1.component
diff --git a/ucb/source/ucp/expand/ucpexpand.cxx b/ucb/source/ucp/expand/ucpexpand.cxx
index 81f110c81815..593eead0fbfd 100644..100755
--- a/ucb/source/ucp/expand/ucpexpand.cxx
+++ b/ucb/source/ucp/expand/ucpexpand.cxx
@@ -274,14 +274,6 @@ void SAL_CALL component_getImplementationEnvironment(
*ppEnvTypeName = CPPU_CURRENT_LANGUAGE_BINDING_NAME;
}
-sal_Bool SAL_CALL component_writeInfo(
- lang::XMultiServiceFactory * pServiceManager,
- registry::XRegistryKey * pRegistryKey )
-{
- return ::cppu::component_writeInfoHelper(
- pServiceManager, pRegistryKey, s_entries );
-}
-
void * SAL_CALL component_getFactory(
const sal_Char * pImplName,
lang::XMultiServiceFactory * pServiceManager,
diff --git a/ucb/source/ucp/expand/ucpexpand1.component b/ucb/source/ucp/expand/ucpexpand1.component
new file mode 100755
index 000000000000..c8a7e8e18c68
--- /dev/null
+++ b/ucb/source/ucp/expand/ucpexpand1.component
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--**********************************************************************
+*
+* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+*
+* Copyright 2000, 2010 Oracle and/or its affiliates.
+*
+* OpenOffice.org - a multi-platform office productivity suite
+*
+* This file is part of OpenOffice.org.
+*
+* OpenOffice.org is free software: you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License version 3
+* only, as published by the Free Software Foundation.
+*
+* OpenOffice.org is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU Lesser General Public License version 3 for more details
+* (a copy is included in the LICENSE file that accompanied this code).
+*
+* You should have received a copy of the GNU Lesser General Public License
+* version 3 along with OpenOffice.org. If not, see
+* <http://www.openoffice.org/license.html>
+* for a copy of the LGPLv3 License.
+*
+**********************************************************************-->
+
+<component loader="com.sun.star.loader.SharedLibrary"
+ xmlns="http://openoffice.org/2010/uno-components">
+ <implementation name="com.sun.star.comp.ucb.ExpandContentProvider">
+ <service name="com.sun.star.ucb.ExpandContentProvider"/>
+ </implementation>
+</component>
diff --git a/ucb/source/ucp/ext/makefile.mk b/ucb/source/ucp/ext/makefile.mk
index fde2d8eb0bb0..b5f2734a6986 100644..100755
--- a/ucb/source/ucp/ext/makefile.mk
+++ b/ucb/source/ucp/ext/makefile.mk
@@ -59,3 +59,11 @@ SHL1DEF = $(MISC)$/$(SHL1TARGET).def
DEF1NAME = $(SHL1TARGET)
.INCLUDE : target.mk
+
+ALLTAR : $(MISC)/ucpext.component
+
+$(MISC)/ucpext.component .ERRREMOVE : $(SOLARENV)/bin/createcomponent.xslt \
+ ucpext.component
+ $(XSLTPROC) --nonet --stringparam uri \
+ '$(COMPONENTPREFIX_BASIS_NATIVE)$(SHL1TARGETN:f)' -o $@ \
+ $(SOLARENV)/bin/createcomponent.xslt ucpext.component
diff --git a/ucb/source/ucp/ext/ucpext.component b/ucb/source/ucp/ext/ucpext.component
new file mode 100755
index 000000000000..2982529e539c
--- /dev/null
+++ b/ucb/source/ucp/ext/ucpext.component
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--**********************************************************************
+*
+* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+*
+* Copyright 2000, 2010 Oracle and/or its affiliates.
+*
+* OpenOffice.org - a multi-platform office productivity suite
+*
+* This file is part of OpenOffice.org.
+*
+* OpenOffice.org is free software: you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License version 3
+* only, as published by the Free Software Foundation.
+*
+* OpenOffice.org is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU Lesser General Public License version 3 for more details
+* (a copy is included in the LICENSE file that accompanied this code).
+*
+* You should have received a copy of the GNU Lesser General Public License
+* version 3 along with OpenOffice.org. If not, see
+* <http://www.openoffice.org/license.html>
+* for a copy of the LGPLv3 License.
+*
+**********************************************************************-->
+
+<component loader="com.sun.star.loader.SharedLibrary"
+ xmlns="http://openoffice.org/2010/uno-components">
+ <implementation name="org.openoffice.comp.ucp.ext.ContentProvider">
+ <service name="com.sun.star.ucb.ExtensionContentProvider"/>
+ </implementation>
+</component>
diff --git a/ucb/source/ucp/ext/ucpext_content.cxx b/ucb/source/ucp/ext/ucpext_content.cxx
index 1ed589387280..1ed589387280 100644..100755
--- a/ucb/source/ucp/ext/ucpext_content.cxx
+++ b/ucb/source/ucp/ext/ucpext_content.cxx
diff --git a/ucb/source/ucp/ext/ucpext_content.hxx b/ucb/source/ucp/ext/ucpext_content.hxx
index 057df8527af1..057df8527af1 100644..100755
--- a/ucb/source/ucp/ext/ucpext_content.hxx
+++ b/ucb/source/ucp/ext/ucpext_content.hxx
diff --git a/ucb/source/ucp/ext/ucpext_datasupplier.cxx b/ucb/source/ucp/ext/ucpext_datasupplier.cxx
index 8c40411a8c71..8c40411a8c71 100644..100755
--- a/ucb/source/ucp/ext/ucpext_datasupplier.cxx
+++ b/ucb/source/ucp/ext/ucpext_datasupplier.cxx
diff --git a/ucb/source/ucp/ext/ucpext_datasupplier.hxx b/ucb/source/ucp/ext/ucpext_datasupplier.hxx
index fffe385caaf3..fffe385caaf3 100644..100755
--- a/ucb/source/ucp/ext/ucpext_datasupplier.hxx
+++ b/ucb/source/ucp/ext/ucpext_datasupplier.hxx
diff --git a/ucb/source/ucp/ext/ucpext_provider.cxx b/ucb/source/ucp/ext/ucpext_provider.cxx
index 79927f9b427b..79927f9b427b 100644..100755
--- a/ucb/source/ucp/ext/ucpext_provider.cxx
+++ b/ucb/source/ucp/ext/ucpext_provider.cxx
diff --git a/ucb/source/ucp/ext/ucpext_provider.hxx b/ucb/source/ucp/ext/ucpext_provider.hxx
index c46bf374d0e0..c46bf374d0e0 100644..100755
--- a/ucb/source/ucp/ext/ucpext_provider.hxx
+++ b/ucb/source/ucp/ext/ucpext_provider.hxx
diff --git a/ucb/source/ucp/ext/ucpext_resultset.cxx b/ucb/source/ucp/ext/ucpext_resultset.cxx
index 9fd441ec7323..9fd441ec7323 100644..100755
--- a/ucb/source/ucp/ext/ucpext_resultset.cxx
+++ b/ucb/source/ucp/ext/ucpext_resultset.cxx
diff --git a/ucb/source/ucp/ext/ucpext_resultset.hxx b/ucb/source/ucp/ext/ucpext_resultset.hxx
index fade5d25a043..fade5d25a043 100644..100755
--- a/ucb/source/ucp/ext/ucpext_resultset.hxx
+++ b/ucb/source/ucp/ext/ucpext_resultset.hxx
diff --git a/ucb/source/ucp/ext/ucpext_services.cxx b/ucb/source/ucp/ext/ucpext_services.cxx
index 853e1deeeb27..07f5f04ad17a 100644..100755
--- a/ucb/source/ucp/ext/ucpext_services.cxx
+++ b/ucb/source/ucp/ext/ucpext_services.cxx
@@ -81,12 +81,6 @@ extern "C"
}
//------------------------------------------------------------------------------------------------------------------
- sal_Bool SAL_CALL component_writeInfo( void * pServiceManager, void * pRegistryKey )
- {
- return ::cppu::component_writeInfoHelper( pServiceManager, pRegistryKey, ::ucb::ucp::ext::s_aServiceEntries );
- }
-
- //------------------------------------------------------------------------------------------------------------------
void * SAL_CALL component_getFactory( const sal_Char * pImplName, void * pServiceManager, void * pRegistryKey )
{
return ::cppu::component_getFactoryHelper( pImplName, pServiceManager, pRegistryKey , ::ucb::ucp::ext::s_aServiceEntries );
diff --git a/ucb/source/ucp/file/bc.cxx b/ucb/source/ucp/file/bc.cxx
index 8242276ad604..8242276ad604 100644..100755
--- a/ucb/source/ucp/file/bc.cxx
+++ b/ucb/source/ucp/file/bc.cxx
diff --git a/ucb/source/ucp/file/bc.hxx b/ucb/source/ucp/file/bc.hxx
index 9b2571beeaf7..9b2571beeaf7 100644..100755
--- a/ucb/source/ucp/file/bc.hxx
+++ b/ucb/source/ucp/file/bc.hxx
diff --git a/ucb/source/ucp/file/exports2.dxp b/ucb/source/ucp/file/exports2.dxp
index 6c42314f228b..4804c8d0ae57 100644..100755
--- a/ucb/source/ucp/file/exports2.dxp
+++ b/ucb/source/ucp/file/exports2.dxp
@@ -1,5 +1,4 @@
component_getImplementationEnvironment
-component_writeInfo
component_getFactory
_ZTIN3com3sun4star3ucb31InteractiveAugmentedIOExceptionE
diff --git a/ucb/source/ucp/file/filcmd.cxx b/ucb/source/ucp/file/filcmd.cxx
index 3e3d76133bad..3e3d76133bad 100644..100755
--- a/ucb/source/ucp/file/filcmd.cxx
+++ b/ucb/source/ucp/file/filcmd.cxx
diff --git a/ucb/source/ucp/file/filcmd.hxx b/ucb/source/ucp/file/filcmd.hxx
index 2a9ed8b163d8..2a9ed8b163d8 100644..100755
--- a/ucb/source/ucp/file/filcmd.hxx
+++ b/ucb/source/ucp/file/filcmd.hxx
diff --git a/ucb/source/ucp/file/filerror.hxx b/ucb/source/ucp/file/filerror.hxx
index 7fcdc8a4b34d..7fcdc8a4b34d 100644..100755
--- a/ucb/source/ucp/file/filerror.hxx
+++ b/ucb/source/ucp/file/filerror.hxx
diff --git a/ucb/source/ucp/file/filglob.cxx b/ucb/source/ucp/file/filglob.cxx
index 1f073e81d157..1f073e81d157 100644..100755
--- a/ucb/source/ucp/file/filglob.cxx
+++ b/ucb/source/ucp/file/filglob.cxx
diff --git a/ucb/source/ucp/file/filglob.hxx b/ucb/source/ucp/file/filglob.hxx
index 783a802a9af2..783a802a9af2 100644..100755
--- a/ucb/source/ucp/file/filglob.hxx
+++ b/ucb/source/ucp/file/filglob.hxx
diff --git a/ucb/source/ucp/file/filid.cxx b/ucb/source/ucp/file/filid.cxx
index 58062bc164a2..58062bc164a2 100644..100755
--- a/ucb/source/ucp/file/filid.cxx
+++ b/ucb/source/ucp/file/filid.cxx
diff --git a/ucb/source/ucp/file/filid.hxx b/ucb/source/ucp/file/filid.hxx
index 8e8d501e1708..8e8d501e1708 100644..100755
--- a/ucb/source/ucp/file/filid.hxx
+++ b/ucb/source/ucp/file/filid.hxx
diff --git a/ucb/source/ucp/file/filinl.hxx b/ucb/source/ucp/file/filinl.hxx
index 5a353168c87a..5a353168c87a 100644..100755
--- a/ucb/source/ucp/file/filinl.hxx
+++ b/ucb/source/ucp/file/filinl.hxx
diff --git a/ucb/source/ucp/file/filinpstr.cxx b/ucb/source/ucp/file/filinpstr.cxx
index 1299b33284ae..1299b33284ae 100644..100755
--- a/ucb/source/ucp/file/filinpstr.cxx
+++ b/ucb/source/ucp/file/filinpstr.cxx
diff --git a/ucb/source/ucp/file/filinpstr.hxx b/ucb/source/ucp/file/filinpstr.hxx
index 69c996ae8b54..69c996ae8b54 100644..100755
--- a/ucb/source/ucp/file/filinpstr.hxx
+++ b/ucb/source/ucp/file/filinpstr.hxx
diff --git a/ucb/source/ucp/file/filinsreq.cxx b/ucb/source/ucp/file/filinsreq.cxx
index 66ac700013e6..66ac700013e6 100644..100755
--- a/ucb/source/ucp/file/filinsreq.cxx
+++ b/ucb/source/ucp/file/filinsreq.cxx
diff --git a/ucb/source/ucp/file/filinsreq.hxx b/ucb/source/ucp/file/filinsreq.hxx
index 03c2ab758f58..03c2ab758f58 100644..100755
--- a/ucb/source/ucp/file/filinsreq.hxx
+++ b/ucb/source/ucp/file/filinsreq.hxx
diff --git a/ucb/source/ucp/file/filnot.cxx b/ucb/source/ucp/file/filnot.cxx
index f78e0c5ec6d1..f78e0c5ec6d1 100644..100755
--- a/ucb/source/ucp/file/filnot.cxx
+++ b/ucb/source/ucp/file/filnot.cxx
diff --git a/ucb/source/ucp/file/filnot.hxx b/ucb/source/ucp/file/filnot.hxx
index 789455af7602..789455af7602 100644..100755
--- a/ucb/source/ucp/file/filnot.hxx
+++ b/ucb/source/ucp/file/filnot.hxx
diff --git a/ucb/source/ucp/file/filprp.cxx b/ucb/source/ucp/file/filprp.cxx
index f96144b5c986..f96144b5c986 100644..100755
--- a/ucb/source/ucp/file/filprp.cxx
+++ b/ucb/source/ucp/file/filprp.cxx
diff --git a/ucb/source/ucp/file/filprp.hxx b/ucb/source/ucp/file/filprp.hxx
index 9cb0727d4cb7..9cb0727d4cb7 100644..100755
--- a/ucb/source/ucp/file/filprp.hxx
+++ b/ucb/source/ucp/file/filprp.hxx
diff --git a/ucb/source/ucp/file/filrec.cxx b/ucb/source/ucp/file/filrec.cxx
index 0986e3a738ab..0986e3a738ab 100644..100755
--- a/ucb/source/ucp/file/filrec.cxx
+++ b/ucb/source/ucp/file/filrec.cxx
diff --git a/ucb/source/ucp/file/filrec.hxx b/ucb/source/ucp/file/filrec.hxx
index d1ba2e2ea7b4..d1ba2e2ea7b4 100644..100755
--- a/ucb/source/ucp/file/filrec.hxx
+++ b/ucb/source/ucp/file/filrec.hxx
diff --git a/ucb/source/ucp/file/filrow.cxx b/ucb/source/ucp/file/filrow.cxx
index 5a49ed16dd0d..5a49ed16dd0d 100644..100755
--- a/ucb/source/ucp/file/filrow.cxx
+++ b/ucb/source/ucp/file/filrow.cxx
diff --git a/ucb/source/ucp/file/filrow.hxx b/ucb/source/ucp/file/filrow.hxx
index 353489194d3f..353489194d3f 100644..100755
--- a/ucb/source/ucp/file/filrow.hxx
+++ b/ucb/source/ucp/file/filrow.hxx
diff --git a/ucb/source/ucp/file/filrset.cxx b/ucb/source/ucp/file/filrset.cxx
index 88b78ff61a1d..88b78ff61a1d 100644..100755
--- a/ucb/source/ucp/file/filrset.cxx
+++ b/ucb/source/ucp/file/filrset.cxx
diff --git a/ucb/source/ucp/file/filrset.hxx b/ucb/source/ucp/file/filrset.hxx
index 401bd8aae97b..401bd8aae97b 100644..100755
--- a/ucb/source/ucp/file/filrset.hxx
+++ b/ucb/source/ucp/file/filrset.hxx
diff --git a/ucb/source/ucp/file/filstr.cxx b/ucb/source/ucp/file/filstr.cxx
index 6ecf53620377..6ecf53620377 100644..100755
--- a/ucb/source/ucp/file/filstr.cxx
+++ b/ucb/source/ucp/file/filstr.cxx
diff --git a/ucb/source/ucp/file/filstr.hxx b/ucb/source/ucp/file/filstr.hxx
index aa49830b63cb..aa49830b63cb 100644..100755
--- a/ucb/source/ucp/file/filstr.hxx
+++ b/ucb/source/ucp/file/filstr.hxx
diff --git a/ucb/source/ucp/file/filtask.cxx b/ucb/source/ucp/file/filtask.cxx
index 6629749c82b8..6629749c82b8 100644..100755
--- a/ucb/source/ucp/file/filtask.cxx
+++ b/ucb/source/ucp/file/filtask.cxx
diff --git a/ucb/source/ucp/file/filtask.hxx b/ucb/source/ucp/file/filtask.hxx
index f34ef10c88d2..f34ef10c88d2 100644..100755
--- a/ucb/source/ucp/file/filtask.hxx
+++ b/ucb/source/ucp/file/filtask.hxx
diff --git a/ucb/source/ucp/file/makefile.mk b/ucb/source/ucp/file/makefile.mk
index 8007a2492399..3d97cb23873c 100644..100755
--- a/ucb/source/ucp/file/makefile.mk
+++ b/ucb/source/ucp/file/makefile.mk
@@ -78,3 +78,11 @@ DEF1NAME=$(SHL1TARGET)
.INCLUDE: target.mk
+
+ALLTAR : $(MISC)/ucpfile1.component
+
+$(MISC)/ucpfile1.component .ERRREMOVE : $(SOLARENV)/bin/createcomponent.xslt \
+ ucpfile1.component
+ $(XSLTPROC) --nonet --stringparam uri \
+ '$(COMPONENTPREFIX_BASIS_NATIVE)$(SHL1TARGETN:f)' -o $@ \
+ $(SOLARENV)/bin/createcomponent.xslt ucpfile1.component
diff --git a/ucb/source/ucp/file/prov.cxx b/ucb/source/ucp/file/prov.cxx
index 4292c5fefe87..bb14f176532d 100644..100755
--- a/ucb/source/ucp/file/prov.cxx
+++ b/ucb/source/ucp/file/prov.cxx
@@ -32,7 +32,6 @@
#include <osl/file.hxx>
#include <osl/socket.h>
#include <cppuhelper/factory.hxx>
-#include <com/sun/star/registry/XRegistryKey.hpp>
#include <com/sun/star/beans/PropertyAttribute.hpp>
#include <com/sun/star/ucb/FileSystemNotation.hpp>
#include <com/sun/star/beans/PropertyState.hpp>
@@ -52,45 +51,6 @@ using namespace com::sun::star::ucb;
using namespace com::sun::star::container;
//=========================================================================
-static sal_Bool writeInfo( void * pRegistryKey,
- const rtl::OUString & rImplementationName,
- Sequence< rtl::OUString > const & rServiceNames )
-{
- rtl::OUString aKeyName( RTL_CONSTASCII_USTRINGPARAM("/") );
- aKeyName += rImplementationName;
- aKeyName += rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("/UNO/SERVICES"));
-
- Reference< registry::XRegistryKey > xKey;
- try
- {
- xKey = static_cast< registry::XRegistryKey * >(
- pRegistryKey )->createKey( aKeyName );
- }
- catch ( registry::InvalidRegistryException const & )
- {
- }
-
- if ( !xKey.is() )
- return sal_False;
-
- sal_Bool bSuccess = sal_True;
-
- for ( sal_Int32 n = 0; n < rServiceNames.getLength(); ++n )
- {
- try
- {
- xKey->createKey( rServiceNames[ n ] );
- }
- catch ( registry::InvalidRegistryException const & )
- {
- bSuccess = sal_False;
- break;
- }
- }
- return bSuccess;
-}
-
-//=========================================================================
extern "C" void SAL_CALL component_getImplementationEnvironment(
const sal_Char ** ppEnvTypeName, uno_Environment ** )
{
@@ -98,20 +58,6 @@ extern "C" void SAL_CALL component_getImplementationEnvironment(
}
//=========================================================================
-extern "C" sal_Bool SAL_CALL component_writeInfo( void *, void * pRegistryKey )
-{
- return pRegistryKey &&
-
- //////////////////////////////////////////////////////////////////////
- // File Content Provider.
- //////////////////////////////////////////////////////////////////////
-
- writeInfo( pRegistryKey,
- fileaccess::shell::getImplementationName_static(),
- fileaccess::shell::getSupportedServiceNames_static() );
-}
-
-//=========================================================================
extern "C" void * SAL_CALL component_getFactory(
const sal_Char * pImplName, void * pServiceManager, void * )
{
diff --git a/ucb/source/ucp/file/prov.hxx b/ucb/source/ucp/file/prov.hxx
index 5f24ab8b3921..5f24ab8b3921 100644..100755
--- a/ucb/source/ucp/file/prov.hxx
+++ b/ucb/source/ucp/file/prov.hxx
diff --git a/ucb/source/ucp/file/shell.cxx b/ucb/source/ucp/file/shell.cxx
index 6e6f9931ef8e..c4131cab233b 100644..100755
--- a/ucb/source/ucp/file/shell.cxx
+++ b/ucb/source/ucp/file/shell.cxx
@@ -1806,14 +1806,26 @@ shell::write( sal_Int32 CommandId,
{
aFile.close();
err = aFile.open( osl_File_OpenFlag_Write );
- }
- if( err != osl::FileBase::E_None )
- {
- installError( CommandId,
- TASKHANDLING_NO_OPEN_FILE_FOR_OVERWRITE,
- err );
- return sal_False;
+ if( err != osl::FileBase::E_None )
+ {
+ installError( CommandId,
+ TASKHANDLING_NO_OPEN_FILE_FOR_OVERWRITE,
+ err );
+ return sal_False;
+ }
+
+ // the existing file was just opened and should be overwritten now,
+ // truncate it first
+
+ err = aFile.setSize( 0 );
+ if( err != osl::FileBase::E_None )
+ {
+ installError( CommandId,
+ TASKHANDLING_FILESIZE_FOR_WRITE,
+ err );
+ return sal_False;
+ }
}
}
else
@@ -1845,7 +1857,6 @@ shell::write( sal_Int32 CommandId,
sal_Bool bSuccess = sal_True;
- sal_uInt64 nTotalNumberOfBytes = 0;
sal_uInt64 nWrittenBytes;
sal_Int32 nReadBytes = 0, nRequestedBytes = 32768 /*32k*/;
uno::Sequence< sal_Int8 > seq( nRequestedBytes );
@@ -1902,20 +1913,9 @@ shell::write( sal_Int32 CommandId,
bSuccess = sal_False;
break;
}
-
- nTotalNumberOfBytes += nWrittenBytes;
}
} while( nReadBytes == nRequestedBytes );
- err = aFile.setSize( nTotalNumberOfBytes );
- if( err != osl::FileBase::E_None )
- {
- installError( CommandId,
- TASKHANDLING_FILESIZE_FOR_WRITE,
- err );
- bSuccess = sal_False;
- }
-
err = aFile.close();
if( err != osl::FileBase::E_None )
{
diff --git a/ucb/source/ucp/file/shell.hxx b/ucb/source/ucp/file/shell.hxx
index 2660fa119bfa..2660fa119bfa 100644..100755
--- a/ucb/source/ucp/file/shell.hxx
+++ b/ucb/source/ucp/file/shell.hxx
diff --git a/ucb/source/ucp/file/ucpfile.xml b/ucb/source/ucp/file/ucpfile.xml
index bd205639f476..bd205639f476 100644..100755
--- a/ucb/source/ucp/file/ucpfile.xml
+++ b/ucb/source/ucp/file/ucpfile.xml
diff --git a/ucb/source/ucp/file/ucpfile1.component b/ucb/source/ucp/file/ucpfile1.component
new file mode 100755
index 000000000000..28032451220a
--- /dev/null
+++ b/ucb/source/ucp/file/ucpfile1.component
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--**********************************************************************
+*
+* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+*
+* Copyright 2000, 2010 Oracle and/or its affiliates.
+*
+* OpenOffice.org - a multi-platform office productivity suite
+*
+* This file is part of OpenOffice.org.
+*
+* OpenOffice.org is free software: you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License version 3
+* only, as published by the Free Software Foundation.
+*
+* OpenOffice.org is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU Lesser General Public License version 3 for more details
+* (a copy is included in the LICENSE file that accompanied this code).
+*
+* You should have received a copy of the GNU Lesser General Public License
+* version 3 along with OpenOffice.org. If not, see
+* <http://www.openoffice.org/license.html>
+* for a copy of the LGPLv3 License.
+*
+**********************************************************************-->
+
+<component loader="com.sun.star.loader.SharedLibrary"
+ xmlns="http://openoffice.org/2010/uno-components">
+ <implementation name="com.sun.star.comp.ucb.FileProvider">
+ <service name="com.sun.star.ucb.FileContentProvider"/>
+ </implementation>
+</component>
diff --git a/ucb/source/ucp/ftp/curl.hxx b/ucb/source/ucp/ftp/curl.hxx
index 26dbc3c907ef..26dbc3c907ef 100644..100755
--- a/ucb/source/ucp/ftp/curl.hxx
+++ b/ucb/source/ucp/ftp/curl.hxx
diff --git a/ucb/source/ucp/ftp/ftpcfunc.cxx b/ucb/source/ucp/ftp/ftpcfunc.cxx
index 8df90ecd087c..8df90ecd087c 100644..100755
--- a/ucb/source/ucp/ftp/ftpcfunc.cxx
+++ b/ucb/source/ucp/ftp/ftpcfunc.cxx
diff --git a/ucb/source/ucp/ftp/ftpcfunc.hxx b/ucb/source/ucp/ftp/ftpcfunc.hxx
index 3696e23d7ad6..3696e23d7ad6 100644..100755
--- a/ucb/source/ucp/ftp/ftpcfunc.hxx
+++ b/ucb/source/ucp/ftp/ftpcfunc.hxx
diff --git a/ucb/source/ucp/ftp/ftpcontainer.hxx b/ucb/source/ucp/ftp/ftpcontainer.hxx
index 370c00859308..370c00859308 100644..100755
--- a/ucb/source/ucp/ftp/ftpcontainer.hxx
+++ b/ucb/source/ucp/ftp/ftpcontainer.hxx
diff --git a/ucb/source/ucp/ftp/ftpcontent.cxx b/ucb/source/ucp/ftp/ftpcontent.cxx
index f0edeea018ee..f0edeea018ee 100644..100755
--- a/ucb/source/ucp/ftp/ftpcontent.cxx
+++ b/ucb/source/ucp/ftp/ftpcontent.cxx
diff --git a/ucb/source/ucp/ftp/ftpcontent.hxx b/ucb/source/ucp/ftp/ftpcontent.hxx
index 3970a2251809..3970a2251809 100644..100755
--- a/ucb/source/ucp/ftp/ftpcontent.hxx
+++ b/ucb/source/ucp/ftp/ftpcontent.hxx
diff --git a/ucb/source/ucp/ftp/ftpcontentcaps.cxx b/ucb/source/ucp/ftp/ftpcontentcaps.cxx
index 4541a3c7ce51..4541a3c7ce51 100644..100755
--- a/ucb/source/ucp/ftp/ftpcontentcaps.cxx
+++ b/ucb/source/ucp/ftp/ftpcontentcaps.cxx
diff --git a/ucb/source/ucp/ftp/ftpcontentidentifier.cxx b/ucb/source/ucp/ftp/ftpcontentidentifier.cxx
index 0a2ac9b306f0..0a2ac9b306f0 100644..100755
--- a/ucb/source/ucp/ftp/ftpcontentidentifier.cxx
+++ b/ucb/source/ucp/ftp/ftpcontentidentifier.cxx
diff --git a/ucb/source/ucp/ftp/ftpcontentidentifier.hxx b/ucb/source/ucp/ftp/ftpcontentidentifier.hxx
index 7236727eb692..7236727eb692 100644..100755
--- a/ucb/source/ucp/ftp/ftpcontentidentifier.hxx
+++ b/ucb/source/ucp/ftp/ftpcontentidentifier.hxx
diff --git a/ucb/source/ucp/ftp/ftpcontentprovider.cxx b/ucb/source/ucp/ftp/ftpcontentprovider.cxx
index 9665d6fc1ce1..9665d6fc1ce1 100644..100755
--- a/ucb/source/ucp/ftp/ftpcontentprovider.cxx
+++ b/ucb/source/ucp/ftp/ftpcontentprovider.cxx
diff --git a/ucb/source/ucp/ftp/ftpcontentprovider.hxx b/ucb/source/ucp/ftp/ftpcontentprovider.hxx
index 2e54f1446a93..2e54f1446a93 100644..100755
--- a/ucb/source/ucp/ftp/ftpcontentprovider.hxx
+++ b/ucb/source/ucp/ftp/ftpcontentprovider.hxx
diff --git a/ucb/source/ucp/ftp/ftpdirp.cxx b/ucb/source/ucp/ftp/ftpdirp.cxx
index fc39afce9f08..fc39afce9f08 100644..100755
--- a/ucb/source/ucp/ftp/ftpdirp.cxx
+++ b/ucb/source/ucp/ftp/ftpdirp.cxx
diff --git a/ucb/source/ucp/ftp/ftpdirp.hxx b/ucb/source/ucp/ftp/ftpdirp.hxx
index 4f8c733a79c3..4f8c733a79c3 100644..100755
--- a/ucb/source/ucp/ftp/ftpdirp.hxx
+++ b/ucb/source/ucp/ftp/ftpdirp.hxx
diff --git a/ucb/source/ucp/ftp/ftpdynresultset.cxx b/ucb/source/ucp/ftp/ftpdynresultset.cxx
index 939f0c7dde36..939f0c7dde36 100644..100755
--- a/ucb/source/ucp/ftp/ftpdynresultset.cxx
+++ b/ucb/source/ucp/ftp/ftpdynresultset.cxx
diff --git a/ucb/source/ucp/ftp/ftpdynresultset.hxx b/ucb/source/ucp/ftp/ftpdynresultset.hxx
index 661c17e4786f..661c17e4786f 100644..100755
--- a/ucb/source/ucp/ftp/ftpdynresultset.hxx
+++ b/ucb/source/ucp/ftp/ftpdynresultset.hxx
diff --git a/ucb/source/ucp/ftp/ftphandleprovider.hxx b/ucb/source/ucp/ftp/ftphandleprovider.hxx
index bebded5e77a5..bebded5e77a5 100644..100755
--- a/ucb/source/ucp/ftp/ftphandleprovider.hxx
+++ b/ucb/source/ucp/ftp/ftphandleprovider.hxx
diff --git a/ucb/source/ucp/ftp/ftpinpstr.cxx b/ucb/source/ucp/ftp/ftpinpstr.cxx
index f2e1f5668f14..f2e1f5668f14 100644..100755
--- a/ucb/source/ucp/ftp/ftpinpstr.cxx
+++ b/ucb/source/ucp/ftp/ftpinpstr.cxx
diff --git a/ucb/source/ucp/ftp/ftpinpstr.hxx b/ucb/source/ucp/ftp/ftpinpstr.hxx
index 96e8e999a93d..96e8e999a93d 100644..100755
--- a/ucb/source/ucp/ftp/ftpinpstr.hxx
+++ b/ucb/source/ucp/ftp/ftpinpstr.hxx
diff --git a/ucb/source/ucp/ftp/ftpintreq.cxx b/ucb/source/ucp/ftp/ftpintreq.cxx
index b5ce521cd007..b5ce521cd007 100644..100755
--- a/ucb/source/ucp/ftp/ftpintreq.cxx
+++ b/ucb/source/ucp/ftp/ftpintreq.cxx
diff --git a/ucb/source/ucp/ftp/ftpintreq.hxx b/ucb/source/ucp/ftp/ftpintreq.hxx
index 050af0716e1f..050af0716e1f 100644..100755
--- a/ucb/source/ucp/ftp/ftpintreq.hxx
+++ b/ucb/source/ucp/ftp/ftpintreq.hxx
diff --git a/ucb/source/ucp/ftp/ftploaderthread.cxx b/ucb/source/ucp/ftp/ftploaderthread.cxx
index 23d4284ba9a4..23d4284ba9a4 100644..100755
--- a/ucb/source/ucp/ftp/ftploaderthread.cxx
+++ b/ucb/source/ucp/ftp/ftploaderthread.cxx
diff --git a/ucb/source/ucp/ftp/ftploaderthread.hxx b/ucb/source/ucp/ftp/ftploaderthread.hxx
index ed326a84b6ed..ed326a84b6ed 100644..100755
--- a/ucb/source/ucp/ftp/ftploaderthread.hxx
+++ b/ucb/source/ucp/ftp/ftploaderthread.hxx
diff --git a/ucb/source/ucp/ftp/ftpresultsetI.cxx b/ucb/source/ucp/ftp/ftpresultsetI.cxx
index c861ebb8481e..c861ebb8481e 100644..100755
--- a/ucb/source/ucp/ftp/ftpresultsetI.cxx
+++ b/ucb/source/ucp/ftp/ftpresultsetI.cxx
diff --git a/ucb/source/ucp/ftp/ftpresultsetI.hxx b/ucb/source/ucp/ftp/ftpresultsetI.hxx
index 4bde661a4dfa..4bde661a4dfa 100644..100755
--- a/ucb/source/ucp/ftp/ftpresultsetI.hxx
+++ b/ucb/source/ucp/ftp/ftpresultsetI.hxx
diff --git a/ucb/source/ucp/ftp/ftpresultsetbase.cxx b/ucb/source/ucp/ftp/ftpresultsetbase.cxx
index 93db7e67091b..93db7e67091b 100644..100755
--- a/ucb/source/ucp/ftp/ftpresultsetbase.cxx
+++ b/ucb/source/ucp/ftp/ftpresultsetbase.cxx
diff --git a/ucb/source/ucp/ftp/ftpresultsetbase.hxx b/ucb/source/ucp/ftp/ftpresultsetbase.hxx
index 91e7be6ffe6d..91e7be6ffe6d 100644..100755
--- a/ucb/source/ucp/ftp/ftpresultsetbase.hxx
+++ b/ucb/source/ucp/ftp/ftpresultsetbase.hxx
diff --git a/ucb/source/ucp/ftp/ftpresultsetfactory.hxx b/ucb/source/ucp/ftp/ftpresultsetfactory.hxx
index 742450fca381..742450fca381 100644..100755
--- a/ucb/source/ucp/ftp/ftpresultsetfactory.hxx
+++ b/ucb/source/ucp/ftp/ftpresultsetfactory.hxx
diff --git a/ucb/source/ucp/ftp/ftpservices.cxx b/ucb/source/ucp/ftp/ftpservices.cxx
index 1bb8ec694a7e..d77659f20e15 100644..100755
--- a/ucb/source/ucp/ftp/ftpservices.cxx
+++ b/ucb/source/ucp/ftp/ftpservices.cxx
@@ -37,45 +37,6 @@ using namespace com::sun::star;
using namespace ftp;
//=========================================================================
-static sal_Bool writeInfo( void * pRegistryKey,
- const rtl::OUString & rImplementationName,
- uno::Sequence< rtl::OUString > const & rServiceNames )
-{
- rtl::OUString aKeyName( RTL_CONSTASCII_USTRINGPARAM("/") );
- aKeyName += rImplementationName;
- aKeyName += rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("/UNO/SERVICES"));
-
- uno::Reference< registry::XRegistryKey > xKey;
- try
- {
- xKey = static_cast< registry::XRegistryKey * >(
- pRegistryKey )->createKey( aKeyName );
- }
- catch ( registry::InvalidRegistryException const & )
- {
- }
-
- if ( !xKey.is() )
- return sal_False;
-
- sal_Bool bSuccess = sal_True;
-
- for ( sal_Int32 n = 0; n < rServiceNames.getLength(); ++n )
- {
- try
- {
- xKey->createKey( rServiceNames[ n ] );
- }
- catch ( registry::InvalidRegistryException const & )
- {
- bSuccess = sal_False;
- break;
- }
- }
- return bSuccess;
-}
-
-//=========================================================================
extern "C" void SAL_CALL component_getImplementationEnvironment(
const sal_Char ** ppEnvTypeName, uno_Environment ** /*ppEnv*/ )
{
@@ -83,21 +44,6 @@ extern "C" void SAL_CALL component_getImplementationEnvironment(
}
//=========================================================================
-extern "C" sal_Bool SAL_CALL component_writeInfo(
- void * /*pServiceManager*/, void * pRegistryKey )
-{
- return pRegistryKey &&
-
- //////////////////////////////////////////////////////////////////////
- // FTP Content Provider.
- //////////////////////////////////////////////////////////////////////
-
- writeInfo( pRegistryKey,
- FTPContentProvider::getImplementationName_Static(),
- FTPContentProvider::getSupportedServiceNames_Static() );
-}
-
-//=========================================================================
extern "C" void * SAL_CALL component_getFactory(
const sal_Char * pImplName, void * pServiceManager, void * /*pRegistryKey*/ )
{
diff --git a/ucb/source/ucp/ftp/ftpstrcont.hxx b/ucb/source/ucp/ftp/ftpstrcont.hxx
index 6799b0dd821a..6799b0dd821a 100644..100755
--- a/ucb/source/ucp/ftp/ftpstrcont.hxx
+++ b/ucb/source/ucp/ftp/ftpstrcont.hxx
diff --git a/ucb/source/ucp/ftp/ftpurl.cxx b/ucb/source/ucp/ftp/ftpurl.cxx
index 7ef4db27dca5..7ef4db27dca5 100644..100755
--- a/ucb/source/ucp/ftp/ftpurl.cxx
+++ b/ucb/source/ucp/ftp/ftpurl.cxx
diff --git a/ucb/source/ucp/ftp/ftpurl.hxx b/ucb/source/ucp/ftp/ftpurl.hxx
index 62802654ab18..62802654ab18 100644..100755
--- a/ucb/source/ucp/ftp/ftpurl.hxx
+++ b/ucb/source/ucp/ftp/ftpurl.hxx
diff --git a/ucb/source/ucp/ftp/makefile.mk b/ucb/source/ucp/ftp/makefile.mk
index a0f141004089..6f55fed25fed 100644..100755
--- a/ucb/source/ucp/ftp/makefile.mk
+++ b/ucb/source/ucp/ftp/makefile.mk
@@ -92,15 +92,10 @@ DEF1NAME=$(SHL1TARGET)
.ENDIF # L10N_framework
.INCLUDE: target.mk
+ALLTAR : $(MISC)/ucpftp1.component
-
-
-
-
-
-
-
-
-
-
-
+$(MISC)/ucpftp1.component .ERRREMOVE : $(SOLARENV)/bin/createcomponent.xslt \
+ ucpftp1.component
+ $(XSLTPROC) --nonet --stringparam uri \
+ '$(COMPONENTPREFIX_BASIS_NATIVE)$(SHL1TARGETN:f)' -o $@ \
+ $(SOLARENV)/bin/createcomponent.xslt ucpftp1.component
diff --git a/ucb/source/ucp/ftp/test.cxx b/ucb/source/ucp/ftp/test.cxx
index 6bf9644ae3eb..6bf9644ae3eb 100644..100755
--- a/ucb/source/ucp/ftp/test.cxx
+++ b/ucb/source/ucp/ftp/test.cxx
diff --git a/ucb/source/ucp/ftp/test.py b/ucb/source/ucp/ftp/test.py
index 931d9a3ec8a5..931d9a3ec8a5 100644..100755
--- a/ucb/source/ucp/ftp/test.py
+++ b/ucb/source/ucp/ftp/test.py
diff --git a/ucb/source/ucp/ftp/test_activedatasink.cxx b/ucb/source/ucp/ftp/test_activedatasink.cxx
index 6b86ef41ac1f..6b86ef41ac1f 100644..100755
--- a/ucb/source/ucp/ftp/test_activedatasink.cxx
+++ b/ucb/source/ucp/ftp/test_activedatasink.cxx
diff --git a/ucb/source/ucp/ftp/test_activedatasink.hxx b/ucb/source/ucp/ftp/test_activedatasink.hxx
index 1e5ec40d0ae7..1e5ec40d0ae7 100644..100755
--- a/ucb/source/ucp/ftp/test_activedatasink.hxx
+++ b/ucb/source/ucp/ftp/test_activedatasink.hxx
diff --git a/ucb/source/ucp/ftp/test_ftpurl.cxx b/ucb/source/ucp/ftp/test_ftpurl.cxx
index 2eefb2b62dc8..2eefb2b62dc8 100644..100755
--- a/ucb/source/ucp/ftp/test_ftpurl.cxx
+++ b/ucb/source/ucp/ftp/test_ftpurl.cxx
diff --git a/ucb/source/ucp/ftp/test_ftpurl.hxx b/ucb/source/ucp/ftp/test_ftpurl.hxx
index 1f7356a69017..1f7356a69017 100644..100755
--- a/ucb/source/ucp/ftp/test_ftpurl.hxx
+++ b/ucb/source/ucp/ftp/test_ftpurl.hxx
diff --git a/ucb/source/ucp/ftp/test_interactionhandler.hxx b/ucb/source/ucp/ftp/test_interactionhandler.hxx
index e14b13cc8b81..e14b13cc8b81 100644..100755
--- a/ucb/source/ucp/ftp/test_interactionhandler.hxx
+++ b/ucb/source/ucp/ftp/test_interactionhandler.hxx
diff --git a/ucb/source/ucp/ftp/test_multiservicefac.cxx b/ucb/source/ucp/ftp/test_multiservicefac.cxx
index 4e15d27a3c0d..4e15d27a3c0d 100644..100755
--- a/ucb/source/ucp/ftp/test_multiservicefac.cxx
+++ b/ucb/source/ucp/ftp/test_multiservicefac.cxx
diff --git a/ucb/source/ucp/ftp/test_multiservicefac.hxx b/ucb/source/ucp/ftp/test_multiservicefac.hxx
index 9e8bca774194..9e8bca774194 100644..100755
--- a/ucb/source/ucp/ftp/test_multiservicefac.hxx
+++ b/ucb/source/ucp/ftp/test_multiservicefac.hxx
diff --git a/ucb/source/ucp/ftp/ucpftp.xml b/ucb/source/ucp/ftp/ucpftp.xml
index 041fa1e1abc1..041fa1e1abc1 100644..100755
--- a/ucb/source/ucp/ftp/ucpftp.xml
+++ b/ucb/source/ucp/ftp/ucpftp.xml
diff --git a/ucb/source/ucp/ftp/ucpftp1.component b/ucb/source/ucp/ftp/ucpftp1.component
new file mode 100755
index 000000000000..fa4cfe6e7557
--- /dev/null
+++ b/ucb/source/ucp/ftp/ucpftp1.component
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--**********************************************************************
+*
+* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+*
+* Copyright 2000, 2010 Oracle and/or its affiliates.
+*
+* OpenOffice.org - a multi-platform office productivity suite
+*
+* This file is part of OpenOffice.org.
+*
+* OpenOffice.org is free software: you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License version 3
+* only, as published by the Free Software Foundation.
+*
+* OpenOffice.org is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU Lesser General Public License version 3 for more details
+* (a copy is included in the LICENSE file that accompanied this code).
+*
+* You should have received a copy of the GNU Lesser General Public License
+* version 3 along with OpenOffice.org. If not, see
+* <http://www.openoffice.org/license.html>
+* for a copy of the LGPLv3 License.
+*
+**********************************************************************-->
+
+<component loader="com.sun.star.loader.SharedLibrary"
+ xmlns="http://openoffice.org/2010/uno-components">
+ <implementation name="com.sun.star.comp.FTPContentProvider">
+ <service name="com.sun.star.ucb.FTPContentProvider"/>
+ </implementation>
+</component>
diff --git a/ucb/source/ucp/gio/gio_content.cxx b/ucb/source/ucp/gio/gio_content.cxx
index e10a69d34f39..e10a69d34f39 100644..100755
--- a/ucb/source/ucp/gio/gio_content.cxx
+++ b/ucb/source/ucp/gio/gio_content.cxx
diff --git a/ucb/source/ucp/gio/gio_content.hxx b/ucb/source/ucp/gio/gio_content.hxx
index 1e87de214bc2..1e87de214bc2 100644..100755
--- a/ucb/source/ucp/gio/gio_content.hxx
+++ b/ucb/source/ucp/gio/gio_content.hxx
diff --git a/ucb/source/ucp/gio/gio_datasupplier.cxx b/ucb/source/ucp/gio/gio_datasupplier.cxx
index 252cbbf33d2a..252cbbf33d2a 100644..100755
--- a/ucb/source/ucp/gio/gio_datasupplier.cxx
+++ b/ucb/source/ucp/gio/gio_datasupplier.cxx
diff --git a/ucb/source/ucp/gio/gio_datasupplier.hxx b/ucb/source/ucp/gio/gio_datasupplier.hxx
index 264cc8db059b..264cc8db059b 100644..100755
--- a/ucb/source/ucp/gio/gio_datasupplier.hxx
+++ b/ucb/source/ucp/gio/gio_datasupplier.hxx
diff --git a/ucb/source/ucp/gio/gio_inputstream.cxx b/ucb/source/ucp/gio/gio_inputstream.cxx
index 2a0fb990731f..2a0fb990731f 100644..100755
--- a/ucb/source/ucp/gio/gio_inputstream.cxx
+++ b/ucb/source/ucp/gio/gio_inputstream.cxx
diff --git a/ucb/source/ucp/gio/gio_inputstream.hxx b/ucb/source/ucp/gio/gio_inputstream.hxx
index f31a6efd9913..f31a6efd9913 100644..100755
--- a/ucb/source/ucp/gio/gio_inputstream.hxx
+++ b/ucb/source/ucp/gio/gio_inputstream.hxx
diff --git a/ucb/source/ucp/gio/gio_mount.cxx b/ucb/source/ucp/gio/gio_mount.cxx
index 26472b6babf4..26472b6babf4 100644..100755
--- a/ucb/source/ucp/gio/gio_mount.cxx
+++ b/ucb/source/ucp/gio/gio_mount.cxx
diff --git a/ucb/source/ucp/gio/gio_mount.hxx b/ucb/source/ucp/gio/gio_mount.hxx
index f826cee26f03..f826cee26f03 100644..100755
--- a/ucb/source/ucp/gio/gio_mount.hxx
+++ b/ucb/source/ucp/gio/gio_mount.hxx
diff --git a/ucb/source/ucp/gio/gio_outputstream.cxx b/ucb/source/ucp/gio/gio_outputstream.cxx
index e1bd75a0e8a1..e1bd75a0e8a1 100644..100755
--- a/ucb/source/ucp/gio/gio_outputstream.cxx
+++ b/ucb/source/ucp/gio/gio_outputstream.cxx
diff --git a/ucb/source/ucp/gio/gio_outputstream.hxx b/ucb/source/ucp/gio/gio_outputstream.hxx
index 161a397f77d3..161a397f77d3 100644..100755
--- a/ucb/source/ucp/gio/gio_outputstream.hxx
+++ b/ucb/source/ucp/gio/gio_outputstream.hxx
diff --git a/ucb/source/ucp/gio/gio_provider.cxx b/ucb/source/ucp/gio/gio_provider.cxx
index 130b08e72670..2e56b4f91db1 100644..100755
--- a/ucb/source/ucp/gio/gio_provider.cxx
+++ b/ucb/source/ucp/gio/gio_provider.cxx
@@ -103,55 +103,12 @@ ONE_INSTANCE_SERVICE_FACTORY_IMPL( ContentProvider );
}
-static sal_Bool writeInfo( void *pRegistryKey,
- const rtl::OUString &rImplementationName, uno::Sequence< rtl::OUString > const &rServiceNames )
-{
- rtl::OUString aKeyName( RTL_CONSTASCII_USTRINGPARAM("/") );
- aKeyName += rImplementationName;
- aKeyName += rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("/UNO/SERVICES"));
-
- uno::Reference< registry::XRegistryKey > xKey;
- try
- {
- xKey = static_cast< registry::XRegistryKey * > (pRegistryKey )->createKey( aKeyName );
- }
- catch ( registry::InvalidRegistryException const & )
- {}
-
- if ( !xKey.is() )
- return sal_False;
-
- sal_Bool bSuccess = sal_True;
-
- for ( sal_Int32 n = 0; n < rServiceNames.getLength(); ++n )
- {
- try
- {
- xKey->createKey( rServiceNames[ n ] );
- }
- catch ( registry::InvalidRegistryException const & )
- {
- bSuccess = sal_False;
- break;
- }
- }
- return bSuccess;
-}
-
extern "C" void SAL_CALL component_getImplementationEnvironment(
const sal_Char **ppEnvTypeName, uno_Environment **)
{
*ppEnvTypeName = CPPU_CURRENT_LANGUAGE_BINDING_NAME;
}
-extern "C" sal_Bool SAL_CALL component_writeInfo( void *, void *pRegistryKey )
-{
- return pRegistryKey &&
- writeInfo( pRegistryKey,
- ::gio::ContentProvider::getImplementationName_Static(),
- ::gio::ContentProvider::getSupportedServiceNames_Static() );
-}
-
extern "C" void * SAL_CALL component_getFactory( const sal_Char *pImplName,
void *pServiceManager, void * )
{
diff --git a/ucb/source/ucp/gio/gio_provider.hxx b/ucb/source/ucp/gio/gio_provider.hxx
index 06c214e5a028..06c214e5a028 100644..100755
--- a/ucb/source/ucp/gio/gio_provider.hxx
+++ b/ucb/source/ucp/gio/gio_provider.hxx
diff --git a/ucb/source/ucp/gio/gio_resultset.cxx b/ucb/source/ucp/gio/gio_resultset.cxx
index db87e2edbe01..db87e2edbe01 100644..100755
--- a/ucb/source/ucp/gio/gio_resultset.cxx
+++ b/ucb/source/ucp/gio/gio_resultset.cxx
diff --git a/ucb/source/ucp/gio/gio_resultset.hxx b/ucb/source/ucp/gio/gio_resultset.hxx
index 575a3220dd26..575a3220dd26 100644..100755
--- a/ucb/source/ucp/gio/gio_resultset.hxx
+++ b/ucb/source/ucp/gio/gio_resultset.hxx
diff --git a/ucb/source/ucp/gio/gio_seekable.cxx b/ucb/source/ucp/gio/gio_seekable.cxx
index 1e03a922be03..1e03a922be03 100644..100755
--- a/ucb/source/ucp/gio/gio_seekable.cxx
+++ b/ucb/source/ucp/gio/gio_seekable.cxx
diff --git a/ucb/source/ucp/gio/gio_seekable.hxx b/ucb/source/ucp/gio/gio_seekable.hxx
index 5befbb589f3a..5befbb589f3a 100644..100755
--- a/ucb/source/ucp/gio/gio_seekable.hxx
+++ b/ucb/source/ucp/gio/gio_seekable.hxx
diff --git a/ucb/source/ucp/gio/makefile.mk b/ucb/source/ucp/gio/makefile.mk
index 86b32fbc0739..4cca611c7ece 100644..100755
--- a/ucb/source/ucp/gio/makefile.mk
+++ b/ucb/source/ucp/gio/makefile.mk
@@ -37,8 +37,6 @@ NO_BSYMBOLIC=TRUE
.INCLUDE: settings.mk
.IF "$(L10N_framework)"==""
-UNIXTEXT=$(MISC)/$(TARGET)-ucd.txt
-
.IF "$(ENABLE_GIO)"!=""
COMPILER_WARN_ALL=TRUE
PKGCONFIG_MODULES=gio-2.0
@@ -79,3 +77,11 @@ SHL1VERSIONMAP=$(SOLARENV)/src/component.map
.ENDIF # L10N_framework
.INCLUDE: target.mk
+
+ALLTAR : $(MISC)/ucpgio.component
+
+$(MISC)/ucpgio.component .ERRREMOVE : $(SOLARENV)/bin/createcomponent.xslt \
+ ucpgio.component
+ $(XSLTPROC) --nonet --stringparam uri \
+ '$(COMPONENTPREFIX_BASIS_NATIVE)$(SHL1TARGETN:f)' -o $@ \
+ $(SOLARENV)/bin/createcomponent.xslt ucpgio.component
diff --git a/ucb/source/ucp/gio/ucpgio-ucd.txt b/ucb/source/ucp/gio/ucpgio-ucd.txt
deleted file mode 100644
index ce7657fa73e3..000000000000
--- a/ucb/source/ucp/gio/ucpgio-ucd.txt
+++ /dev/null
@@ -1,6 +0,0 @@
-[ComponentDescriptor]
-ImplementationName=com.sun.star.comp.GIOContentProvider
-ComponentName=ucpgio1.uno.so
-LoaderName=com.sun.star.loader.SharedLibrary
-[SupportedServices]
-com.sun.star.ucb.GIOContentProvider
diff --git a/ucb/source/ucp/gio/ucpgio.component b/ucb/source/ucp/gio/ucpgio.component
new file mode 100755
index 000000000000..caa8fc361f7f
--- /dev/null
+++ b/ucb/source/ucp/gio/ucpgio.component
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--**********************************************************************
+*
+* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+*
+* Copyright 2000, 2010 Oracle and/or its affiliates.
+*
+* OpenOffice.org - a multi-platform office productivity suite
+*
+* This file is part of OpenOffice.org.
+*
+* OpenOffice.org is free software: you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License version 3
+* only, as published by the Free Software Foundation.
+*
+* OpenOffice.org is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU Lesser General Public License version 3 for more details
+* (a copy is included in the LICENSE file that accompanied this code).
+*
+* You should have received a copy of the GNU Lesser General Public License
+* version 3 along with OpenOffice.org. If not, see
+* <http://www.openoffice.org/license.html>
+* for a copy of the LGPLv3 License.
+*
+**********************************************************************-->
+
+<component loader="com.sun.star.loader.SharedLibrary"
+ xmlns="http://openoffice.org/2010/uno-components">
+ <implementation name="com.sun.star.comp.GIOContentProvider">
+ <service name="com.sun.star.ucb.GIOContentProvider"/>
+ </implementation>
+</component>
diff --git a/ucb/source/ucp/gio/ucpgio.xml b/ucb/source/ucp/gio/ucpgio.xml
index ac53fd217e14..ac53fd217e14 100644..100755
--- a/ucb/source/ucp/gio/ucpgio.xml
+++ b/ucb/source/ucp/gio/ucpgio.xml
diff --git a/ucb/source/ucp/gvfs/gvfs_content.cxx b/ucb/source/ucp/gvfs/gvfs_content.cxx
index e4b3624ac377..e4b3624ac377 100644..100755
--- a/ucb/source/ucp/gvfs/gvfs_content.cxx
+++ b/ucb/source/ucp/gvfs/gvfs_content.cxx
diff --git a/ucb/source/ucp/gvfs/gvfs_content.hxx b/ucb/source/ucp/gvfs/gvfs_content.hxx
index 990ea9fdd5a3..990ea9fdd5a3 100644..100755
--- a/ucb/source/ucp/gvfs/gvfs_content.hxx
+++ b/ucb/source/ucp/gvfs/gvfs_content.hxx
diff --git a/ucb/source/ucp/gvfs/gvfs_directory.cxx b/ucb/source/ucp/gvfs/gvfs_directory.cxx
index d0a403d86bc6..d0a403d86bc6 100644..100755
--- a/ucb/source/ucp/gvfs/gvfs_directory.cxx
+++ b/ucb/source/ucp/gvfs/gvfs_directory.cxx
diff --git a/ucb/source/ucp/gvfs/gvfs_directory.hxx b/ucb/source/ucp/gvfs/gvfs_directory.hxx
index 66734f1ec31a..66734f1ec31a 100644..100755
--- a/ucb/source/ucp/gvfs/gvfs_directory.hxx
+++ b/ucb/source/ucp/gvfs/gvfs_directory.hxx
diff --git a/ucb/source/ucp/gvfs/gvfs_provider.cxx b/ucb/source/ucp/gvfs/gvfs_provider.cxx
index 203235b591fc..38e43444abec 100644..100755
--- a/ucb/source/ucp/gvfs/gvfs_provider.cxx
+++ b/ucb/source/ucp/gvfs/gvfs_provider.cxx
@@ -144,42 +144,6 @@ ContentProvider::queryContent(
//============================ shlib entry points =============================================
-
-// cut and paste verbatim from webdav (that sucks).
-static sal_Bool
-writeInfo( void *pRegistryKey,
- const rtl::OUString &rImplementationName,
- uno::Sequence< rtl::OUString > const &rServiceNames )
-{
- rtl::OUString aKeyName( RTL_CONSTASCII_USTRINGPARAM("/") );
- aKeyName += rImplementationName;
- aKeyName += rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("/UNO/SERVICES"));
-
- uno::Reference< registry::XRegistryKey > xKey;
- try {
- xKey = static_cast< registry::XRegistryKey * >
- (pRegistryKey )->createKey( aKeyName );
- }
- catch ( registry::InvalidRegistryException const & ) {
- }
-
- if ( !xKey.is() )
- return sal_False;
-
- sal_Bool bSuccess = sal_True;
-
- for ( sal_Int32 n = 0; n < rServiceNames.getLength(); ++n ) {
- try {
- xKey->createKey( rServiceNames[ n ] );
-
- } catch ( registry::InvalidRegistryException const & ) {
- bSuccess = sal_False;
- break;
- }
- }
- return bSuccess;
-}
-
extern "C" void SAL_CALL
component_getImplementationEnvironment( const sal_Char **ppEnvTypeName,
uno_Environment **/*ppEnv*/ )
@@ -187,15 +151,6 @@ component_getImplementationEnvironment( const sal_Char **ppEnvTypeName,
*ppEnvTypeName = CPPU_CURRENT_LANGUAGE_BINDING_NAME;
}
-extern "C" sal_Bool SAL_CALL
-component_writeInfo( void */*pServiceManager*/,
- void *pRegistryKey )
-{
- return pRegistryKey &&
- writeInfo( pRegistryKey,
- ::gvfs::ContentProvider::getImplementationName_Static(),
- ::gvfs::ContentProvider::getSupportedServiceNames_Static() );
-}
extern "C" void * SAL_CALL
component_getFactory( const sal_Char *pImplName,
void *pServiceManager,
diff --git a/ucb/source/ucp/gvfs/gvfs_provider.hxx b/ucb/source/ucp/gvfs/gvfs_provider.hxx
index d5291c337b22..d5291c337b22 100644..100755
--- a/ucb/source/ucp/gvfs/gvfs_provider.hxx
+++ b/ucb/source/ucp/gvfs/gvfs_provider.hxx
diff --git a/ucb/source/ucp/gvfs/gvfs_stream.cxx b/ucb/source/ucp/gvfs/gvfs_stream.cxx
index a78459ead37f..a78459ead37f 100644..100755
--- a/ucb/source/ucp/gvfs/gvfs_stream.cxx
+++ b/ucb/source/ucp/gvfs/gvfs_stream.cxx
diff --git a/ucb/source/ucp/gvfs/gvfs_stream.hxx b/ucb/source/ucp/gvfs/gvfs_stream.hxx
index 862e9ab93911..862e9ab93911 100644..100755
--- a/ucb/source/ucp/gvfs/gvfs_stream.hxx
+++ b/ucb/source/ucp/gvfs/gvfs_stream.hxx
diff --git a/ucb/source/ucp/gvfs/makefile.mk b/ucb/source/ucp/gvfs/makefile.mk
index a0e8a0bda3bb..87fcca87cf70 100644..100755
--- a/ucb/source/ucp/gvfs/makefile.mk
+++ b/ucb/source/ucp/gvfs/makefile.mk
@@ -37,8 +37,6 @@ NO_BSYMBOLIC=TRUE
.INCLUDE: settings.mk
.IF "$(L10N_framework)"==""
-UNIXTEXT=$(MISC)/$(TARGET)-ucd.txt
-
.IF "$(ENABLE_GNOMEVFS)"!=""
COMPILER_WARN_ALL=TRUE
PKGCONFIG_MODULES=gnome-vfs-2.0
@@ -84,3 +82,10 @@ SHL1VERSIONMAP=$(SOLARENV)/src/component.map
.INCLUDE: target.mk
+ALLTAR : $(MISC)/ucpgvfs.component
+
+$(MISC)/ucpgvfs.component .ERRREMOVE : $(SOLARENV)/bin/createcomponent.xslt \
+ ucpgvfs.component
+ $(XSLTPROC) --nonet --stringparam uri \
+ '$(COMPONENTPREFIX_BASIS_NATIVE)$(SHL1TARGETN:f)' -o $@ \
+ $(SOLARENV)/bin/createcomponent.xslt ucpgvfs.component
diff --git a/ucb/source/ucp/gvfs/ucpgvfs-ucd.txt b/ucb/source/ucp/gvfs/ucpgvfs-ucd.txt
deleted file mode 100644
index e9ecce6effd2..000000000000
--- a/ucb/source/ucp/gvfs/ucpgvfs-ucd.txt
+++ /dev/null
@@ -1,6 +0,0 @@
-[ComponentDescriptor]
-ImplementationName=com.sun.star.comp.GnomeVFSContentProvider
-ComponentName=ucpgvfs1.uno.so
-LoaderName=com.sun.star.loader.SharedLibrary
-[SupportedServices]
-com.sun.star.ucb.GnomeVFSContentProvider
diff --git a/ucb/source/ucp/gvfs/ucpgvfs.component b/ucb/source/ucp/gvfs/ucpgvfs.component
new file mode 100755
index 000000000000..cec3e4d1e2b1
--- /dev/null
+++ b/ucb/source/ucp/gvfs/ucpgvfs.component
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--**********************************************************************
+*
+* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+*
+* Copyright 2000, 2010 Oracle and/or its affiliates.
+*
+* OpenOffice.org - a multi-platform office productivity suite
+*
+* This file is part of OpenOffice.org.
+*
+* OpenOffice.org is free software: you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License version 3
+* only, as published by the Free Software Foundation.
+*
+* OpenOffice.org is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU Lesser General Public License version 3 for more details
+* (a copy is included in the LICENSE file that accompanied this code).
+*
+* You should have received a copy of the GNU Lesser General Public License
+* version 3 along with OpenOffice.org. If not, see
+* <http://www.openoffice.org/license.html>
+* for a copy of the LGPLv3 License.
+*
+**********************************************************************-->
+
+<component loader="com.sun.star.loader.SharedLibrary"
+ xmlns="http://openoffice.org/2010/uno-components">
+ <implementation name="com.sun.star.comp.GnomeVFSContentProvider">
+ <service name="com.sun.star.ucb.GnomeVFSContentProvider"/>
+ </implementation>
+</component>
diff --git a/ucb/source/ucp/gvfs/ucpgvfs.xml b/ucb/source/ucp/gvfs/ucpgvfs.xml
index e1f33708f525..e1f33708f525 100644..100755
--- a/ucb/source/ucp/gvfs/ucpgvfs.xml
+++ b/ucb/source/ucp/gvfs/ucpgvfs.xml
diff --git a/ucb/source/ucp/hierarchy/dynamicresultset.cxx b/ucb/source/ucp/hierarchy/dynamicresultset.cxx
index 497d00fa5ac5..497d00fa5ac5 100644..100755
--- a/ucb/source/ucp/hierarchy/dynamicresultset.cxx
+++ b/ucb/source/ucp/hierarchy/dynamicresultset.cxx
diff --git a/ucb/source/ucp/hierarchy/dynamicresultset.hxx b/ucb/source/ucp/hierarchy/dynamicresultset.hxx
index 5500b173e6d1..5500b173e6d1 100644..100755
--- a/ucb/source/ucp/hierarchy/dynamicresultset.hxx
+++ b/ucb/source/ucp/hierarchy/dynamicresultset.hxx
diff --git a/ucb/source/ucp/hierarchy/hierarchycontent.cxx b/ucb/source/ucp/hierarchy/hierarchycontent.cxx
index 583c558a007e..583c558a007e 100644..100755
--- a/ucb/source/ucp/hierarchy/hierarchycontent.cxx
+++ b/ucb/source/ucp/hierarchy/hierarchycontent.cxx
diff --git a/ucb/source/ucp/hierarchy/hierarchycontent.hxx b/ucb/source/ucp/hierarchy/hierarchycontent.hxx
index 9a1f49b9573d..9a1f49b9573d 100644..100755
--- a/ucb/source/ucp/hierarchy/hierarchycontent.hxx
+++ b/ucb/source/ucp/hierarchy/hierarchycontent.hxx
diff --git a/ucb/source/ucp/hierarchy/hierarchycontentcaps.cxx b/ucb/source/ucp/hierarchy/hierarchycontentcaps.cxx
index fc9f1c676eeb..fc9f1c676eeb 100644..100755
--- a/ucb/source/ucp/hierarchy/hierarchycontentcaps.cxx
+++ b/ucb/source/ucp/hierarchy/hierarchycontentcaps.cxx
diff --git a/ucb/source/ucp/hierarchy/hierarchydata.cxx b/ucb/source/ucp/hierarchy/hierarchydata.cxx
index 4b8983e9e918..4b8983e9e918 100644..100755
--- a/ucb/source/ucp/hierarchy/hierarchydata.cxx
+++ b/ucb/source/ucp/hierarchy/hierarchydata.cxx
diff --git a/ucb/source/ucp/hierarchy/hierarchydata.hxx b/ucb/source/ucp/hierarchy/hierarchydata.hxx
index 1ee1d9676b4d..1ee1d9676b4d 100644..100755
--- a/ucb/source/ucp/hierarchy/hierarchydata.hxx
+++ b/ucb/source/ucp/hierarchy/hierarchydata.hxx
diff --git a/ucb/source/ucp/hierarchy/hierarchydatasource.cxx b/ucb/source/ucp/hierarchy/hierarchydatasource.cxx
index 8f86aa48abab..8f86aa48abab 100644..100755
--- a/ucb/source/ucp/hierarchy/hierarchydatasource.cxx
+++ b/ucb/source/ucp/hierarchy/hierarchydatasource.cxx
diff --git a/ucb/source/ucp/hierarchy/hierarchydatasource.hxx b/ucb/source/ucp/hierarchy/hierarchydatasource.hxx
index 7a98bff57a3c..7a98bff57a3c 100644..100755
--- a/ucb/source/ucp/hierarchy/hierarchydatasource.hxx
+++ b/ucb/source/ucp/hierarchy/hierarchydatasource.hxx
diff --git a/ucb/source/ucp/hierarchy/hierarchydatasupplier.cxx b/ucb/source/ucp/hierarchy/hierarchydatasupplier.cxx
index 3149acad150c..3149acad150c 100644..100755
--- a/ucb/source/ucp/hierarchy/hierarchydatasupplier.cxx
+++ b/ucb/source/ucp/hierarchy/hierarchydatasupplier.cxx
diff --git a/ucb/source/ucp/hierarchy/hierarchydatasupplier.hxx b/ucb/source/ucp/hierarchy/hierarchydatasupplier.hxx
index 5469e9b4c052..5469e9b4c052 100644..100755
--- a/ucb/source/ucp/hierarchy/hierarchydatasupplier.hxx
+++ b/ucb/source/ucp/hierarchy/hierarchydatasupplier.hxx
diff --git a/ucb/source/ucp/hierarchy/hierarchyprovider.cxx b/ucb/source/ucp/hierarchy/hierarchyprovider.cxx
index 9bcaafadc7e2..9bcaafadc7e2 100644..100755
--- a/ucb/source/ucp/hierarchy/hierarchyprovider.cxx
+++ b/ucb/source/ucp/hierarchy/hierarchyprovider.cxx
diff --git a/ucb/source/ucp/hierarchy/hierarchyprovider.hxx b/ucb/source/ucp/hierarchy/hierarchyprovider.hxx
index e3c0c477512b..e3c0c477512b 100644..100755
--- a/ucb/source/ucp/hierarchy/hierarchyprovider.hxx
+++ b/ucb/source/ucp/hierarchy/hierarchyprovider.hxx
diff --git a/ucb/source/ucp/hierarchy/hierarchyservices.cxx b/ucb/source/ucp/hierarchy/hierarchyservices.cxx
index f9cb6387c3f6..cb10ea2ec1a8 100644..100755
--- a/ucb/source/ucp/hierarchy/hierarchyservices.cxx
+++ b/ucb/source/ucp/hierarchy/hierarchyservices.cxx
@@ -30,7 +30,6 @@
#include "precompiled_ucb.hxx"
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
#include <com/sun/star/lang/XSingleServiceFactory.hpp>
-#include <com/sun/star/registry/XRegistryKey.hpp>
#include "hierarchyprovider.hxx"
#include "hierarchydatasource.hxx"
@@ -38,45 +37,6 @@ using namespace com::sun::star;
using namespace hierarchy_ucp;
//=========================================================================
-static sal_Bool writeInfo( void * pRegistryKey,
- const rtl::OUString & rImplementationName,
- uno::Sequence< rtl::OUString > const & rServiceNames )
-{
- rtl::OUString aKeyName( RTL_CONSTASCII_USTRINGPARAM("/") );
- aKeyName += rImplementationName;
- aKeyName += rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("/UNO/SERVICES"));
-
- uno::Reference< registry::XRegistryKey > xKey;
- try
- {
- xKey = static_cast< registry::XRegistryKey * >(
- pRegistryKey )->createKey( aKeyName );
- }
- catch ( registry::InvalidRegistryException const & )
- {
- }
-
- if ( !xKey.is() )
- return sal_False;
-
- sal_Bool bSuccess = sal_True;
-
- for ( sal_Int32 n = 0; n < rServiceNames.getLength(); ++n )
- {
- try
- {
- xKey->createKey( rServiceNames[ n ] );
- }
- catch ( registry::InvalidRegistryException const & )
- {
- bSuccess = sal_False;
- break;
- }
- }
- return bSuccess;
-}
-
-//=========================================================================
extern "C" void SAL_CALL component_getImplementationEnvironment(
const sal_Char ** ppEnvTypeName, uno_Environment ** /*ppEnv*/ )
{
@@ -84,29 +44,6 @@ extern "C" void SAL_CALL component_getImplementationEnvironment(
}
//=========================================================================
-extern "C" sal_Bool SAL_CALL component_writeInfo(
- void * /*pServiceManager*/, void * pRegistryKey )
-{
- return pRegistryKey &&
-
- //////////////////////////////////////////////////////////////////////
- // Hierarchy Content Provider.
- //////////////////////////////////////////////////////////////////////
-
- writeInfo( pRegistryKey,
- HierarchyContentProvider::getImplementationName_Static(),
- HierarchyContentProvider::getSupportedServiceNames_Static() ) &&
-
- //////////////////////////////////////////////////////////////////////
- // Hierarchy Data Source.
- //////////////////////////////////////////////////////////////////////
-
- writeInfo( pRegistryKey,
- HierarchyDataSource::getImplementationName_Static(),
- HierarchyDataSource::getSupportedServiceNames_Static() );
-}
-
-//=========================================================================
extern "C" void * SAL_CALL component_getFactory(
const sal_Char * pImplName, void * pServiceManager, void * /*pRegistryKey*/ )
{
diff --git a/ucb/source/ucp/hierarchy/hierarchyuri.cxx b/ucb/source/ucp/hierarchy/hierarchyuri.cxx
index 45d2bac0e9ac..45d2bac0e9ac 100644..100755
--- a/ucb/source/ucp/hierarchy/hierarchyuri.cxx
+++ b/ucb/source/ucp/hierarchy/hierarchyuri.cxx
diff --git a/ucb/source/ucp/hierarchy/hierarchyuri.hxx b/ucb/source/ucp/hierarchy/hierarchyuri.hxx
index 8a093c49b58a..8a093c49b58a 100644..100755
--- a/ucb/source/ucp/hierarchy/hierarchyuri.hxx
+++ b/ucb/source/ucp/hierarchy/hierarchyuri.hxx
diff --git a/ucb/source/ucp/hierarchy/makefile.mk b/ucb/source/ucp/hierarchy/makefile.mk
index 00b481b5e7a1..9263faa24b08 100644..100755
--- a/ucb/source/ucp/hierarchy/makefile.mk
+++ b/ucb/source/ucp/hierarchy/makefile.mk
@@ -82,3 +82,11 @@ DEF1NAME=$(SHL1TARGET)
.ENDIF # L10N_framework
.INCLUDE: target.mk
+
+ALLTAR : $(MISC)/ucphier1.component
+
+$(MISC)/ucphier1.component .ERRREMOVE : $(SOLARENV)/bin/createcomponent.xslt \
+ ucphier1.component
+ $(XSLTPROC) --nonet --stringparam uri \
+ '$(COMPONENTPREFIX_BASIS_NATIVE)$(SHL1TARGETN:f)' -o $@ \
+ $(SOLARENV)/bin/createcomponent.xslt ucphier1.component
diff --git a/ucb/source/ucp/hierarchy/ucphier.xml b/ucb/source/ucp/hierarchy/ucphier.xml
index 1c63cbcbd7ee..1c63cbcbd7ee 100644..100755
--- a/ucb/source/ucp/hierarchy/ucphier.xml
+++ b/ucb/source/ucp/hierarchy/ucphier.xml
diff --git a/ucb/source/ucp/hierarchy/ucphier1.component b/ucb/source/ucp/hierarchy/ucphier1.component
new file mode 100755
index 000000000000..5483187d8674
--- /dev/null
+++ b/ucb/source/ucp/hierarchy/ucphier1.component
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--**********************************************************************
+*
+* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+*
+* Copyright 2000, 2010 Oracle and/or its affiliates.
+*
+* OpenOffice.org - a multi-platform office productivity suite
+*
+* This file is part of OpenOffice.org.
+*
+* OpenOffice.org is free software: you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License version 3
+* only, as published by the Free Software Foundation.
+*
+* OpenOffice.org is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU Lesser General Public License version 3 for more details
+* (a copy is included in the LICENSE file that accompanied this code).
+*
+* You should have received a copy of the GNU Lesser General Public License
+* version 3 along with OpenOffice.org. If not, see
+* <http://www.openoffice.org/license.html>
+* for a copy of the LGPLv3 License.
+*
+**********************************************************************-->
+
+<component loader="com.sun.star.loader.SharedLibrary"
+ xmlns="http://openoffice.org/2010/uno-components">
+ <implementation name="com.sun.star.comp.ucb.HierarchyContentProvider">
+ <service name="com.sun.star.ucb.HierarchyContentProvider"/>
+ </implementation>
+ <implementation name="com.sun.star.comp.ucb.HierarchyDataSource">
+ <service name="com.sun.star.ucb.DefaultHierarchyDataSource"/>
+ <service name="com.sun.star.ucb.HierarchyDataSource"/>
+ </implementation>
+</component>
diff --git a/ucb/source/ucp/inc/urihelper.hxx b/ucb/source/ucp/inc/urihelper.hxx
index 5e86ccab97ea..5e86ccab97ea 100644..100755
--- a/ucb/source/ucp/inc/urihelper.hxx
+++ b/ucb/source/ucp/inc/urihelper.hxx
diff --git a/ucb/source/ucp/odma/makefile.mk b/ucb/source/ucp/odma/makefile.mk
index 643b4fa2788e..4af8c7649ae5 100644
--- a/ucb/source/ucp/odma/makefile.mk
+++ b/ucb/source/ucp/odma/makefile.mk
@@ -102,3 +102,10 @@ LIB3OBJFILES=$(SLO3FILES)
.INCLUDE: target.mk
+ALLTAR : $(MISC)/$(TARGET)$(UCP_VERSION).component
+
+$(MISC)/$(TARGET)$(UCP_VERSION).component .ERRREMOVE : $(SOLARENV)/bin/createcomponent.xslt \
+ $(TARGET)$(UCP_VERSION).component
+ $(XSLTPROC) --nonet --stringparam uri \
+ '$(COMPONENTPREFIX_BASIS_NATIVE)$(SHL1TARGETN:f)' -o $@ \
+ $(SOLARENV)/bin/createcomponent.xslt $(TARGET)$(UCP_VERSION).component
diff --git a/ucb/source/ucp/odma/odma.h b/ucb/source/ucp/odma/odma.h
index 78062c232116..78062c232116 100644..100755
--- a/ucb/source/ucp/odma/odma.h
+++ b/ucb/source/ucp/odma/odma.h
diff --git a/ucb/source/ucp/odma/odma_content.cxx b/ucb/source/ucp/odma/odma_content.cxx
index e32bbdbbfef8..e32bbdbbfef8 100644..100755
--- a/ucb/source/ucp/odma/odma_content.cxx
+++ b/ucb/source/ucp/odma/odma_content.cxx
diff --git a/ucb/source/ucp/odma/odma_content.hxx b/ucb/source/ucp/odma/odma_content.hxx
index 8f9052efe5e2..8f9052efe5e2 100644..100755
--- a/ucb/source/ucp/odma/odma_content.hxx
+++ b/ucb/source/ucp/odma/odma_content.hxx
diff --git a/ucb/source/ucp/odma/odma_contentcaps.cxx b/ucb/source/ucp/odma/odma_contentcaps.cxx
index aa31c3b87a1b..aa31c3b87a1b 100644..100755
--- a/ucb/source/ucp/odma/odma_contentcaps.cxx
+++ b/ucb/source/ucp/odma/odma_contentcaps.cxx
diff --git a/ucb/source/ucp/odma/odma_contentprops.hxx b/ucb/source/ucp/odma/odma_contentprops.hxx
index ba59f62e8f72..ba59f62e8f72 100644..100755
--- a/ucb/source/ucp/odma/odma_contentprops.hxx
+++ b/ucb/source/ucp/odma/odma_contentprops.hxx
diff --git a/ucb/source/ucp/odma/odma_datasupplier.cxx b/ucb/source/ucp/odma/odma_datasupplier.cxx
index 817a4f4decf8..817a4f4decf8 100644..100755
--- a/ucb/source/ucp/odma/odma_datasupplier.cxx
+++ b/ucb/source/ucp/odma/odma_datasupplier.cxx
diff --git a/ucb/source/ucp/odma/odma_datasupplier.hxx b/ucb/source/ucp/odma/odma_datasupplier.hxx
index 8814f8113022..8814f8113022 100644..100755
--- a/ucb/source/ucp/odma/odma_datasupplier.hxx
+++ b/ucb/source/ucp/odma/odma_datasupplier.hxx
diff --git a/ucb/source/ucp/odma/odma_inputstream.cxx b/ucb/source/ucp/odma/odma_inputstream.cxx
index 1c291bd2121c..1c291bd2121c 100644..100755
--- a/ucb/source/ucp/odma/odma_inputstream.cxx
+++ b/ucb/source/ucp/odma/odma_inputstream.cxx
diff --git a/ucb/source/ucp/odma/odma_inputstream.hxx b/ucb/source/ucp/odma/odma_inputstream.hxx
index ff9c0bb20b76..ff9c0bb20b76 100644..100755
--- a/ucb/source/ucp/odma/odma_inputstream.hxx
+++ b/ucb/source/ucp/odma/odma_inputstream.hxx
diff --git a/ucb/source/ucp/odma/odma_lib.cxx b/ucb/source/ucp/odma/odma_lib.cxx
index f8a079b101cf..fde03a54c069 100644..100755
--- a/ucb/source/ucp/odma/odma_lib.cxx
+++ b/ucb/source/ucp/odma/odma_lib.cxx
@@ -80,9 +80,6 @@ namespace odma
return bLoaded;
::rtl::OUString sPath;
- #ifdef WIN
- sPath = ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("ODMA.DLL"));
- #endif
#ifdef WNT
sPath = ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("ODMA32.DLL"));
#endif
diff --git a/ucb/source/ucp/odma/odma_lib.hxx b/ucb/source/ucp/odma/odma_lib.hxx
index b11546417c29..b11546417c29 100644..100755
--- a/ucb/source/ucp/odma/odma_lib.hxx
+++ b/ucb/source/ucp/odma/odma_lib.hxx
diff --git a/ucb/source/ucp/odma/odma_main.cxx b/ucb/source/ucp/odma/odma_main.cxx
index b49d24a46a6d..b49d24a46a6d 100644..100755
--- a/ucb/source/ucp/odma/odma_main.cxx
+++ b/ucb/source/ucp/odma/odma_main.cxx
diff --git a/ucb/source/ucp/odma/odma_provider.cxx b/ucb/source/ucp/odma/odma_provider.cxx
index e59fa2093ff3..e59fa2093ff3 100644..100755
--- a/ucb/source/ucp/odma/odma_provider.cxx
+++ b/ucb/source/ucp/odma/odma_provider.cxx
diff --git a/ucb/source/ucp/odma/odma_provider.hxx b/ucb/source/ucp/odma/odma_provider.hxx
index 6a552e3486cc..6a552e3486cc 100644..100755
--- a/ucb/source/ucp/odma/odma_provider.hxx
+++ b/ucb/source/ucp/odma/odma_provider.hxx
diff --git a/ucb/source/ucp/odma/odma_resultset.cxx b/ucb/source/ucp/odma/odma_resultset.cxx
index e3f10fe611d3..e3f10fe611d3 100644..100755
--- a/ucb/source/ucp/odma/odma_resultset.cxx
+++ b/ucb/source/ucp/odma/odma_resultset.cxx
diff --git a/ucb/source/ucp/odma/odma_resultset.hxx b/ucb/source/ucp/odma/odma_resultset.hxx
index 0dfeed5dacb2..0dfeed5dacb2 100644..100755
--- a/ucb/source/ucp/odma/odma_resultset.hxx
+++ b/ucb/source/ucp/odma/odma_resultset.hxx
diff --git a/ucb/source/ucp/odma/odma_services.cxx b/ucb/source/ucp/odma/odma_services.cxx
index 7720623fd961..5465c8a202a3 100644..100755
--- a/ucb/source/ucp/odma/odma_services.cxx
+++ b/ucb/source/ucp/odma/odma_services.cxx
@@ -39,45 +39,6 @@ using namespace com::sun::star::lang;
using namespace com::sun::star::registry;
//=========================================================================
-static sal_Bool writeInfo( void * pRegistryKey,
- const rtl::OUString & rImplementationName,
- Sequence< rtl::OUString > const & rServiceNames )
-{
- rtl::OUString aKeyName( RTL_CONSTASCII_USTRINGPARAM("/") );
- aKeyName += rImplementationName;
- aKeyName += rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("/UNO/SERVICES"));
-
- Reference< XRegistryKey > xKey;
- try
- {
- xKey = static_cast< XRegistryKey * >(
- pRegistryKey )->createKey( aKeyName );
- }
- catch ( InvalidRegistryException const & )
- {
- }
-
- if ( !xKey.is() )
- return sal_False;
-
- sal_Bool bSuccess = sal_True;
-
- for ( sal_Int32 n = 0; n < rServiceNames.getLength(); ++n )
- {
- try
- {
- xKey->createKey( rServiceNames[ n ] );
- }
- catch ( InvalidRegistryException const & )
- {
- bSuccess = sal_False;
- break;
- }
- }
- return bSuccess;
-}
-
-//=========================================================================
extern "C" void SAL_CALL component_getImplementationEnvironment(
const sal_Char ** ppEnvTypeName, uno_Environment ** /*ppEnv*/ )
{
@@ -85,22 +46,6 @@ extern "C" void SAL_CALL component_getImplementationEnvironment(
}
//=========================================================================
-extern "C" sal_Bool SAL_CALL component_writeInfo(
- void * /*pServiceManager*/, void * pRegistryKey )
-{
- return pRegistryKey &&
-
- //////////////////////////////////////////////////////////////////////
- // Write info into registry.
- //////////////////////////////////////////////////////////////////////
-
- // @@@ Adjust namespace names.
- writeInfo( pRegistryKey,
- ::odma::ContentProvider::getImplementationName_Static(),
- ::odma::ContentProvider::getSupportedServiceNames_Static() );
-}
-
-//=========================================================================
extern "C" void * SAL_CALL component_getFactory(
const sal_Char * pImplName, void * pServiceManager, void * /*pRegistryKey*/ )
{
diff --git a/ucb/source/ucp/odma/ucpodma.xml b/ucb/source/ucp/odma/ucpodma.xml
index 4cfdb67a0a16..4cfdb67a0a16 100644..100755
--- a/ucb/source/ucp/odma/ucpodma.xml
+++ b/ucb/source/ucp/odma/ucpodma.xml
diff --git a/ucb/source/ucp/odma/ucpodma1.component b/ucb/source/ucp/odma/ucpodma1.component
new file mode 100644
index 000000000000..fa1abaee8517
--- /dev/null
+++ b/ucb/source/ucp/odma/ucpodma1.component
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--**********************************************************************
+*
+* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+*
+* Copyright 2000, 2010 Oracle and/or its affiliates.
+*
+* OpenOffice.org - a multi-platform office productivity suite
+*
+* This file is part of OpenOffice.org.
+*
+* OpenOffice.org is free software: you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License version 3
+* only, as published by the Free Software Foundation.
+*
+* OpenOffice.org is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU Lesser General Public License version 3 for more details
+* (a copy is included in the LICENSE file that accompanied this code).
+*
+* You should have received a copy of the GNU Lesser General Public License
+* version 3 along with OpenOffice.org. If not, see
+* <http://www.openoffice.org/license.html>
+* for a copy of the LGPLv3 License.
+*
+**********************************************************************-->
+
+<component loader="com.sun.star.loader.SharedLibrary"
+ xmlns="http://openoffice.org/2010/uno-components">
+ <implementation name="com.sun.star.comp.ucb.FileProvider">
+ <service name="com.sun.star.ucb.ODMAContentProvider"/>
+ </implementation>
+</component>
diff --git a/ucb/source/ucp/package/makefile.mk b/ucb/source/ucp/package/makefile.mk
index a8cdf7430703..b78150aed2cb 100644..100755
--- a/ucb/source/ucp/package/makefile.mk
+++ b/ucb/source/ucp/package/makefile.mk
@@ -87,3 +87,11 @@ DEF1NAME=$(SHL1TARGET)
.ENDIF # L10N_framework
.INCLUDE: target.mk
+
+ALLTAR : $(MISC)/ucppkg1.component
+
+$(MISC)/ucppkg1.component .ERRREMOVE : $(SOLARENV)/bin/createcomponent.xslt \
+ ucppkg1.component
+ $(XSLTPROC) --nonet --stringparam uri \
+ '$(COMPONENTPREFIX_BASIS_NATIVE)$(SHL1TARGETN:f)' -o $@ \
+ $(SOLARENV)/bin/createcomponent.xslt ucppkg1.component
diff --git a/ucb/source/ucp/package/pkgcontent.cxx b/ucb/source/ucp/package/pkgcontent.cxx
index e501dd09fde1..e501dd09fde1 100644..100755
--- a/ucb/source/ucp/package/pkgcontent.cxx
+++ b/ucb/source/ucp/package/pkgcontent.cxx
diff --git a/ucb/source/ucp/package/pkgcontent.hxx b/ucb/source/ucp/package/pkgcontent.hxx
index 3455ffb83211..3455ffb83211 100644..100755
--- a/ucb/source/ucp/package/pkgcontent.hxx
+++ b/ucb/source/ucp/package/pkgcontent.hxx
diff --git a/ucb/source/ucp/package/pkgcontentcaps.cxx b/ucb/source/ucp/package/pkgcontentcaps.cxx
index b15cf057fbf2..b15cf057fbf2 100644..100755
--- a/ucb/source/ucp/package/pkgcontentcaps.cxx
+++ b/ucb/source/ucp/package/pkgcontentcaps.cxx
diff --git a/ucb/source/ucp/package/pkgdatasupplier.cxx b/ucb/source/ucp/package/pkgdatasupplier.cxx
index d403626ba061..d403626ba061 100644..100755
--- a/ucb/source/ucp/package/pkgdatasupplier.cxx
+++ b/ucb/source/ucp/package/pkgdatasupplier.cxx
diff --git a/ucb/source/ucp/package/pkgdatasupplier.hxx b/ucb/source/ucp/package/pkgdatasupplier.hxx
index 07542f70b37c..07542f70b37c 100644..100755
--- a/ucb/source/ucp/package/pkgdatasupplier.hxx
+++ b/ucb/source/ucp/package/pkgdatasupplier.hxx
diff --git a/ucb/source/ucp/package/pkgprovider.cxx b/ucb/source/ucp/package/pkgprovider.cxx
index 27d411233225..27d411233225 100644..100755
--- a/ucb/source/ucp/package/pkgprovider.cxx
+++ b/ucb/source/ucp/package/pkgprovider.cxx
diff --git a/ucb/source/ucp/package/pkgprovider.hxx b/ucb/source/ucp/package/pkgprovider.hxx
index abc3660bd3ba..abc3660bd3ba 100644..100755
--- a/ucb/source/ucp/package/pkgprovider.hxx
+++ b/ucb/source/ucp/package/pkgprovider.hxx
diff --git a/ucb/source/ucp/package/pkgresultset.cxx b/ucb/source/ucp/package/pkgresultset.cxx
index 0730534bf2d1..0730534bf2d1 100644..100755
--- a/ucb/source/ucp/package/pkgresultset.cxx
+++ b/ucb/source/ucp/package/pkgresultset.cxx
diff --git a/ucb/source/ucp/package/pkgresultset.hxx b/ucb/source/ucp/package/pkgresultset.hxx
index e9c20dcd61c6..e9c20dcd61c6 100644..100755
--- a/ucb/source/ucp/package/pkgresultset.hxx
+++ b/ucb/source/ucp/package/pkgresultset.hxx
diff --git a/ucb/source/ucp/package/pkgservices.cxx b/ucb/source/ucp/package/pkgservices.cxx
index 737dc78c7091..102a7ebe5197 100644..100755
--- a/ucb/source/ucp/package/pkgservices.cxx
+++ b/ucb/source/ucp/package/pkgservices.cxx
@@ -35,50 +35,6 @@
using namespace com::sun::star;
-namespace {
-
-//=========================================================================
-sal_Bool writeInfo(
- void * pRegistryKey,
- const rtl::OUString & rImplementationName,
- uno::Sequence< rtl::OUString > const & rServiceNames )
-{
- rtl::OUString aKeyName( RTL_CONSTASCII_USTRINGPARAM("/") );
- aKeyName += rImplementationName;
- aKeyName += rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("/UNO/SERVICES"));
-
- uno::Reference< registry::XRegistryKey > xKey;
- try
- {
- xKey = static_cast< registry::XRegistryKey * >(
- pRegistryKey )->createKey( aKeyName );
- }
- catch ( registry::InvalidRegistryException const & )
- {
- }
-
- if ( !xKey.is() )
- return sal_False;
-
- sal_Bool bSuccess = sal_True;
-
- for ( sal_Int32 n = 0; n < rServiceNames.getLength(); ++n )
- {
- try
- {
- xKey->createKey( rServiceNames[ n ] );
- }
- catch ( registry::InvalidRegistryException const & )
- {
- bSuccess = sal_False;
- break;
- }
- }
- return bSuccess;
-}
-
-} // namespace
-
//=========================================================================
extern "C" void SAL_CALL component_getImplementationEnvironment(
const sal_Char ** ppEnvTypeName, uno_Environment ** /*ppEnv*/ )
@@ -87,21 +43,6 @@ extern "C" void SAL_CALL component_getImplementationEnvironment(
}
//=========================================================================
-extern "C" sal_Bool SAL_CALL component_writeInfo(
- void * /*pServiceManager*/, void * pRegistryKey )
-{
- return pRegistryKey &&
-
- //////////////////////////////////////////////////////////////////////
- // Write info into registry.
- //////////////////////////////////////////////////////////////////////
-
- writeInfo( pRegistryKey,
- ::package_ucp::ContentProvider::getImplementationName_Static(),
- ::package_ucp::ContentProvider::getSupportedServiceNames_Static() );
-}
-
-//=========================================================================
extern "C" void * SAL_CALL component_getFactory(
const sal_Char * pImplName, void * pServiceManager, void * /*pRegistryKey*/ )
{
diff --git a/ucb/source/ucp/package/pkguri.cxx b/ucb/source/ucp/package/pkguri.cxx
index d9038b1a0c5c..d9038b1a0c5c 100644..100755
--- a/ucb/source/ucp/package/pkguri.cxx
+++ b/ucb/source/ucp/package/pkguri.cxx
diff --git a/ucb/source/ucp/package/pkguri.hxx b/ucb/source/ucp/package/pkguri.hxx
index 733726eab468..733726eab468 100644..100755
--- a/ucb/source/ucp/package/pkguri.hxx
+++ b/ucb/source/ucp/package/pkguri.hxx
diff --git a/ucb/source/ucp/package/ucppkg.xml b/ucb/source/ucp/package/ucppkg.xml
index 6b71fca63486..6b71fca63486 100644..100755
--- a/ucb/source/ucp/package/ucppkg.xml
+++ b/ucb/source/ucp/package/ucppkg.xml
diff --git a/ucb/source/ucp/package/ucppkg1.component b/ucb/source/ucp/package/ucppkg1.component
new file mode 100755
index 000000000000..a2e2418b5602
--- /dev/null
+++ b/ucb/source/ucp/package/ucppkg1.component
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--**********************************************************************
+*
+* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+*
+* Copyright 2000, 2010 Oracle and/or its affiliates.
+*
+* OpenOffice.org - a multi-platform office productivity suite
+*
+* This file is part of OpenOffice.org.
+*
+* OpenOffice.org is free software: you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License version 3
+* only, as published by the Free Software Foundation.
+*
+* OpenOffice.org is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU Lesser General Public License version 3 for more details
+* (a copy is included in the LICENSE file that accompanied this code).
+*
+* You should have received a copy of the GNU Lesser General Public License
+* version 3 along with OpenOffice.org. If not, see
+* <http://www.openoffice.org/license.html>
+* for a copy of the LGPLv3 License.
+*
+**********************************************************************-->
+
+<component loader="com.sun.star.loader.SharedLibrary"
+ xmlns="http://openoffice.org/2010/uno-components">
+ <implementation name="com.sun.star.comp.ucb.PackageContentProvider">
+ <service name="com.sun.star.ucb.PackageContentProvider"/>
+ </implementation>
+</component>
diff --git a/ucb/source/ucp/tdoc/makefile.mk b/ucb/source/ucp/tdoc/makefile.mk
index 83e9599eed72..82c76b34b206 100644..100755
--- a/ucb/source/ucp/tdoc/makefile.mk
+++ b/ucb/source/ucp/tdoc/makefile.mk
@@ -92,3 +92,11 @@ DEF1NAME=$(SHL1TARGET)
.INCLUDE: target.mk
+
+ALLTAR : $(MISC)/ucptdoc1.component
+
+$(MISC)/ucptdoc1.component .ERRREMOVE : $(SOLARENV)/bin/createcomponent.xslt \
+ ucptdoc1.component
+ $(XSLTPROC) --nonet --stringparam uri \
+ '$(COMPONENTPREFIX_BASIS_NATIVE)$(SHL1TARGETN:f)' -o $@ \
+ $(SOLARENV)/bin/createcomponent.xslt ucptdoc1.component
diff --git a/ucb/source/ucp/tdoc/tdoc_content.cxx b/ucb/source/ucp/tdoc/tdoc_content.cxx
index cc859e623dae..cc859e623dae 100644..100755
--- a/ucb/source/ucp/tdoc/tdoc_content.cxx
+++ b/ucb/source/ucp/tdoc/tdoc_content.cxx
diff --git a/ucb/source/ucp/tdoc/tdoc_content.hxx b/ucb/source/ucp/tdoc/tdoc_content.hxx
index 629da6f4bd4b..629da6f4bd4b 100644..100755
--- a/ucb/source/ucp/tdoc/tdoc_content.hxx
+++ b/ucb/source/ucp/tdoc/tdoc_content.hxx
diff --git a/ucb/source/ucp/tdoc/tdoc_contentcaps.cxx b/ucb/source/ucp/tdoc/tdoc_contentcaps.cxx
index 9dba9f166565..9dba9f166565 100644..100755
--- a/ucb/source/ucp/tdoc/tdoc_contentcaps.cxx
+++ b/ucb/source/ucp/tdoc/tdoc_contentcaps.cxx
diff --git a/ucb/source/ucp/tdoc/tdoc_datasupplier.cxx b/ucb/source/ucp/tdoc/tdoc_datasupplier.cxx
index a3472dfd92e0..a3472dfd92e0 100644..100755
--- a/ucb/source/ucp/tdoc/tdoc_datasupplier.cxx
+++ b/ucb/source/ucp/tdoc/tdoc_datasupplier.cxx
diff --git a/ucb/source/ucp/tdoc/tdoc_datasupplier.hxx b/ucb/source/ucp/tdoc/tdoc_datasupplier.hxx
index 568dc2892b50..568dc2892b50 100644..100755
--- a/ucb/source/ucp/tdoc/tdoc_datasupplier.hxx
+++ b/ucb/source/ucp/tdoc/tdoc_datasupplier.hxx
diff --git a/ucb/source/ucp/tdoc/tdoc_docmgr.cxx b/ucb/source/ucp/tdoc/tdoc_docmgr.cxx
index c8a036378d08..cfa4c67496e3 100644..100755
--- a/ucb/source/ucp/tdoc/tdoc_docmgr.cxx
+++ b/ucb/source/ucp/tdoc/tdoc_docmgr.cxx
@@ -28,14 +28,11 @@
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_ucb.hxx"
+
/**************************************************************************
TODO
**************************************************************************
- - filter unwanted models notified by global document event broadcaster
- - help documents
- - others, which I don't know yet
-
*************************************************************************/
#include "osl/diagnose.h"
@@ -45,12 +42,13 @@
#include "comphelper/namedvaluecollection.hxx"
#include "comphelper/documentinfo.hxx"
+#include "com/sun/star/awt/XTopWindow.hpp"
#include "com/sun/star/beans/XPropertySet.hpp"
#include "com/sun/star/container/XEnumerationAccess.hpp"
+#include "com/sun/star/document/XStorageBasedDocument.hpp"
#include "com/sun/star/frame/XStorable.hpp"
#include "com/sun/star/lang/DisposedException.hpp"
-#include "com/sun/star/document/XStorageBasedDocument.hpp"
-#include "com/sun/star/awt/XTopWindow.hpp"
+#include "com/sun/star/util/XCloseBroadcaster.hpp"
#include "tdoc_docmgr.hxx"
@@ -61,6 +59,53 @@ using ::comphelper::DocumentInfo;
//=========================================================================
//=========================================================================
//
+// OfficeDocumentsCloseListener Implementation.
+//
+//=========================================================================
+//=========================================================================
+
+//=========================================================================
+//
+// util::XCloseListener
+//
+//=========================================================================
+
+// virtual
+void SAL_CALL OfficeDocumentsManager::OfficeDocumentsCloseListener::queryClosing(
+ const lang::EventObject& /*Source*/, sal_Bool /*GetsOwnership*/ )
+ throw ( util::CloseVetoException,
+ uno::RuntimeException )
+{
+}
+
+//=========================================================================
+void SAL_CALL OfficeDocumentsManager::OfficeDocumentsCloseListener::notifyClosing(
+ const lang::EventObject& Source )
+ throw ( uno::RuntimeException )
+{
+ document::EventObject aDocEvent;
+ aDocEvent.Source = Source.Source;
+ aDocEvent.EventName = rtl::OUString(
+ RTL_CONSTASCII_USTRINGPARAM( "OfficeDocumentsListener::notifyClosing" ) );
+ m_pManager->notifyEvent( aDocEvent );
+}
+
+//=========================================================================
+//
+// lang::XEventListener (base of util::XCloseListener)
+//
+//=========================================================================
+
+// virtual
+void SAL_CALL OfficeDocumentsManager::OfficeDocumentsCloseListener::disposing(
+ const lang::EventObject& /*Source*/ )
+ throw ( uno::RuntimeException )
+{
+}
+
+//=========================================================================
+//=========================================================================
+//
// OfficeDocumentsManager Implementation.
//
//=========================================================================
@@ -71,7 +116,8 @@ OfficeDocumentsManager::OfficeDocumentsManager(
OfficeDocumentsEventListener * pDocEventListener )
: m_xSMgr( xSMgr ),
m_xDocEvtNotifier( createDocumentEventNotifier( xSMgr ) ),
- m_pDocEventListener( pDocEventListener )
+ m_pDocEventListener( pDocEventListener ),
+ m_xDocCloseListener( new OfficeDocumentsCloseListener( this ) )
{
if ( m_xDocEvtNotifier.is() )
{
@@ -189,10 +235,19 @@ void SAL_CALL OfficeDocumentsManager::notifyEvent(
OSL_ENSURE( xStorage.is(), "Got no document storage!" );
rtl:: OUString aDocId = getDocumentId( Event.Source );
- rtl:: OUString aTitle = DocumentInfo::getDocumentTitle( uno::Reference< frame::XModel >( Event.Source, uno::UNO_QUERY ) );
+ rtl:: OUString aTitle = DocumentInfo::getDocumentTitle(
+ uno::Reference< frame::XModel >( Event.Source, uno::UNO_QUERY ) );
m_aDocs[ aDocId ] = StorageInfo( aTitle, xStorage, xModel );
+ uno::Reference< util::XCloseBroadcaster > xCloseBroadcaster(
+ Event.Source, uno::UNO_QUERY );
+ OSL_ENSURE( xCloseBroadcaster.is(),
+ "OnLoadFinished/OnCreate event: got no close broadcaster!" );
+
+ if ( xCloseBroadcaster.is() )
+ xCloseBroadcaster->addCloseListener( m_xDocCloseListener );
+
// Propagate document closure.
OSL_ENSURE( m_pDocEventListener,
"OnLoadFinished/OnCreate event: no owner for insert event propagation!" );
@@ -203,12 +258,18 @@ void SAL_CALL OfficeDocumentsManager::notifyEvent(
}
}
else if ( Event.EventName.equalsAsciiL(
- RTL_CONSTASCII_STRINGPARAM( "OnUnload" ) ) )
+ RTL_CONSTASCII_STRINGPARAM( "OfficeDocumentsListener::notifyClosing" ) ) )
{
if ( isOfficeDocument( Event.Source ) )
{
// Document has been closed (unloaded)
+ // #163732# - Official event "OnUnload" does not work here. Event
+ // gets fired to early. Other OnUnload listeners called after this
+ // listener may still need TDOC access to the document. Remove the
+ // document from TDOC docs list on XCloseListener::notifyClosing.
+ // See OfficeDocumentsManager::OfficeDocumentsListener::notifyClosing.
+
osl::MutexGuard aGuard( m_aMtx );
uno::Reference< frame::XModel >
@@ -229,8 +290,6 @@ void SAL_CALL OfficeDocumentsManager::notifyEvent(
rtl::OUString aDocId( (*it).first );
m_pDocEventListener->notifyDocumentClosed( aDocId );
}
-
-
break;
}
++it;
@@ -239,8 +298,18 @@ void SAL_CALL OfficeDocumentsManager::notifyEvent(
OSL_ENSURE( it != m_aDocs.end(),
"OnUnload event notified for unknown document!" );
- if( it != m_aDocs.end() )
+ if ( it != m_aDocs.end() )
+ {
+ uno::Reference< util::XCloseBroadcaster > xCloseBroadcaster(
+ Event.Source, uno::UNO_QUERY );
+ OSL_ENSURE( xCloseBroadcaster.is(),
+ "OnUnload event: got no XCloseBroadcaster from XModel" );
+
+ if ( xCloseBroadcaster.is() )
+ xCloseBroadcaster->removeCloseListener( m_xDocCloseListener );
+
m_aDocs.erase( it );
+ }
}
}
else if ( Event.EventName.equalsAsciiL(
@@ -308,7 +377,7 @@ void SAL_CALL OfficeDocumentsManager::notifyEvent(
(*it).second.xStorage = xStorage;
// Adjust title.
- (*it).second.aTitle = DocumentInfo::getDocumentTitle( uno::Reference< frame::XModel >( Event.Source, uno::UNO_QUERY ) );
+ (*it).second.aTitle = DocumentInfo::getDocumentTitle( xModel );
break;
}
++it;
@@ -335,7 +404,7 @@ void SAL_CALL OfficeDocumentsManager::notifyEvent(
if ( (*it).second.xModel == xModel )
{
// Adjust title.
- rtl:: OUString aTitle = DocumentInfo::getDocumentTitle( uno::Reference< frame::XModel >( Event.Source, uno::UNO_QUERY ) );
+ rtl:: OUString aTitle = DocumentInfo::getDocumentTitle( xModel );
(*it).second.aTitle = aTitle;
// Adjust storage.
@@ -476,6 +545,14 @@ void OfficeDocumentsManager::buildDocumentsList()
m_aDocs[ aDocId ]
= StorageInfo( aTitle, xStorage, xModel );
+
+ uno::Reference< util::XCloseBroadcaster > xCloseBroadcaster(
+ xModel, uno::UNO_QUERY );
+ OSL_ENSURE( xCloseBroadcaster.is(),
+ "buildDocumentsList: got no close broadcaster!" );
+
+ if ( xCloseBroadcaster.is() )
+ xCloseBroadcaster->addCloseListener( m_xDocCloseListener );
}
}
}
diff --git a/ucb/source/ucp/tdoc/tdoc_docmgr.hxx b/ucb/source/ucp/tdoc/tdoc_docmgr.hxx
index e0fade40c39f..e1e478bfcc3c 100644..100755
--- a/ucb/source/ucp/tdoc/tdoc_docmgr.hxx
+++ b/ucb/source/ucp/tdoc/tdoc_docmgr.hxx
@@ -40,6 +40,7 @@
#include "com/sun/star/embed/XStorage.hpp"
#include "com/sun/star/frame/XModel.hpp"
#include "com/sun/star/frame/XModuleManager.hpp"
+#include "com/sun/star/util/XCloseListener.hpp"
namespace tdoc_ucp {
@@ -89,6 +90,33 @@ namespace tdoc_ucp {
class OfficeDocumentsManager :
public cppu::WeakImplHelper1< com::sun::star::document::XEventListener >
{
+ class OfficeDocumentsCloseListener :
+ public cppu::WeakImplHelper1< com::sun::star::util::XCloseListener >
+
+ {
+ public:
+ OfficeDocumentsCloseListener( OfficeDocumentsManager * pMgr )
+ : m_pManager( pMgr ) {};
+
+ // util::XCloseListener
+ virtual void SAL_CALL queryClosing(
+ const ::com::sun::star::lang::EventObject& Source,
+ ::sal_Bool GetsOwnership )
+ throw (::com::sun::star::util::CloseVetoException,
+ ::com::sun::star::uno::RuntimeException);
+
+ virtual void SAL_CALL notifyClosing(
+ const ::com::sun::star::lang::EventObject& Source )
+ throw (::com::sun::star::uno::RuntimeException);
+
+ // lang::XEventListener (base of util::XCloseListener)
+ virtual void SAL_CALL disposing(
+ const com::sun::star::lang::EventObject & Source )
+ throw ( com::sun::star::uno::RuntimeException );
+ private:
+ OfficeDocumentsManager * m_pManager;
+ };
+
public:
OfficeDocumentsManager(
const com::sun::star::uno::Reference<
@@ -132,7 +160,9 @@ namespace tdoc_ucp {
createDocumentEventNotifier(
const com::sun::star::uno::Reference<
com::sun::star::lang::XMultiServiceFactory >& rXSMgr );
+
void buildDocumentsList();
+
bool
isOfficeDocument(
const com::sun::star::uno::Reference<
@@ -164,9 +194,11 @@ namespace tdoc_ucp {
com::sun::star::uno::Reference<
com::sun::star::document::XEventBroadcaster > m_xDocEvtNotifier;
com::sun::star::uno::Reference<
- com::sun::star::frame::XModuleManager > m_xModuleMgr;
+ com::sun::star::frame::XModuleManager > m_xModuleMgr;
DocumentList m_aDocs;
OfficeDocumentsEventListener * m_pDocEventListener;
+ com::sun::star::uno::Reference<
+ com::sun::star::util::XCloseListener > m_xDocCloseListener;
};
} // namespace tdoc_ucp
diff --git a/ucb/source/ucp/tdoc/tdoc_documentcontentfactory.cxx b/ucb/source/ucp/tdoc/tdoc_documentcontentfactory.cxx
index 5d10fd45b2a5..5d10fd45b2a5 100644..100755
--- a/ucb/source/ucp/tdoc/tdoc_documentcontentfactory.cxx
+++ b/ucb/source/ucp/tdoc/tdoc_documentcontentfactory.cxx
diff --git a/ucb/source/ucp/tdoc/tdoc_documentcontentfactory.hxx b/ucb/source/ucp/tdoc/tdoc_documentcontentfactory.hxx
index 036a773fe5f4..036a773fe5f4 100644..100755
--- a/ucb/source/ucp/tdoc/tdoc_documentcontentfactory.hxx
+++ b/ucb/source/ucp/tdoc/tdoc_documentcontentfactory.hxx
diff --git a/ucb/source/ucp/tdoc/tdoc_passwordrequest.cxx b/ucb/source/ucp/tdoc/tdoc_passwordrequest.cxx
index bed79e654d8c..bed79e654d8c 100644..100755
--- a/ucb/source/ucp/tdoc/tdoc_passwordrequest.cxx
+++ b/ucb/source/ucp/tdoc/tdoc_passwordrequest.cxx
diff --git a/ucb/source/ucp/tdoc/tdoc_passwordrequest.hxx b/ucb/source/ucp/tdoc/tdoc_passwordrequest.hxx
index f96210e859a3..f96210e859a3 100644..100755
--- a/ucb/source/ucp/tdoc/tdoc_passwordrequest.hxx
+++ b/ucb/source/ucp/tdoc/tdoc_passwordrequest.hxx
diff --git a/ucb/source/ucp/tdoc/tdoc_provider.cxx b/ucb/source/ucp/tdoc/tdoc_provider.cxx
index 810582cc6f76..810582cc6f76 100644..100755
--- a/ucb/source/ucp/tdoc/tdoc_provider.cxx
+++ b/ucb/source/ucp/tdoc/tdoc_provider.cxx
diff --git a/ucb/source/ucp/tdoc/tdoc_provider.hxx b/ucb/source/ucp/tdoc/tdoc_provider.hxx
index 28bdfe5ee5bb..28bdfe5ee5bb 100644..100755
--- a/ucb/source/ucp/tdoc/tdoc_provider.hxx
+++ b/ucb/source/ucp/tdoc/tdoc_provider.hxx
diff --git a/ucb/source/ucp/tdoc/tdoc_resultset.cxx b/ucb/source/ucp/tdoc/tdoc_resultset.cxx
index 701e5d78e3e9..701e5d78e3e9 100644..100755
--- a/ucb/source/ucp/tdoc/tdoc_resultset.cxx
+++ b/ucb/source/ucp/tdoc/tdoc_resultset.cxx
diff --git a/ucb/source/ucp/tdoc/tdoc_resultset.hxx b/ucb/source/ucp/tdoc/tdoc_resultset.hxx
index da5ab8fe5557..da5ab8fe5557 100644..100755
--- a/ucb/source/ucp/tdoc/tdoc_resultset.hxx
+++ b/ucb/source/ucp/tdoc/tdoc_resultset.hxx
diff --git a/ucb/source/ucp/tdoc/tdoc_services.cxx b/ucb/source/ucp/tdoc/tdoc_services.cxx
index 230b0f74792f..25b407cd5fd3 100644..100755
--- a/ucb/source/ucp/tdoc/tdoc_services.cxx
+++ b/ucb/source/ucp/tdoc/tdoc_services.cxx
@@ -40,45 +40,6 @@ using namespace com::sun::star;
using namespace tdoc_ucp;
//=========================================================================
-static sal_Bool writeInfo( void * pRegistryKey,
- const rtl::OUString & rImplementationName,
- uno::Sequence< rtl::OUString > const & rServiceNames )
-{
- rtl::OUString aKeyName( RTL_CONSTASCII_USTRINGPARAM("/") );
- aKeyName += rImplementationName;
- aKeyName += rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("/UNO/SERVICES"));
-
- uno::Reference< registry::XRegistryKey > xKey;
- try
- {
- xKey = static_cast< registry::XRegistryKey * >(
- pRegistryKey )->createKey( aKeyName );
- }
- catch ( registry::InvalidRegistryException const & )
- {
- }
-
- if ( !xKey.is() )
- return sal_False;
-
- sal_Bool bSuccess = sal_True;
-
- for ( sal_Int32 n = 0; n < rServiceNames.getLength(); ++n )
- {
- try
- {
- xKey->createKey( rServiceNames[ n ] );
- }
- catch ( registry::InvalidRegistryException const & )
- {
- bSuccess = sal_False;
- break;
- }
- }
- return bSuccess;
-}
-
-//=========================================================================
extern "C" void SAL_CALL component_getImplementationEnvironment(
const sal_Char ** ppEnvTypeName, uno_Environment ** /*ppEnv*/ )
{
@@ -86,29 +47,6 @@ extern "C" void SAL_CALL component_getImplementationEnvironment(
}
//=========================================================================
-extern "C" sal_Bool SAL_CALL component_writeInfo(
- void * /*pServiceManager*/, void * pRegistryKey )
-{
- return pRegistryKey &&
-
- //////////////////////////////////////////////////////////////////////
- // Transient Documents Content Provider.
- //////////////////////////////////////////////////////////////////////
-
- writeInfo( pRegistryKey,
- ContentProvider::getImplementationName_Static(),
- ContentProvider::getSupportedServiceNames_Static() ) &&
-
- //////////////////////////////////////////////////////////////////////
- // Transient Documents Document Content Factory.
- //////////////////////////////////////////////////////////////////////
-
- writeInfo( pRegistryKey,
- DocumentContentFactory::getImplementationName_Static(),
- DocumentContentFactory::getSupportedServiceNames_Static() );
-}
-
-//=========================================================================
extern "C" void * SAL_CALL component_getFactory(
const sal_Char * pImplName, void * pServiceManager, void * /*pRegistryKey*/ )
{
diff --git a/ucb/source/ucp/tdoc/tdoc_stgelems.cxx b/ucb/source/ucp/tdoc/tdoc_stgelems.cxx
index 104d66fa4908..104d66fa4908 100644..100755
--- a/ucb/source/ucp/tdoc/tdoc_stgelems.cxx
+++ b/ucb/source/ucp/tdoc/tdoc_stgelems.cxx
diff --git a/ucb/source/ucp/tdoc/tdoc_stgelems.hxx b/ucb/source/ucp/tdoc/tdoc_stgelems.hxx
index 7b6194e3db70..7b6194e3db70 100644..100755
--- a/ucb/source/ucp/tdoc/tdoc_stgelems.hxx
+++ b/ucb/source/ucp/tdoc/tdoc_stgelems.hxx
diff --git a/ucb/source/ucp/tdoc/tdoc_storage.cxx b/ucb/source/ucp/tdoc/tdoc_storage.cxx
index 346dec1ce73b..346dec1ce73b 100644..100755
--- a/ucb/source/ucp/tdoc/tdoc_storage.cxx
+++ b/ucb/source/ucp/tdoc/tdoc_storage.cxx
diff --git a/ucb/source/ucp/tdoc/tdoc_storage.hxx b/ucb/source/ucp/tdoc/tdoc_storage.hxx
index 8ef84fd2e902..8ef84fd2e902 100644..100755
--- a/ucb/source/ucp/tdoc/tdoc_storage.hxx
+++ b/ucb/source/ucp/tdoc/tdoc_storage.hxx
diff --git a/ucb/source/ucp/tdoc/tdoc_uri.cxx b/ucb/source/ucp/tdoc/tdoc_uri.cxx
index 3205a3a590f4..3205a3a590f4 100644..100755
--- a/ucb/source/ucp/tdoc/tdoc_uri.cxx
+++ b/ucb/source/ucp/tdoc/tdoc_uri.cxx
diff --git a/ucb/source/ucp/tdoc/tdoc_uri.hxx b/ucb/source/ucp/tdoc/tdoc_uri.hxx
index 363fb2746127..363fb2746127 100644..100755
--- a/ucb/source/ucp/tdoc/tdoc_uri.hxx
+++ b/ucb/source/ucp/tdoc/tdoc_uri.hxx
diff --git a/ucb/source/ucp/tdoc/ucptdoc.xml b/ucb/source/ucp/tdoc/ucptdoc.xml
index b47249269470..b47249269470 100644..100755
--- a/ucb/source/ucp/tdoc/ucptdoc.xml
+++ b/ucb/source/ucp/tdoc/ucptdoc.xml
diff --git a/ucb/source/ucp/tdoc/ucptdoc1.component b/ucb/source/ucp/tdoc/ucptdoc1.component
new file mode 100755
index 000000000000..8ba1471bd933
--- /dev/null
+++ b/ucb/source/ucp/tdoc/ucptdoc1.component
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--**********************************************************************
+*
+* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+*
+* Copyright 2000, 2010 Oracle and/or its affiliates.
+*
+* OpenOffice.org - a multi-platform office productivity suite
+*
+* This file is part of OpenOffice.org.
+*
+* OpenOffice.org is free software: you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License version 3
+* only, as published by the Free Software Foundation.
+*
+* OpenOffice.org is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU Lesser General Public License version 3 for more details
+* (a copy is included in the LICENSE file that accompanied this code).
+*
+* You should have received a copy of the GNU Lesser General Public License
+* version 3 along with OpenOffice.org. If not, see
+* <http://www.openoffice.org/license.html>
+* for a copy of the LGPLv3 License.
+*
+**********************************************************************-->
+
+<component loader="com.sun.star.loader.SharedLibrary"
+ xmlns="http://openoffice.org/2010/uno-components">
+ <implementation name="com.sun.star.comp.ucb.TransientDocumentsContentProvider">
+ <service name="com.sun.star.ucb.TransientDocumentsContentProvider"/>
+ </implementation>
+ <implementation name="com.sun.star.comp.ucb.TransientDocumentsDocumentContentFactory">
+ <service name="com.sun.star.frame.TransientDocumentsDocumentContentFactory"/>
+ </implementation>
+</component>
diff --git a/ucb/source/ucp/webdav/ContentProperties.cxx b/ucb/source/ucp/webdav/ContentProperties.cxx
index c026a2150774..5332f2353366 100644..100755
--- a/ucb/source/ucp/webdav/ContentProperties.cxx
+++ b/ucb/source/ucp/webdav/ContentProperties.cxx
@@ -121,14 +121,14 @@ ContentProperties::ContentProperties( const DAVResource& rResource )
std::vector< DAVPropertyValue >::const_iterator it
= rResource.properties.begin();
- std::vector< DAVPropertyValue >::const_iterator end
+ std::vector< DAVPropertyValue >::const_iterator end
= rResource.properties.end();
- while ( it != end )
- {
+ while ( it != end )
+ {
addProperty( (*it) );
++it;
- }
+ }
if ( rResource.uri.getStr()[ rResource.uri.getLength() - 1 ]
== sal_Unicode( '/' ) )
@@ -159,6 +159,13 @@ ContentProperties::ContentProperties( const rtl::OUString & rTitle )
}
//=========================================================================
+ContentProperties::ContentProperties()
+: m_xProps( new PropertyValueMap ),
+ m_bTrailingSlash( sal_False )
+{
+}
+
+//=========================================================================
ContentProperties::ContentProperties( const ContentProperties & rOther )
: m_aEscapedTitle( rOther.m_aEscapedTitle ),
m_xProps( rOther.m_xProps.get()
@@ -255,7 +262,7 @@ void ContentProperties::UCBNamesToDAVNames(
{
if ( !bCreationDate )
{
- propertyNames.push_back( DAVProperties::CREATIONDATE );
+ propertyNames.push_back( DAVProperties::CREATIONDATE );
bCreationDate = sal_True;
}
}
@@ -266,7 +273,7 @@ void ContentProperties::UCBNamesToDAVNames(
{
if ( !bLastModified )
{
- propertyNames.push_back(
+ propertyNames.push_back(
DAVProperties::GETLASTMODIFIED );
bLastModified = sal_True;
}
@@ -278,7 +285,7 @@ void ContentProperties::UCBNamesToDAVNames(
{
if ( !bContentType )
{
- propertyNames.push_back(
+ propertyNames.push_back(
DAVProperties::GETCONTENTTYPE );
bContentType = sal_True;
}
@@ -290,7 +297,7 @@ void ContentProperties::UCBNamesToDAVNames(
{
if ( !bContentLength )
{
- propertyNames.push_back(
+ propertyNames.push_back(
DAVProperties::GETCONTENTLENGTH );
bContentLength = sal_True;
}
@@ -308,7 +315,7 @@ void ContentProperties::UCBNamesToDAVNames(
{
if ( !bResourceType )
{
- propertyNames.push_back( DAVProperties::RESOURCETYPE );
+ propertyNames.push_back( DAVProperties::RESOURCETYPE );
bResourceType = sal_True;
}
}
@@ -437,7 +444,7 @@ void ContentProperties::addProperties(
const std::vector< DAVPropertyValue > & rProps )
{
std::vector< DAVPropertyValue >::const_iterator it = rProps.begin();
- std::vector< DAVPropertyValue >::const_iterator end = rProps.end();
+ const std::vector< DAVPropertyValue >::const_iterator end = rProps.end();
while ( it != end )
{
@@ -573,4 +580,97 @@ void ContentProperties::addProperty( const rtl::OUString & rName,
(*m_xProps)[ rName ] = PropertyValue( rValue, bIsCaseSensitive );
}
+//=========================================================================
+//=========================================================================
+//
+// CachableContentProperties Implementation.
+//
+//=========================================================================
+//=========================================================================
+
+namespace
+{
+ bool isCachable( rtl::OUString const & rName,
+ bool isCaseSensitive )
+ {
+ static rtl::OUString aNonCachableProps [] =
+ {
+ DAVProperties::LOCKDISCOVERY,
+
+ DAVProperties::GETETAG,
+ rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "ETag" ) ),
+
+ rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "DateModified" ) ),
+ rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Last-Modified" ) ),
+ DAVProperties::GETLASTMODIFIED,
+
+ rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Size" ) ),
+ rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Content-Length" ) ),
+ DAVProperties::GETCONTENTLENGTH,
+
+ rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Date" ) )
+ };
+
+ for ( sal_uInt32 n = 0;
+ n < ( sizeof( aNonCachableProps )
+ / sizeof( aNonCachableProps[ 0 ] ) );
+ ++n )
+ {
+ if ( isCaseSensitive )
+ {
+ if ( rName.equals( aNonCachableProps[ n ] ) )
+ return false;
+ }
+ else
+ if ( rName.equalsIgnoreAsciiCase( aNonCachableProps[ n ] ) )
+ return false;
+ }
+ return true;
+ }
+
+} // namespace
+
+//=========================================================================
+CachableContentProperties::CachableContentProperties(
+ const ContentProperties & rProps )
+{
+ addProperties( rProps );
+}
+
+//=========================================================================
+void CachableContentProperties::addProperties(
+ const ContentProperties & rProps )
+{
+ const std::auto_ptr< PropertyValueMap > & props = rProps.getProperties();
+
+ PropertyValueMap::const_iterator it = props->begin();
+ const PropertyValueMap::const_iterator end = props->end();
+
+ while ( it != end )
+ {
+ if ( isCachable( (*it).first, (*it).second.isCaseSensitive() ) )
+ m_aProps.addProperty( (*it).first,
+ (*it).second.value(),
+ (*it).second.isCaseSensitive() );
+
+ ++it;
+ }
+}
+
+//=========================================================================
+void CachableContentProperties::addProperties(
+ const std::vector< DAVPropertyValue > & rProps )
+{
+ std::vector< DAVPropertyValue >::const_iterator it = rProps.begin();
+ const std::vector< DAVPropertyValue >::const_iterator end = rProps.end();
+
+ while ( it != end )
+ {
+ if ( isCachable( (*it).Name, (*it).IsCaseSensitive ) )
+ m_aProps.addProperty( (*it) );
+
+ ++it;
+ }
+}
+
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/ucb/source/ucp/webdav/ContentProperties.hxx b/ucb/source/ucp/webdav/ContentProperties.hxx
index 0f58db45db86..bf9af15f6b8f 100644..100755
--- a/ucb/source/ucp/webdav/ContentProperties.hxx
+++ b/ucb/source/ucp/webdav/ContentProperties.hxx
@@ -103,10 +103,12 @@ struct DAVResource;
class ContentProperties
{
public:
- ContentProperties( const DAVResource& rResource );
+ ContentProperties();
+
+ ContentProperties( const DAVResource& rResource );
// Mini props for transient contents.
- ContentProperties( const rtl::OUString & rTitle, sal_Bool bFolder );
+ ContentProperties( const rtl::OUString & rTitle, sal_Bool bFolder );
// Micro props for non-existing contents.
ContentProperties( const rtl::OUString & rTitle );
@@ -182,7 +184,7 @@ public:
{ return m_xProps; }
private:
- ::rtl::OUString m_aEscapedTitle; // escaped Title
+ ::rtl::OUString m_aEscapedTitle;
std::auto_ptr< PropertyValueMap > m_xProps;
bool m_bTrailingSlash;
@@ -193,7 +195,35 @@ private:
const PropertyValue * get( const rtl::OUString & rName ) const;
};
-}
+class CachableContentProperties
+{
+private:
+ ContentProperties m_aProps;
+
+ CachableContentProperties & operator=( const CachableContentProperties & ); // n.i.
+ CachableContentProperties( const CachableContentProperties & ); // n.i.
+
+public:
+ CachableContentProperties( const ContentProperties & rProps );
+
+ void addProperties( const ContentProperties & rProps );
+
+ void addProperties( const std::vector< DAVPropertyValue > & rProps );
+
+ bool containsAllNames(
+ const com::sun::star::uno::Sequence<
+ com::sun::star::beans::Property >& rProps,
+ std::vector< rtl::OUString > & rNamesNotContained ) const
+ { return m_aProps.containsAllNames( rProps, rNamesNotContained ); }
+
+ const com::sun::star::uno::Any &
+ getValue( const rtl::OUString & rName ) const
+ { return m_aProps.getValue( rName ); }
+
+ operator const ContentProperties & () const { return m_aProps; }
+};
+
+} // namespace webdav_ucp
#endif /* !_WEBDAV_UCP_CONTENTPROPERTIES_HXX */
diff --git a/ucb/source/ucp/webdav/DAVAuthListener.hxx b/ucb/source/ucp/webdav/DAVAuthListener.hxx
index 7e4a34b56564..7e4a34b56564 100644..100755
--- a/ucb/source/ucp/webdav/DAVAuthListener.hxx
+++ b/ucb/source/ucp/webdav/DAVAuthListener.hxx
diff --git a/ucb/source/ucp/webdav/DAVAuthListenerImpl.hxx b/ucb/source/ucp/webdav/DAVAuthListenerImpl.hxx
index db5f44655659..db5f44655659 100644..100755
--- a/ucb/source/ucp/webdav/DAVAuthListenerImpl.hxx
+++ b/ucb/source/ucp/webdav/DAVAuthListenerImpl.hxx
diff --git a/ucb/source/ucp/webdav/DAVException.hxx b/ucb/source/ucp/webdav/DAVException.hxx
index 376f7ff337ed..376f7ff337ed 100644..100755
--- a/ucb/source/ucp/webdav/DAVException.hxx
+++ b/ucb/source/ucp/webdav/DAVException.hxx
diff --git a/ucb/source/ucp/webdav/DAVProperties.cxx b/ucb/source/ucp/webdav/DAVProperties.cxx
index 0562ef0b91e1..0562ef0b91e1 100644..100755
--- a/ucb/source/ucp/webdav/DAVProperties.cxx
+++ b/ucb/source/ucp/webdav/DAVProperties.cxx
diff --git a/ucb/source/ucp/webdav/DAVProperties.hxx b/ucb/source/ucp/webdav/DAVProperties.hxx
index 2cf049ffa672..2cf049ffa672 100644..100755
--- a/ucb/source/ucp/webdav/DAVProperties.hxx
+++ b/ucb/source/ucp/webdav/DAVProperties.hxx
diff --git a/ucb/source/ucp/webdav/DAVRequestEnvironment.hxx b/ucb/source/ucp/webdav/DAVRequestEnvironment.hxx
index 6f3862d376fa..6f3862d376fa 100644..100755
--- a/ucb/source/ucp/webdav/DAVRequestEnvironment.hxx
+++ b/ucb/source/ucp/webdav/DAVRequestEnvironment.hxx
diff --git a/ucb/source/ucp/webdav/DAVResource.hxx b/ucb/source/ucp/webdav/DAVResource.hxx
index d12e08e5cca7..d12e08e5cca7 100644..100755
--- a/ucb/source/ucp/webdav/DAVResource.hxx
+++ b/ucb/source/ucp/webdav/DAVResource.hxx
diff --git a/ucb/source/ucp/webdav/DAVResourceAccess.cxx b/ucb/source/ucp/webdav/DAVResourceAccess.cxx
index 0024eb734033..0024eb734033 100644..100755
--- a/ucb/source/ucp/webdav/DAVResourceAccess.cxx
+++ b/ucb/source/ucp/webdav/DAVResourceAccess.cxx
diff --git a/ucb/source/ucp/webdav/DAVResourceAccess.hxx b/ucb/source/ucp/webdav/DAVResourceAccess.hxx
index 6b2692ad349e..6b2692ad349e 100644..100755
--- a/ucb/source/ucp/webdav/DAVResourceAccess.hxx
+++ b/ucb/source/ucp/webdav/DAVResourceAccess.hxx
diff --git a/ucb/source/ucp/webdav/DAVSession.hxx b/ucb/source/ucp/webdav/DAVSession.hxx
index 216cd3155b59..216cd3155b59 100644..100755
--- a/ucb/source/ucp/webdav/DAVSession.hxx
+++ b/ucb/source/ucp/webdav/DAVSession.hxx
diff --git a/ucb/source/ucp/webdav/DAVSessionFactory.cxx b/ucb/source/ucp/webdav/DAVSessionFactory.cxx
index 0e710f122af8..0e710f122af8 100644..100755
--- a/ucb/source/ucp/webdav/DAVSessionFactory.cxx
+++ b/ucb/source/ucp/webdav/DAVSessionFactory.cxx
diff --git a/ucb/source/ucp/webdav/DAVSessionFactory.hxx b/ucb/source/ucp/webdav/DAVSessionFactory.hxx
index 48f84b8cb841..48f84b8cb841 100644..100755
--- a/ucb/source/ucp/webdav/DAVSessionFactory.hxx
+++ b/ucb/source/ucp/webdav/DAVSessionFactory.hxx
diff --git a/ucb/source/ucp/webdav/DAVTypes.hxx b/ucb/source/ucp/webdav/DAVTypes.hxx
index fcdfc2cda72c..fcdfc2cda72c 100644..100755
--- a/ucb/source/ucp/webdav/DAVTypes.hxx
+++ b/ucb/source/ucp/webdav/DAVTypes.hxx
diff --git a/ucb/source/ucp/webdav/DateTimeHelper.cxx b/ucb/source/ucp/webdav/DateTimeHelper.cxx
index 2093699bd33e..2093699bd33e 100644..100755
--- a/ucb/source/ucp/webdav/DateTimeHelper.cxx
+++ b/ucb/source/ucp/webdav/DateTimeHelper.cxx
diff --git a/ucb/source/ucp/webdav/DateTimeHelper.hxx b/ucb/source/ucp/webdav/DateTimeHelper.hxx
index 6964bc620a18..6964bc620a18 100644..100755
--- a/ucb/source/ucp/webdav/DateTimeHelper.hxx
+++ b/ucb/source/ucp/webdav/DateTimeHelper.hxx
diff --git a/ucb/source/ucp/webdav/LinkSequence.cxx b/ucb/source/ucp/webdav/LinkSequence.cxx
index c638b3824a0e..f29a8b3a9070 100644..100755
--- a/ucb/source/ucp/webdav/LinkSequence.cxx
+++ b/ucb/source/ucp/webdav/LinkSequence.cxx
@@ -167,11 +167,7 @@ bool LinkSequence::createFromXML( const rtl::OString & rInData,
rInData.getStr() + nStart,
nEnd - nStart + TOKEN_LENGTH );
-#if NEON_VERSION >= 0x0250
success = !ne_xml_failed( parser );
-#else
- success = !!ne_xml_valid( parser );
-#endif
ne_xml_destroy( parser );
diff --git a/ucb/source/ucp/webdav/LinkSequence.hxx b/ucb/source/ucp/webdav/LinkSequence.hxx
index 109ea8de33dd..109ea8de33dd 100644..100755
--- a/ucb/source/ucp/webdav/LinkSequence.hxx
+++ b/ucb/source/ucp/webdav/LinkSequence.hxx
diff --git a/ucb/source/ucp/webdav/LockEntrySequence.cxx b/ucb/source/ucp/webdav/LockEntrySequence.cxx
index c88a921786e9..8819111ef8d2 100644..100755
--- a/ucb/source/ucp/webdav/LockEntrySequence.cxx
+++ b/ucb/source/ucp/webdav/LockEntrySequence.cxx
@@ -216,11 +216,7 @@ bool LockEntrySequence::createFromXML( const rtl::OString & rInData,
rInData.getStr() + nStart,
nEnd - nStart + TOKEN_LENGTH );
-#if NEON_VERSION >= 0x0250
success = !ne_xml_failed( parser );
-#else
- success = !!ne_xml_valid( parser );
-#endif
ne_xml_destroy( parser );
diff --git a/ucb/source/ucp/webdav/LockEntrySequence.hxx b/ucb/source/ucp/webdav/LockEntrySequence.hxx
index 7c91f4e6cf23..7c91f4e6cf23 100644..100755
--- a/ucb/source/ucp/webdav/LockEntrySequence.hxx
+++ b/ucb/source/ucp/webdav/LockEntrySequence.hxx
diff --git a/ucb/source/ucp/webdav/LockSequence.cxx b/ucb/source/ucp/webdav/LockSequence.cxx
index bf6fb8969212..896117152a1e 100644..100755
--- a/ucb/source/ucp/webdav/LockSequence.cxx
+++ b/ucb/source/ucp/webdav/LockSequence.cxx
@@ -36,6 +36,8 @@
using namespace webdav_ucp;
using namespace com::sun::star;
+#define BEEHIVE_BUGS_WORKAROUND
+
//////////////////////////////////////////////////////////////////////////
struct LockSequenceParseContext
@@ -129,7 +131,11 @@ extern "C" int LockSequence_startelement_callback(
extern "C" int LockSequence_chardata_callback(
void *userdata,
int state,
+#ifdef BEEHIVE_BUGS_WORKAROUND
+ const char *buf1,
+#else
const char *buf,
+#endif
size_t len )
{
LockSequenceParseContext * pCtx
@@ -137,6 +143,15 @@ extern "C" int LockSequence_chardata_callback(
if ( !pCtx->pLock )
pCtx->pLock = new ucb::Lock;
+#ifdef BEEHIVE_BUGS_WORKAROUND
+ // Beehive sends XML values containing trailing newlines.
+ if ( buf1[ len - 1 ] == 0x0a )
+ len--;
+
+ char * buf = new char[ len + 1 ]();
+ strncpy( buf, buf1, len );
+#endif
+
switch ( state )
{
case STATE_DEPTH:
@@ -208,7 +223,7 @@ extern "C" int LockSequence_chardata_callback(
pCtx->pLock->Timeout = sal_Int64( -1 );
pCtx->hasTimeout = true;
OSL_ENSURE( sal_False,
- "LockSequence_chardata_callback - Unknown timeout!" );
+ "LockSequence_chardata_callback - Unknown timeout!" );
}
break;
@@ -224,6 +239,11 @@ extern "C" int LockSequence_chardata_callback(
}
}
+
+#ifdef BEEHIVE_BUGS_WORKAROUND
+ delete [] buf;
+#endif
+
return 0; // zero to continue, non-zero to abort parsing
}
@@ -324,11 +344,7 @@ bool LockSequence::createFromXML( const rtl::OString & rInData,
rInData.getStr() + nStart,
nEnd - nStart + TOKEN_LENGTH );
-#if NEON_VERSION >= 0x0250
success = !ne_xml_failed( parser );
-#else
- success = !!ne_xml_valid( parser );
-#endif
ne_xml_destroy( parser );
diff --git a/ucb/source/ucp/webdav/LockSequence.hxx b/ucb/source/ucp/webdav/LockSequence.hxx
index 746d72176c73..746d72176c73 100644..100755
--- a/ucb/source/ucp/webdav/LockSequence.hxx
+++ b/ucb/source/ucp/webdav/LockSequence.hxx
diff --git a/ucb/source/ucp/webdav/NeonHeadRequest.cxx b/ucb/source/ucp/webdav/NeonHeadRequest.cxx
index 3e23604bafa3..d33ff2a517cf 100644..100755
--- a/ucb/source/ucp/webdav/NeonHeadRequest.cxx
+++ b/ucb/source/ucp/webdav/NeonHeadRequest.cxx
@@ -38,16 +38,15 @@ using namespace com::sun::star;
namespace {
-#if NEON_VERSION >= 0x0250
-void process_headers(ne_request *req,
- DAVResource &rResource,
- const std::vector< ::rtl::OUString > &rHeaderNames)
+void process_headers( ne_request * req,
+ DAVResource & rResource,
+ const std::vector< ::rtl::OUString > & rHeaderNames )
{
- void *cursor = NULL;
- const char *name, *value;
+ void * cursor = NULL;
+ const char * name, *value;
- while ((cursor = ne_response_header_iterate(req, cursor,
- &name, &value)) != NULL) {
+ while ( ( cursor = ne_response_header_iterate( req, cursor,
+ &name, &value ) ) != NULL ) {
rtl::OUString aHeaderName( rtl::OUString::createFromAscii( name ) );
rtl::OUString aHeaderValue( rtl::OUString::createFromAscii( value ) );
@@ -87,69 +86,6 @@ void process_headers(ne_request *req,
}
}
}
-#else
-struct NeonHeadRequestContext
-{
- DAVResource * pResource;
- const std::vector< ::rtl::OUString > * pHeaderNames;
-
- NeonHeadRequestContext( DAVResource * p,
- const std::vector< ::rtl::OUString > * pHeaders )
- : pResource( p ), pHeaderNames( pHeaders ) {}
-};
-
-extern "C" void NHR_ResponseHeaderCatcher( void * userdata,
- const char * value )
-{
- rtl::OUString aHeader( rtl::OUString::createFromAscii( value ) );
- sal_Int32 nPos = aHeader.indexOf( ':' );
-
- if ( nPos != -1 )
- {
- rtl::OUString aHeaderName( aHeader.copy( 0, nPos ) );
-
- NeonHeadRequestContext * pCtx
- = static_cast< NeonHeadRequestContext * >( userdata );
-
- // Note: Empty vector means that all headers are requested.
- bool bIncludeIt = ( pCtx->pHeaderNames->size() == 0 );
-
- if ( !bIncludeIt )
- {
- // Check whether this header was requested.
- std::vector< ::rtl::OUString >::const_iterator it(
- pCtx->pHeaderNames->begin() );
- const std::vector< ::rtl::OUString >::const_iterator end(
- pCtx->pHeaderNames->end() );
-
- while ( it != end )
- {
- if ( (*it) == aHeaderName )
- break;
-
- ++it;
- }
-
- if ( it != end )
- bIncludeIt = true;
- }
-
- if ( bIncludeIt )
- {
- // Create & set the PropertyValue
- DAVPropertyValue thePropertyValue;
- thePropertyValue.Name = aHeaderName;
- thePropertyValue.IsCaseSensitive = false;
-
- if ( nPos < aHeader.getLength() )
- thePropertyValue.Value <<= aHeader.copy( nPos + 1 ).trim();
-
- // Add the newly created PropertyValue
- pCtx->pResource->properties.push_back( thePropertyValue );
- }
- }
-}
-#endif
} // namespace
@@ -159,7 +95,7 @@ extern "C" void NHR_ResponseHeaderCatcher( void * userdata,
extern osl::Mutex aGlobalNeonMutex;
-NeonHeadRequest::NeonHeadRequest( HttpSession* inSession,
+NeonHeadRequest::NeonHeadRequest( HttpSession * inSession,
const rtl::OUString & inPath,
const std::vector< ::rtl::OUString > &
inHeaderNames,
@@ -177,19 +113,12 @@ NeonHeadRequest::NeonHeadRequest( HttpSession* inSession,
inPath,
RTL_TEXTENCODING_UTF8 ) );
-#if NEON_VERSION < 0x0250
- NeonHeadRequestContext aCtx( &ioResource, &inHeaderNames );
- ne_add_response_header_catcher( req, NHR_ResponseHeaderCatcher, &aCtx );
-#endif
-
{
osl::Guard< osl::Mutex > theGlobalGuard( aGlobalNeonMutex );
nError = ne_request_dispatch( req );
}
-#if NEON_VERSION >= 0x0250
- process_headers(req, ioResource, inHeaderNames);
-#endif
+ process_headers( req, ioResource, inHeaderNames );
if ( nError == NE_OK && ne_get_status( req )->klass != 2 )
nError = NE_ERROR;
diff --git a/ucb/source/ucp/webdav/NeonHeadRequest.hxx b/ucb/source/ucp/webdav/NeonHeadRequest.hxx
index b0a9fea47c53..b0a9fea47c53 100644..100755
--- a/ucb/source/ucp/webdav/NeonHeadRequest.hxx
+++ b/ucb/source/ucp/webdav/NeonHeadRequest.hxx
diff --git a/ucb/source/ucp/webdav/NeonInputStream.cxx b/ucb/source/ucp/webdav/NeonInputStream.cxx
index 0e36b8395534..0e36b8395534 100644..100755
--- a/ucb/source/ucp/webdav/NeonInputStream.cxx
+++ b/ucb/source/ucp/webdav/NeonInputStream.cxx
diff --git a/ucb/source/ucp/webdav/NeonInputStream.hxx b/ucb/source/ucp/webdav/NeonInputStream.hxx
index 597b1122414e..597b1122414e 100644..100755
--- a/ucb/source/ucp/webdav/NeonInputStream.hxx
+++ b/ucb/source/ucp/webdav/NeonInputStream.hxx
diff --git a/ucb/source/ucp/webdav/NeonLockStore.cxx b/ucb/source/ucp/webdav/NeonLockStore.cxx
index a57a4d124c95..a57a4d124c95 100644..100755
--- a/ucb/source/ucp/webdav/NeonLockStore.cxx
+++ b/ucb/source/ucp/webdav/NeonLockStore.cxx
diff --git a/ucb/source/ucp/webdav/NeonLockStore.hxx b/ucb/source/ucp/webdav/NeonLockStore.hxx
index 7d253e773328..7d253e773328 100644..100755
--- a/ucb/source/ucp/webdav/NeonLockStore.hxx
+++ b/ucb/source/ucp/webdav/NeonLockStore.hxx
diff --git a/ucb/source/ucp/webdav/NeonPropFindRequest.cxx b/ucb/source/ucp/webdav/NeonPropFindRequest.cxx
index 64b9963ea89c..7c1e2b07a3c1 100644..100755
--- a/ucb/source/ucp/webdav/NeonPropFindRequest.cxx
+++ b/ucb/source/ucp/webdav/NeonPropFindRequest.cxx
@@ -195,22 +195,13 @@ extern "C" int NPFR_propfind_iter( void* userdata,
// -------------------------------------------------------------------
extern "C" void NPFR_propfind_results( void* userdata,
-#if NEON_VERSION >= 0x0260
const ne_uri* uri,
-#else
- const char* href,
-#endif
const NeonPropFindResultSet* set )
{
// @@@ href is not the uri! DAVResource ctor wants uri!
-#if NEON_VERSION >= 0x0260
DAVResource theResource(
OStringToOUString( uri->path, RTL_TEXTENCODING_UTF8 ) );
-#else
- DAVResource theResource(
- OStringToOUString( href, RTL_TEXTENCODING_UTF8 ) );
-#endif
ne_propset_iterate( set, NPFR_propfind_iter, &theResource );
@@ -237,22 +228,13 @@ extern "C" int NPFR_propnames_iter( void* userdata,
// -------------------------------------------------------------------
extern "C" void NPFR_propnames_results( void* userdata,
-#if NEON_VERSION >= 0x0260
const ne_uri* uri,
-#else
- const char* href,
-#endif
const NeonPropFindResultSet* results )
{
// @@@ href is not the uri! DAVResourceInfo ctor wants uri!
// Create entry for the resource.
-#if NEON_VERSION >= 0x0260
DAVResourceInfo theResource(
OStringToOUString( uri->path, RTL_TEXTENCODING_UTF8 ) );
-#else
- DAVResourceInfo theResource(
- OStringToOUString( href, RTL_TEXTENCODING_UTF8 ) );
-#endif
// Fill entry.
ne_propset_iterate( results, NPFR_propnames_iter, &theResource );
diff --git a/ucb/source/ucp/webdav/NeonPropFindRequest.hxx b/ucb/source/ucp/webdav/NeonPropFindRequest.hxx
index 9febb56faf0c..9febb56faf0c 100644..100755
--- a/ucb/source/ucp/webdav/NeonPropFindRequest.hxx
+++ b/ucb/source/ucp/webdav/NeonPropFindRequest.hxx
diff --git a/ucb/source/ucp/webdav/NeonSession.cxx b/ucb/source/ucp/webdav/NeonSession.cxx
index 9d3232b6e91c..7df353ea850c 100644..100755
--- a/ucb/source/ucp/webdav/NeonSession.cxx
+++ b/ucb/source/ucp/webdav/NeonSession.cxx
@@ -185,11 +185,7 @@ struct NeonRequestContext
// A simple Neon response_block_reader for use with an XInputStream
// -------------------------------------------------------------------
-#if NEON_VERSION >= 0x0250
extern "C" int NeonSession_ResponseBlockReader(void * inUserData,
-#else
-extern "C" void NeonSession_ResponseBlockReader(void * inUserData,
-#endif
const char * inBuf,
size_t inLen )
{
@@ -205,9 +201,7 @@ extern "C" void NeonSession_ResponseBlockReader(void * inUserData,
if ( xInputStream.is() )
xInputStream->AddToStream( inBuf, inLen );
}
-#if NEON_VERSION >= 0x0250
return 0;
-#endif
}
// -------------------------------------------------------------------
@@ -215,11 +209,7 @@ extern "C" void NeonSession_ResponseBlockReader(void * inUserData,
// A simple Neon response_block_reader for use with an XOutputStream
// -------------------------------------------------------------------
-#if NEON_VERSION >= 0x0250
extern "C" int NeonSession_ResponseBlockWriter( void * inUserData,
-#else
-extern "C" void NeonSession_ResponseBlockWriter( void * inUserData,
-#endif
const char * inBuf,
size_t inLen )
{
@@ -237,9 +227,7 @@ extern "C" void NeonSession_ResponseBlockWriter( void * inUserData,
xOutputStream->writeBytes( aSeq );
}
}
-#if NEON_VERSION >= 0x0250
return 0;
-#endif
}
// -------------------------------------------------------------------
@@ -1923,11 +1911,6 @@ int NeonSession::GET( ne_session * sess,
ne_request * req = ne_request_create( sess, "GET", uri );
int ret;
-#if NEON_VERSION < 0x0250
- if ( getheaders )
- ne_add_response_header_catcher(
- req, runResponseHeaderHandler, userdata );
-#endif
ne_decompress * dc
= ne_decompress_reader( req, ne_accept_2xx, reader, userdata );
@@ -1936,7 +1919,6 @@ int NeonSession::GET( ne_session * sess,
ret = ne_request_dispatch( req );
}
-#if NEON_VERSION >= 0x0250
if ( getheaders )
{
void *cursor = NULL;
@@ -1950,7 +1932,7 @@ int NeonSession::GET( ne_session * sess,
runResponseHeaderHandler(userdata, buffer);
}
}
-#endif
+
if ( ret == NE_OK && ne_get_status( req )->klass != 2 )
ret = NE_ERROR;
diff --git a/ucb/source/ucp/webdav/NeonSession.hxx b/ucb/source/ucp/webdav/NeonSession.hxx
index 801f8e8440a2..801f8e8440a2 100644..100755
--- a/ucb/source/ucp/webdav/NeonSession.hxx
+++ b/ucb/source/ucp/webdav/NeonSession.hxx
diff --git a/ucb/source/ucp/webdav/NeonTypes.hxx b/ucb/source/ucp/webdav/NeonTypes.hxx
index d1f8ffaf32f3..d1f8ffaf32f3 100644..100755
--- a/ucb/source/ucp/webdav/NeonTypes.hxx
+++ b/ucb/source/ucp/webdav/NeonTypes.hxx
diff --git a/ucb/source/ucp/webdav/NeonUri.cxx b/ucb/source/ucp/webdav/NeonUri.cxx
index a1ebbb0f94d4..fd88795bef74 100644..100755
--- a/ucb/source/ucp/webdav/NeonUri.cxx
+++ b/ucb/source/ucp/webdav/NeonUri.cxx
@@ -60,36 +60,24 @@ using namespace webdav_ucp;
namespace {
const ne_uri g_sUriDefaultsHTTP = { "http",
-#if NEON_VERSION >= 0x0260
NULL,
-#endif
NULL,
DEFAULT_HTTP_PORT,
-#if NEON_VERSION >= 0x0260
NULL,
-#endif
NULL,
NULL };
const ne_uri g_sUriDefaultsHTTPS = { "https",
-#if NEON_VERSION >= 0x0260
NULL,
-#endif
NULL,
DEFAULT_HTTPS_PORT,
-#if NEON_VERSION >= 0x0260
NULL,
-#endif
NULL,
NULL };
const ne_uri g_sUriDefaultsFTP = { "ftp",
-#if NEON_VERSION >= 0x0260
NULL,
-#endif
NULL,
DEFAULT_FTP_PORT,
-#if NEON_VERSION >= 0x0260
NULL,
-#endif
NULL,
NULL };
} // namespace
@@ -175,11 +163,7 @@ void NeonUri::init( const rtl::OString & rUri, const ne_uri * pUri )
pUri->scheme ? pUri->scheme : pUriDefs->scheme,
RTL_TEXTENCODING_UTF8 );
mUserInfo = rtl::OStringToOUString(
-#if NEON_VERSION >= 0x0260
pUri->userinfo ? pUri->userinfo : pUriDefs->userinfo,
-#else
- pUri->authinfo ? pUri->authinfo : pUriDefs->authinfo,
-#endif
RTL_TEXTENCODING_UTF8 );
mHostName = rtl::OStringToOUString(
pUri->host ? pUri->host : pUriDefs->host,
@@ -189,7 +173,6 @@ void NeonUri::init( const rtl::OString & rUri, const ne_uri * pUri )
pUri->path ? pUri->path : pUriDefs->path,
RTL_TEXTENCODING_UTF8 );
-#if NEON_VERSION >= 0x0260
if ( pUri->query )
{
mPath += rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("?"));
@@ -203,7 +186,6 @@ void NeonUri::init( const rtl::OString & rUri, const ne_uri * pUri )
mPath += rtl::OStringToOUString(
pUri->fragment, RTL_TEXTENCODING_UTF8 );
}
-#endif
}
// -------------------------------------------------------------------
diff --git a/ucb/source/ucp/webdav/NeonUri.hxx b/ucb/source/ucp/webdav/NeonUri.hxx
index 06d59317affb..06d59317affb 100644..100755
--- a/ucb/source/ucp/webdav/NeonUri.hxx
+++ b/ucb/source/ucp/webdav/NeonUri.hxx
diff --git a/ucb/source/ucp/webdav/PropertyMap.hxx b/ucb/source/ucp/webdav/PropertyMap.hxx
index ca1cb03d8968..ca1cb03d8968 100644..100755
--- a/ucb/source/ucp/webdav/PropertyMap.hxx
+++ b/ucb/source/ucp/webdav/PropertyMap.hxx
diff --git a/ucb/source/ucp/webdav/UCBDeadPropertyValue.cxx b/ucb/source/ucp/webdav/UCBDeadPropertyValue.cxx
index e7b5411487c5..ef76f5784c6f 100644..100755
--- a/ucb/source/ucp/webdav/UCBDeadPropertyValue.cxx
+++ b/ucb/source/ucp/webdav/UCBDeadPropertyValue.cxx
@@ -362,11 +362,7 @@ bool UCBDeadPropertyValue::createFromXML( const rtl::OString & rInData,
ne_xml_parse( parser, rInData.getStr(), rInData.getLength() );
-#if NEON_VERSION >= 0x0250
success = !ne_xml_failed( parser );
-#else
- success = !!ne_xml_valid( parser );
-#endif
ne_xml_destroy( parser );
diff --git a/ucb/source/ucp/webdav/UCBDeadPropertyValue.hxx b/ucb/source/ucp/webdav/UCBDeadPropertyValue.hxx
index c56a3f93b270..c56a3f93b270 100644..100755
--- a/ucb/source/ucp/webdav/UCBDeadPropertyValue.hxx
+++ b/ucb/source/ucp/webdav/UCBDeadPropertyValue.hxx
diff --git a/ucb/source/ucp/webdav/makefile.mk b/ucb/source/ucp/webdav/makefile.mk
index 73ee298697e8..162d58266406 100644..100755
--- a/ucb/source/ucp/webdav/makefile.mk
+++ b/ucb/source/ucp/webdav/makefile.mk
@@ -158,3 +158,11 @@ DEF1NAME=$(SHL1TARGET)
# --- Targets ----------------------------------------------------------
.INCLUDE: target.mk
+
+ALLTAR : $(MISC)/ucpdav1.component
+
+$(MISC)/ucpdav1.component .ERRREMOVE : $(SOLARENV)/bin/createcomponent.xslt \
+ ucpdav1.component
+ $(XSLTPROC) --nonet --stringparam uri \
+ '$(COMPONENTPREFIX_BASIS_NATIVE)$(SHL1TARGETN:f)' -o $@ \
+ $(SOLARENV)/bin/createcomponent.xslt ucpdav1.component
diff --git a/ucb/source/ucp/webdav/ucpdav.xml b/ucb/source/ucp/webdav/ucpdav.xml
index ccb993b3138c..ccb993b3138c 100644..100755
--- a/ucb/source/ucp/webdav/ucpdav.xml
+++ b/ucb/source/ucp/webdav/ucpdav.xml
diff --git a/ucb/source/ucp/webdav/ucpdav1.component b/ucb/source/ucp/webdav/ucpdav1.component
new file mode 100755
index 000000000000..4e18b566e1a4
--- /dev/null
+++ b/ucb/source/ucp/webdav/ucpdav1.component
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--**********************************************************************
+*
+* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+*
+* Copyright 2000, 2010 Oracle and/or its affiliates.
+*
+* OpenOffice.org - a multi-platform office productivity suite
+*
+* This file is part of OpenOffice.org.
+*
+* OpenOffice.org is free software: you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License version 3
+* only, as published by the Free Software Foundation.
+*
+* OpenOffice.org is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU Lesser General Public License version 3 for more details
+* (a copy is included in the LICENSE file that accompanied this code).
+*
+* You should have received a copy of the GNU Lesser General Public License
+* version 3 along with OpenOffice.org. If not, see
+* <http://www.openoffice.org/license.html>
+* for a copy of the LGPLv3 License.
+*
+**********************************************************************-->
+
+<component loader="com.sun.star.loader.SharedLibrary"
+ xmlns="http://openoffice.org/2010/uno-components">
+ <implementation name="com.sun.star.comp.WebDAVContentProvider">
+ <service name="com.sun.star.ucb.WebDAVContentProvider"/>
+ </implementation>
+</component>
diff --git a/ucb/source/ucp/webdav/webdavcontent.cxx b/ucb/source/ucp/webdav/webdavcontent.cxx
index 81e96793e6e9..2f5adff8e2d7 100644..100755
--- a/ucb/source/ucp/webdav/webdavcontent.cxx
+++ b/ucb/source/ucp/webdav/webdavcontent.cxx
@@ -1163,7 +1163,7 @@ uno::Reference< sdbc::XRow > Content::getPropertyValues(
std::auto_ptr< ContentProperties > xProps;
std::auto_ptr< ContentProperties > xCachedProps;
std::auto_ptr< DAVResourceAccess > xResAccess;
- rtl::OUString aEscapedTitle;
+ rtl::OUString aUnescapedTitle;
bool bHasAll = false;
uno::Reference< lang::XMultiServiceFactory > xSMgr;
uno::Reference< ucb::XContentIdentifier > xIdentifier;
@@ -1172,7 +1172,7 @@ uno::Reference< sdbc::XRow > Content::getPropertyValues(
{
osl::Guard< osl::Mutex > aGuard( m_aMutex );
- aEscapedTitle = NeonUri::unescape( m_aEscapedTitle );
+ aUnescapedTitle = NeonUri::unescape( m_aEscapedTitle );
xSMgr.set( m_xSMgr );
xIdentifier.set( m_xIdentifier );
xProvider.set( m_xProvider.get() );
@@ -1345,7 +1345,7 @@ uno::Reference< sdbc::XRow > Content::getPropertyValues(
if ( m_eResourceType == NON_DAV )
xProps->addProperties( aMissingProps,
ContentProperties(
- aEscapedTitle,
+ aUnescapedTitle,
false ) );
}
catch ( DAVException const & e )
@@ -1366,32 +1366,33 @@ uno::Reference< sdbc::XRow > Content::getPropertyValues(
// might trigger HTTP redirect.
// Therefore, title must be updated here.
NeonUri aUri( xResAccess->getURL() );
- aEscapedTitle = aUri.GetPathBaseName();
+ aUnescapedTitle = aUri.GetPathBaseNameUnescaped();
- if ( UNKNOWN == rType )
+ if ( rType == UNKNOWN )
{
- xProps.reset( new ContentProperties( aEscapedTitle ) );
+ xProps.reset( new ContentProperties( aUnescapedTitle ) );
}
// For DAV resources we only know the Title, for non-DAV
// resources we additionally know that it is a document.
- if ( DAV == rType )
+
+ if ( rType == DAV )
{
//xProps.reset(
- // new ContentProperties( aEscapedTitle ) );
+ // new ContentProperties( aUnescapedTitle ) );
xProps->addProperty(
rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Title" ) ),
- uno::makeAny( aEscapedTitle ),
+ uno::makeAny( aUnescapedTitle ),
true );
}
else
{
if ( !xProps.get() )
- xProps.reset( new ContentProperties( aEscapedTitle, false ) );
+ xProps.reset( new ContentProperties( aUnescapedTitle, false ) );
else
xProps->addProperty(
rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Title" ) ),
- uno::makeAny( aEscapedTitle ),
+ uno::makeAny( aUnescapedTitle ),
true );
xProps->addProperty(
@@ -1409,7 +1410,7 @@ uno::Reference< sdbc::XRow > Content::getPropertyValues(
// No server access for just created (not yet committed) objects.
// Only a minimal set of properties supported at this stage.
if (m_bTransient)
- xProps.reset( new ContentProperties( aEscapedTitle,
+ xProps.reset( new ContentProperties( aUnescapedTitle,
m_bCollection ) );
}
@@ -1455,12 +1456,12 @@ uno::Reference< sdbc::XRow > Content::getPropertyValues(
osl::Guard< osl::Mutex > aGuard( m_aMutex );
if ( !m_xCachedProps.get() )
- m_xCachedProps.reset( new ContentProperties( *xProps.get() ) );
+ m_xCachedProps.reset( new CachableContentProperties( *xProps.get() ) );
else
m_xCachedProps->addProperties( *xProps.get() );
m_xResAccess.reset( new DAVResourceAccess( *xResAccess.get() ) );
- m_aEscapedTitle = aEscapedTitle;
+ m_aEscapedTitle = NeonUri::escapeSegment( aUnescapedTitle );
}
return xResultRow;
@@ -1991,7 +1992,7 @@ uno::Any Content::open(
// cache headers.
if ( !m_xCachedProps.get())
m_xCachedProps.reset(
- new ContentProperties( aResource ) );
+ new CachableContentProperties( aResource ) );
else
m_xCachedProps->addProperties( aResource );
@@ -2037,7 +2038,7 @@ uno::Any Content::open(
// cache headers.
if ( !m_xCachedProps.get())
m_xCachedProps.reset(
- new ContentProperties( aResource ) );
+ new CachableContentProperties( aResource ) );
else
m_xCachedProps->addProperties(
aResource.properties );
@@ -2927,6 +2928,20 @@ uno::Any Content::MapDAVException( const DAVException & e, sal_Bool bWrite )
// Map DAVException...
uno::Any aException;
+ rtl::OUString aURL;
+ if ( m_bTransient )
+ {
+ aURL = getParentURL();
+ if ( aURL.lastIndexOf( '/' ) != ( aURL.getLength() - 1 ) )
+ aURL += rtl::OUString::createFromAscii( "/" );
+
+ aURL += m_aEscapedTitle;
+ }
+ else
+ {
+ aURL = m_xIdentifier->getContentIdentifier();
+ }
+
switch ( e.getStatus() )
{
case SC_NOT_FOUND:
@@ -2934,7 +2949,7 @@ uno::Any Content::MapDAVException( const DAVException & e, sal_Bool bWrite )
uno::Sequence< uno::Any > aArgs( 1 );
aArgs[ 0 ] <<= beans::PropertyValue(
rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("Uri")), -1,
- uno::makeAny(m_xIdentifier->getContentIdentifier()),
+ uno::makeAny(aURL),
beans::PropertyState_DIRECT_VALUE);
aException <<=
@@ -3024,14 +3039,14 @@ uno::Any Content::MapDAVException( const DAVException & e, sal_Bool bWrite )
rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("Locked!")),
static_cast< cppu::OWeakObject * >( this ),
task::InteractionClassification_ERROR,
- m_xIdentifier->getContentIdentifier(),
- sal_True );
+ aURL,
+ sal_False ); // not SelfOwned
#else
{
uno::Sequence< uno::Any > aArgs( 1 );
aArgs[ 0 ] <<= beans::PropertyValue(
rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("Uri")), -1,
- uno::makeAny(m_xIdentifier->getContentIdentifier()),
+ uno::makeAny(aURL),
beans::PropertyState_DIRECT_VALUE);
aException <<=
@@ -3051,8 +3066,8 @@ uno::Any Content::MapDAVException( const DAVException & e, sal_Bool bWrite )
rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("Locked (self)!")),
static_cast< cppu::OWeakObject * >( this ),
task::InteractionClassification_ERROR,
- m_xIdentifier->getContentIdentifier(),
- sal_True );
+ aURL,
+ sal_True ); // SelfOwned
break;
case DAVException::DAV_NOT_LOCKED:
@@ -3061,7 +3076,7 @@ uno::Any Content::MapDAVException( const DAVException & e, sal_Bool bWrite )
rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("Not locked!")),
static_cast< cppu::OWeakObject * >( this ),
task::InteractionClassification_ERROR,
- m_xIdentifier->getContentIdentifier() );
+ aURL );
break;
case DAVException::DAV_LOCK_EXPIRED:
@@ -3070,7 +3085,7 @@ uno::Any Content::MapDAVException( const DAVException & e, sal_Bool bWrite )
rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("Lock expired!")),
static_cast< cppu::OWeakObject * >( this ),
task::InteractionClassification_ERROR,
- m_xIdentifier->getContentIdentifier() );
+ aURL );
break;
default:
@@ -3194,7 +3209,7 @@ const Content::ResourceType & Content::getResourceType(
if ( resources.size() == 1 )
{
m_xCachedProps.reset(
- new ContentProperties( resources[ 0 ] ) );
+ new CachableContentProperties( resources[ 0 ] ) );
m_xCachedProps->containsAllNames(
aProperties, m_aFailedPropNames );
}
diff --git a/ucb/source/ucp/webdav/webdavcontent.hxx b/ucb/source/ucp/webdav/webdavcontent.hxx
index e58bdc376e03..051e6382e73f 100644..100755
--- a/ucb/source/ucp/webdav/webdavcontent.hxx
+++ b/ucb/source/ucp/webdav/webdavcontent.hxx
@@ -69,6 +69,7 @@ namespace webdav_ucp
class ContentProvider;
class ContentProperties;
+class CachableContentProperties;
class Content : public ::ucbhelper::ContentImplHelper,
public com::sun::star::ucb::XContentCreator
@@ -82,7 +83,8 @@ class Content : public ::ucbhelper::ContentImplHelper,
};
std::auto_ptr< DAVResourceAccess > m_xResAccess;
- std::auto_ptr< ContentProperties > m_xCachedProps; // locally cached props
+ std::auto_ptr< CachableContentProperties >
+ m_xCachedProps; // locally cached props
rtl::OUString m_aEscapedTitle;
ResourceType m_eResourceType;
ContentProvider* m_pProvider; // No need for a ref, base class holds object
diff --git a/ucb/source/ucp/webdav/webdavcontentcaps.cxx b/ucb/source/ucp/webdav/webdavcontentcaps.cxx
index ebcce7401676..ebcce7401676 100644..100755
--- a/ucb/source/ucp/webdav/webdavcontentcaps.cxx
+++ b/ucb/source/ucp/webdav/webdavcontentcaps.cxx
diff --git a/ucb/source/ucp/webdav/webdavdatasupplier.cxx b/ucb/source/ucp/webdav/webdavdatasupplier.cxx
index 638c0c948bca..638c0c948bca 100644..100755
--- a/ucb/source/ucp/webdav/webdavdatasupplier.cxx
+++ b/ucb/source/ucp/webdav/webdavdatasupplier.cxx
diff --git a/ucb/source/ucp/webdav/webdavdatasupplier.hxx b/ucb/source/ucp/webdav/webdavdatasupplier.hxx
index d3718568efcc..d3718568efcc 100644..100755
--- a/ucb/source/ucp/webdav/webdavdatasupplier.hxx
+++ b/ucb/source/ucp/webdav/webdavdatasupplier.hxx
diff --git a/ucb/source/ucp/webdav/webdavprovider.cxx b/ucb/source/ucp/webdav/webdavprovider.cxx
index 13a5b6145612..13a5b6145612 100644..100755
--- a/ucb/source/ucp/webdav/webdavprovider.cxx
+++ b/ucb/source/ucp/webdav/webdavprovider.cxx
diff --git a/ucb/source/ucp/webdav/webdavprovider.hxx b/ucb/source/ucp/webdav/webdavprovider.hxx
index 6001a1c6b655..6001a1c6b655 100644..100755
--- a/ucb/source/ucp/webdav/webdavprovider.hxx
+++ b/ucb/source/ucp/webdav/webdavprovider.hxx
diff --git a/ucb/source/ucp/webdav/webdavresultset.cxx b/ucb/source/ucp/webdav/webdavresultset.cxx
index 34fad14fda84..34fad14fda84 100644..100755
--- a/ucb/source/ucp/webdav/webdavresultset.cxx
+++ b/ucb/source/ucp/webdav/webdavresultset.cxx
diff --git a/ucb/source/ucp/webdav/webdavresultset.hxx b/ucb/source/ucp/webdav/webdavresultset.hxx
index 06749bcd9867..06749bcd9867 100644..100755
--- a/ucb/source/ucp/webdav/webdavresultset.hxx
+++ b/ucb/source/ucp/webdav/webdavresultset.hxx
diff --git a/ucb/source/ucp/webdav/webdavservices.cxx b/ucb/source/ucp/webdav/webdavservices.cxx
index 22b129d2e766..54cee2899fca 100644..100755
--- a/ucb/source/ucp/webdav/webdavservices.cxx
+++ b/ucb/source/ucp/webdav/webdavservices.cxx
@@ -36,45 +36,6 @@
using namespace com::sun::star;
//=========================================================================
-static sal_Bool writeInfo( void * pRegistryKey,
- const rtl::OUString & rImplementationName,
- uno::Sequence< rtl::OUString > const & rServiceNames )
-{
- rtl::OUString aKeyName( RTL_CONSTASCII_USTRINGPARAM("/") );
- aKeyName += rImplementationName;
- aKeyName += rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("/UNO/SERVICES"));
-
- uno::Reference< registry::XRegistryKey > xKey;
- try
- {
- xKey = static_cast< registry::XRegistryKey * >(
- pRegistryKey )->createKey( aKeyName );
- }
- catch ( registry::InvalidRegistryException const & )
- {
- }
-
- if ( !xKey.is() )
- return sal_False;
-
- sal_Bool bSuccess = sal_True;
-
- for ( sal_Int32 n = 0; n < rServiceNames.getLength(); ++n )
- {
- try
- {
- xKey->createKey( rServiceNames[ n ] );
- }
- catch ( registry::InvalidRegistryException const & )
- {
- bSuccess = sal_False;
- break;
- }
- }
- return bSuccess;
-}
-
-//=========================================================================
extern "C" void SAL_CALL component_getImplementationEnvironment(
const sal_Char ** ppEnvTypeName, uno_Environment ** /*ppEnv*/ )
{
@@ -82,21 +43,6 @@ extern "C" void SAL_CALL component_getImplementationEnvironment(
}
//=========================================================================
-extern "C" sal_Bool SAL_CALL component_writeInfo(
- void * /*pServiceManager*/, void * pRegistryKey )
-{
- return pRegistryKey &&
-
- //////////////////////////////////////////////////////////////////////
- // WebDAV Content Provider.
- //////////////////////////////////////////////////////////////////////
-
- writeInfo( pRegistryKey,
- ::webdav_ucp::ContentProvider::getImplementationName_Static(),
- ::webdav_ucp::ContentProvider::getSupportedServiceNames_Static() );
-}
-
-//=========================================================================
extern "C" void * SAL_CALL component_getFactory(
const sal_Char * pImplName, void * pServiceManager, void * /*pRegistryKey*/ )
{
diff --git a/ucb/test/com/sun/star/comp/ucb/GlobalTransfer_Test.java b/ucb/test/com/sun/star/comp/ucb/GlobalTransfer_Test.java
index 72670bc314dd..72670bc314dd 100644..100755
--- a/ucb/test/com/sun/star/comp/ucb/GlobalTransfer_Test.java
+++ b/ucb/test/com/sun/star/comp/ucb/GlobalTransfer_Test.java
diff --git a/ucb/test/com/sun/star/comp/ucb/makefile.mk b/ucb/test/com/sun/star/comp/ucb/makefile.mk
index bab29edc8fbc..bab29edc8fbc 100644..100755
--- a/ucb/test/com/sun/star/comp/ucb/makefile.mk
+++ b/ucb/test/com/sun/star/comp/ucb/makefile.mk
diff --git a/ucb/workben/cachemap/cachemapobject1.cxx b/ucb/workben/cachemap/cachemapobject1.cxx
index 7b09bc75da90..7b09bc75da90 100644..100755
--- a/ucb/workben/cachemap/cachemapobject1.cxx
+++ b/ucb/workben/cachemap/cachemapobject1.cxx
diff --git a/ucb/workben/cachemap/cachemapobject1.hxx b/ucb/workben/cachemap/cachemapobject1.hxx
index f8fc0bae6b04..f8fc0bae6b04 100644..100755
--- a/ucb/workben/cachemap/cachemapobject1.hxx
+++ b/ucb/workben/cachemap/cachemapobject1.hxx
diff --git a/ucb/workben/cachemap/cachemapobject2.hxx b/ucb/workben/cachemap/cachemapobject2.hxx
index 7b7a39c8b65d..7b7a39c8b65d 100644..100755
--- a/ucb/workben/cachemap/cachemapobject2.hxx
+++ b/ucb/workben/cachemap/cachemapobject2.hxx
diff --git a/ucb/workben/cachemap/cachemapobject3.cxx b/ucb/workben/cachemap/cachemapobject3.cxx
index 9090b004ef49..9090b004ef49 100644..100755
--- a/ucb/workben/cachemap/cachemapobject3.cxx
+++ b/ucb/workben/cachemap/cachemapobject3.cxx
diff --git a/ucb/workben/cachemap/cachemapobject3.hxx b/ucb/workben/cachemap/cachemapobject3.hxx
index 9f0f9bc553f3..9f0f9bc553f3 100644..100755
--- a/ucb/workben/cachemap/cachemapobject3.hxx
+++ b/ucb/workben/cachemap/cachemapobject3.hxx
diff --git a/ucb/workben/cachemap/cachemapobjectcontainer2.cxx b/ucb/workben/cachemap/cachemapobjectcontainer2.cxx
index 0b5f454ac358..0b5f454ac358 100644..100755
--- a/ucb/workben/cachemap/cachemapobjectcontainer2.cxx
+++ b/ucb/workben/cachemap/cachemapobjectcontainer2.cxx
diff --git a/ucb/workben/cachemap/cachemapobjectcontainer2.hxx b/ucb/workben/cachemap/cachemapobjectcontainer2.hxx
index c875bb3333b7..c875bb3333b7 100644..100755
--- a/ucb/workben/cachemap/cachemapobjectcontainer2.hxx
+++ b/ucb/workben/cachemap/cachemapobjectcontainer2.hxx
diff --git a/ucb/workben/cachemap/cachemaptest.cxx b/ucb/workben/cachemap/cachemaptest.cxx
index b47c6c428671..b47c6c428671 100644..100755
--- a/ucb/workben/cachemap/cachemaptest.cxx
+++ b/ucb/workben/cachemap/cachemaptest.cxx
diff --git a/ucb/workben/cachemap/makefile.mk b/ucb/workben/cachemap/makefile.mk
index 53d50fcd2175..53d50fcd2175 100644..100755
--- a/ucb/workben/cachemap/makefile.mk
+++ b/ucb/workben/cachemap/makefile.mk
diff --git a/ucb/workben/ucb/makefile.mk b/ucb/workben/ucb/makefile.mk
index a711ef7df909..a711ef7df909 100644..100755
--- a/ucb/workben/ucb/makefile.mk
+++ b/ucb/workben/ucb/makefile.mk
diff --git a/ucb/workben/ucb/srcharg.cxx b/ucb/workben/ucb/srcharg.cxx
index e092beaa96ca..e092beaa96ca 100644..100755
--- a/ucb/workben/ucb/srcharg.cxx
+++ b/ucb/workben/ucb/srcharg.cxx
diff --git a/ucb/workben/ucb/srcharg.hxx b/ucb/workben/ucb/srcharg.hxx
index cc6a5160cefa..cc6a5160cefa 100644..100755
--- a/ucb/workben/ucb/srcharg.hxx
+++ b/ucb/workben/ucb/srcharg.hxx
diff --git a/ucb/workben/ucb/ucbdemo.cxx b/ucb/workben/ucb/ucbdemo.cxx
index 9ec1c21c8031..9ec1c21c8031 100644..100755
--- a/ucb/workben/ucb/ucbdemo.cxx
+++ b/ucb/workben/ucb/ucbdemo.cxx