Flex Gateway新着情報
Governance新着情報
Monitoring API Managerレベル-1 オブジェクト種別のコラボレーションを有効にすると、統合スキーマを接続し、強化することができます。
コラボレーションが有効化された種別は、API スキーマや他の API スキーマの類似の種別とコラボレーションして、それら独自の項目を追加できるようになります。その結果、より多くの項目やデータセットを使用でき、この種別のクエリ結果がさらに強化されます。
コラボレーションが有効化された種別では、項目が統合スキーマやローカル API スキーマの他の種別に提供されるため、次のことができます。
種別間のリンクを作成する
詳細は、「Anypoint DataGraph のオブジェクト種別間のリンクのしくみ」を参照してください。
種別を他の種別とマージする
詳細は「種別のマージ」を参照してください。
コラボレーションは、クエリメソッドから直接返されるレベル-1 オブジェクト種別でのみ有効化できます。詳細は、「レベル-1 種別とネストされた種別」を参照してください。
コラボレーションを有効にするための要件を正しく理解するには、API スキーマ内の種別を理解しておく必要があります。詳細は、API スキーマの要素の理解を参照してください。
種別のコラボレーションを有効にするには、その種別が項目にアクセスするためのデフォルトのクエリメソッドと 1 つまたは 2 つの主キーを設定する必要があります。
オブジェクト種別のデフォルトのクエリメソッドは、コラボレーションを有効にするそのオブジェクト種別のレコードを 1 件返すメソッドです。クエリメソッドをデフォルトとして選択できるのは次の場合のみです。
1 つまたは 2 つの必須入力引数がある。
入力引数がスカラーデータ型である (Int
、Float
、String
、Boolean
、ID
のいずれか)。
主キーはオブジェクト種別に含まれる項目で、そのオブジェクト種別の 1 つのレコードを一意に識別します。項目を主キーにするには、表示される Null 不可能 (末尾の !
記号で表される) な項目である必要があります。クエリメソッドで 2 つの主キーが使用されている場合、それは複合キーです。
たとえば、次の API スキーマの Order 種別のコラボレーションを有効にするとします。
ordersById (id: ID!): Order
--------------------
--------------------
Order
--------------------
orderId: ID!
date: String
status: String
この例では、デフォルトのクエリメソッドは ordersById
、その主キーは orderId
です。 ordersById
が Order
種別を取得し、orderId
を使用して ID
項目に基づいて特定の情報を取得します。デフォルトのクエリメソッドの入力引数 ID
のデータ型は主キーのデータ型と同じである必要があります。この例では、どちらのデータ型も ID!
です。
次の複合キーを使用する例では、デフォルトのクエリメソッドは productDetail
、その複合キーは productId
と productSku
です。どちらも Product
種別を取得し、productId
と productSku
を使用して string
項目に基づいて特定の情報を取得します。デフォルトのクエリメソッドの入力引数のデータ型は各主キーのデータ型と同じである必要があります。この例では、どちらのデータ型も string!
です。
productDetail (id: String!, sku: String!): Product
--------------------
--------------------
Product
--------------------
productDetail: string!, string!
productId: String
productSku: String
API スキーマナビゲーションで、コラボレーションを有効にするレベル-1 オブジェクト種別を選択します。
[Collaboration permissions (コラボレーション権限)] ペインで、[Enable collaboration (コラボレーションを有効化)] をクリックします。
デフォルトのクエリメソッドを設定します。
次の画像は、2 つの必須引数を使用するクエリメソッドを示します。
[Next (次へ)] をクリックします。
クエリメソッドに応じて、1 つまたは 2 つの主キーを選択します。
次の画像ではクエリメソッドが 2 つの必須引数を使用しており、複合キーを示します。
オブジェクト種別がその項目を他の種別に提供することを停止するには、その種別のコラボレーションを無効化します。ただし、統合スキーマ内の別のオブジェクト種別とマージされているオブジェクトのコラボレーションを無効化すると、マージが切断されて競合が発生するため、解決する必要があります。
コラボレーションを無効化する手順は、次のとおりです。
[List of APIs added (追加された API のリスト)] をクリックし、コラボレーションを無効化するオブジェクト種別が含まれる API を選択します。
API スキーマナビゲーションで、オブジェクト種別を選択します。
[Collaboration permissions (コラボレーション権限)] ペインで、[Allow collaboration for this type (Extend this type) (この種別のコラボレーションを許可 (この種別を拡張))] を選択解除します。
確認を促されたら、[Undo merge and disable collaboration (マージを元に戻してコラボレーションを無効化)] をクリックしてオブジェクト種別のコラボレーションを無効化することを確認します。
競合が発生したら、Anypoint DataGraph の画面の指示に従って解決します。