SchemeAwareAdapter
in package
implements
AdapterInterface
Read onlyYes
FinalYes
Scheme Aware Adapter
スキーム名を名前空間に反映させるアダプター
各スキームに対応した名前空間にリソースをマッピングします:
- api://self/users → {AppName}\Resource\Api\Users
- page://self/users → {AppName}\Resource\Page\Users
- app://self/users → {AppName}\Resource\App\Users
リソース名前空間は柔軟に設定可能です:
// api スキームを Endpoint 名前空間にマッピング
$adapter = new SchemeAwareAdapter($injector, 'MyApp', 'Endpoint');
// api://self/users → MyApp\Resource\Endpoint\Users
パス末尾のスラッシュは自動的に index に変換されます:
api://self/ → {AppName}\Resource\{ResourceNamespace}\Index
api://self/admin/ → {AppName}\Resource\{ResourceNamespace}\Admin\Index
Tags
Table of Contents
Interfaces
- AdapterInterface
Properties
- $appNamespace : string
- $injector : InjectorInterface
- $resourceNamespace : string
Methods
- __construct() : mixed
- get() : ResourceObject
- URIからResourceObjectを取得
Properties
$appNamespace
private
string
$appNamespace
$injector
private
InjectorInterface
$injector
$resourceNamespace
private
string
$resourceNamespace
Methods
__construct()
public
__construct(InjectorInterface $injector, string $appNamespace, string $resourceNamespace) : mixed
Parameters
- $injector : InjectorInterface
-
DIコンテナ
- $appNamespace : string
-
アプリケーション名前空間(例: MyApp)
- $resourceNamespace : string
-
リソース名前空間(例: Api, Page, Endpoint等)
get()
URIからResourceObjectを取得
public
get(AbstractUri $uri) : ResourceObject
Parameters
- $uri : AbstractUri
-
リソースURI
Tags
Return values
ResourceObject —リソースオブジェクト