Top > OOoBasic > Generic > UCB

ユニバーサルコンテントブローカー Edit

ユニバーサルコンテントブローカー UCB はファイルなどのコンテンツへのアクセスを提供します。各種のコンテンツへのアクセスは該当するコンテンツプロバイダ UCP が担当します。

これらの UCP は普通はそのまま利用することはなく、css.ucb.SimpleFileAccess サービスを介して利用されます。たとえば、file:///home/hoge.odt を開いて内容を読み込もうとしたときには、file プロトコルを担当する css.ucb.FileContentProvider サービスが利用されます。

ドキュメントをロードする css.frame.Desktop サービスもこの仕組みを利用しており、ヘルプファイルなどを vnd.sun.star.help プロトコルで指定すると、ドキュメントとして開くことができます。

他の場所では、OOo Basic のファイルアクセス関数も SimpleFileAccess サービスを経由して UCP を利用しています。

UCB の役割 Edit

OOo は複数の OS に対応するために osl レイヤーがファイルシステムの差異を吸収しています。さらに、UCB はファイルの置かれている場所ごとの差異を吸収して同じ方法で取り扱うことができる方法を提供します。

もちろん、アクセス権限などに注意が必要です。

また、vnd.sun.star.tdoc プロトコルを扱う UCP のような特殊なものもあります。

UCP の登録 Edit

/org.openoffice.ucb.Configuration/ContentProviders 以下にサービス名と扱うプロトコルが登録されています。

既存の UCP Edit

プロトコル種類
fileローカルファイルシステム上のファイル
vnd.sun.star.hierコンフィグレーションへのアクセス
httphttp
httpshttps
vnd.sun.star.webdav, dav, davswebdav
ftpftp
vnd.sun.star.helpヘルプファイル
vnd.sun.star.pkgドキュメントファイルなど zip ファイル内へのアクセス
vnd.sun.star.zipzip ファイル内への透過的アクセス
vnd.sun.star.expandプロトコルが /singletons/css.util.theMacroExpander で展開されます
vnd.sun.star.extensionインストールされている拡張機能パッケージ内のファイルへのアクセス
vnd.sun.star.tdoc開いているドキュメントへのアクセス

バージョン依存性、未登録の UCP もあります。

独自の UCP の作成 Edit

UNO コンポーネントを css.ucb.ContentProvider サービスに従って実装します。


Reload   New Lower page making Edit Freeze Diff Upload Copy Rename   Front page List of pages Search Recent changes Backup   Help   RSS of recent changes