この機能は非推奨です。サービスを WSGI アプリケーションとして公開するには、新しい WSGI サービス ライブラリを使用する必要があります。
このモジュールに含まれているクラスにより、App Engine Webapp フレームワークを使って Google Protocol RPC サービスを公開します。
protorpc.webapp.service_handlers
パッケージは、次の関数を提供します。
- service_mapping(services, registry_path=DEFAULT_REGISTRY_PATH)
-
webapp で使用するためのサービス マッピングを作成します。
Google Protocol RPC サービス用の基本的なデフォルトの設定と登録情報を作成します。サービス マッピングにリストされた各サービスには、そのサービス用に作成された標準のサービス ハンドラ ファクトリがあります。
マッピングのリストは、サービス マッピングへの明示的なパスとすることも、単なるサービスとすることもできます。マッピングが単なるサービスである場合、サービスはデフォルトの名前に自動的にマッピングされます。次に例を示します。
from protorpc import remote from protorpc.webapp import service_handlers package = 'my_package' class MyService(remote.Service): ... service_handlers.service_mapping( [('/my_path', MyService), # Maps to /my_path MyService, # Maps to /my_package/MyService ])
通常、サービスは、タプル(path, service)を指定して、URL パスにマッピングされます。path は、サービスが配置されている場所のパスです。service は、サービスの新しいインスタンスを作成するためのサービスクラスまたはサービス ファクトリです。サービス ファクトリの詳細については、remote.Service.new_factory をご覧ください。
タプルが指定されていない場合、つまりパスが指定されていない場合には、デフォルトのパスは、それぞれの構成要素について「.」の代わりに URL パス区切り記号を使用した、完全修飾サービス名を使用して計算されます。
引数- services
- タプル(path, service)。
path
は、サービスが配置されている場所のパスです。service
は、サービスの新しいインスタンスを作成するためのサービスクラスまたはサービス ファクトリです。サービス ファクトリの詳細については、remote.Service.new_factory をご覧ください。 - registry_path=DEFAULT_REGISTRY_PATH
- レジストリ サービスに対して指定するパス。レジストリ サービスを無効にする場合は、None を使用します。
WebApp アプリケーションと互換性のあるリクエスト ハンドラのマッピングを定義するタプルのリストを返します。
重複したパスが指定された場合は、ServiceConfigurationError が発生します。
- run_services(services, registry_path=DEFAULT_REGISTRY_PATH)
-
サービス マッピングを使用して CGI リクエストを処理します。
引数- services
- タプル(path, service)。
path
は、サービスが配置されている場所のパスです。service
は、サービスの新しいインスタンスを作成するためのサービスクラスまたはサービス ファクトリです。サービス ファクトリの詳細については、remote.Service.new_factory をご覧ください。 - registry_path=DEFAULT_REGISTRY_PATH
- レジストリ サービスに対して指定するパス。レジストリ サービスを無効にする場合は、None を使用します。