[ooo-build-commit] doc/registry.txt
Michael Meeks
mmeeks at kemper.freedesktop.org
Fri Aug 28 07:49:08 PDT 2009
doc/registry.txt | 81 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 81 insertions(+)
New commits:
commit 2d44c65fee47b41ccbd0a99cb511d819b9df8158
Author: Michael Meeks <michael.meeks at novell.com>
Date: Fri Aug 28 15:51:10 2009 +0100
add docs
* doc/registry.txt:
diff --git a/doc/registry.txt b/doc/registry.txt
new file mode 100644
index 0000000..0e74617
--- /dev/null
+++ b/doc/registry.txt
@@ -0,0 +1,81 @@
+The registry needs a re-write:
+
+* plain Text format
+
+* compressed - re-using previous fragments (?)
+ + or just being less lame structurally - prolly more useful.
+
+n:
+
+[ integer representing tree / nesting ] ':' delimiter.
+
+
+* store the complete tree internally; as OStrings etc. - of course ... [!]
+ + complicated recursive types as multi-line ...
+
+
+* services.rdb:
+ + only uses 'String' and 'StringList' types.
+ + wow - it's simple ;-)
+
+* Tackle the 'services' piece - at a higher level [!?]
+ + have a special case file format for this ...
+
+* types.rdb:
+ + only 1 type: RG_VALUETYPE_BINARY ...
+ ;-) wow ...
+ + and a simple tree of it:
+ + a simple tree, method argument descriptions
+ for interfaces, one by one.
+ + various 'type classes' instead ...
+ + outer encapsulation broadly pointless ... ;-)
+
+ + typereg_writer ... ? ...
+ + RegistryTypeReader_Api [ etc. ] ...
+
+Q: + does the [whatever] code use only this API, and
+ not the registry API directly ?
+ + if so, lots of wins possible (surely).
+
+Q: + the services code all uses the registry tools to
+ do it's manipulation, so if we break that ... ;-)
+
+$ cat >> should be a valid reg creation tool ...
+ + assuming no duplicates etc. ;-)
+
+
+
+** what is the highest level API ?
+ + how do we use the registry ?
+
+* stoc/source/simpleregistry/simpleregistry.cxx
+* stoc/source/defaultregistry/defaultregistry.cxx
+
+* the real use-case is:
+
+uno::Reference< lang::XMultiServiceFactory > xFactory( ::comphelper::getProcessServiceFactory() );
+uno::Reference< java::XJavaVM > xJavaVM( xFactory->createInstance( rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("com.sun.star.java.JavaVirtualMachine") ) ), uno::UNO_QUERY );
+
+Where is that XMultiServiceFactory implemented ?
+
+comphelper/
+
+stoc/source/servicemanager/servicemanager.cxx
+ + ! foo ! +
+
+ + Talks to lots of 'XSingleComponentFactories' ...
+ + XSingleComponentFactories loaded with
+ : loadWithImplementationName - what fun.
+ + loads a Registry file ! ...
+ + could load a text file [ surely ] :-)
+ + getRootKey():
+ + createInstanceWithContext ( .... c.s.s.registry.DefaultRegistry )
+
+ + needs debugging printouts & investigation - foo !
+
+ + interesting - can we impl. this ?
+
+ + this basically has a hash table anyway !
+ + wow [!] :-)
+
+ + services
More information about the ooo-build-commit
mailing list