ポリシーキー

Version:
日本語翻訳に関する免責事項

このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。

Commerce Engineは、値としてフラグを持つPolicyKeysプロパティを実装します。ポリシーキーを使用して、Commerce Engineへのリクエストの実行中にスキップされるパイプラインブロックを指定するフラグを設定します。

パイプライン ブロック内では、PolicyTriggerConditionalPipelineBlockブロック (またはAsyncPolicyTriggerConditionalPipelineBlockブロック) のメンションにより、そのパイプライン ブロックが条件付きとして識別されます。条件付きパイプライン ブロックの実行をオーバーライドするには、文字列として定義されたポリシー キーを "ShouldNotRunPolicyTrigger" プロパティ値に含める必要があります。

ポリシーキーを明示的に使用して、その値をヘッダーに渡すことができます。次のコード サンプルでは、IndexUpdatedSitecoreItemBlockクラスがIgnoreIndexUpdatedSitecoreItemポリシー キーを実装しています。 ImportCatalogsリクエストの実行中に、IgnoreIndexUpdatedSitecoreItem文字列がヘッダーで渡されると、パイプラインの実行時にIndexUpdatedSitecoreItemBlockブロックはスキップされます。

public class IndexUpdatedSitecoreItemBlock : PolicyTriggerConditionalPipelineBlock<PersistEntityArgument, PersistEntityArgument>    
{
    public override string ShouldNotRunPolicyTrigger => "IgnoreIndexUpdatedSitecoreItem";

Commerce Engineでは、エンジン内でハードコードされたポリシー キーによりパイプライン ブロックをスキップできるポリシー キーも暗黙的に使用されます。たとえば、GetCartリクエストの実行中に、Commerce Engineは、パフォーマンスを最大化するために、オペレーションに不要なパイプラインブロックをスキップするための "IgnorePromotions" ポリシーキーを追加します。

ヘッダーでのポリシーキーの受け渡し

一部のAPI要求ヘッダーPolicyKeysプロパティを含めることができます (この例ではPostmanサンプルを使用して示しています)。また、Commerceコンテキストの一部として、コードでポリシー キー ヘッダーを渡すこともできます (この例を参照)。

ヘッダーポリシーキー

次の表に、Commerce Engineで定義されたヘッダー ポリシー キーを示します。

ポリシーキー

使い

IgnoreCaching(無視キャッシング)

ほとんどのカタログ操作とAPIでカタログ項目のキャッシュをバイパスするフラグを設定します。

IgnoreAvailability (可用性を無視)

IGetSellableItemPipelineパイプラインが呼び出されたときにSellable商品の在庫状況が返されないようにフラグを設定します。

価格無視

IGetSellableItemPipelineパイプラインが呼び出されたときにSellable商品の価格が返されないようにフラグを設定します。

IgnoreIndexUpdatedSitecoreItem (英語)

Sitecore検索インデックスのカタログ エンティティの増分更新プロセス中に実行されるIndexUpdatedSitecoreItemBlockブロックをスキップするフラグを設定します。

渡されたもの:

  • ImportCatalogsリクエスト (公開ありまたはなし)。

  • ImportLocalCatalogs要求。

IgnoreAddEntityToIndexList (英語)

Sitecore検索インデックスのカタログ エンティティの増分更新プロセス中に実行されるAddEntityToIndexListBlockブロックをスキップするフラグを設定します。

渡されたもの:

  • ImportCatalogsリクエスト (公開ありまたはなし)。

  • ImportLocalCatalogs要求。

IgnoreLocalizeEntity (ロケール化エンティティを無視する)

Sitecore検索インデックスのカタログ エンティティの増分更新プロセス中に実行されるLocalizeEntityBlockブロックをスキップするフラグを設定します。

渡されたもの:

  • ImportCatalogs リクエスト (公開ありまたはなし)。

  • ImportLocalCatalogs 要求。

IgnoreIndexDeletedSitecoreItem (インデックス削除サイトコア アイテムを無視する)

Sitecore検索インデックスのカタログ エンティティの増分更新プロセス中に実行されるIndexUpdatedSitecoreItemBlockブロックを無視するフラグを設定します。

渡されたもの:

  • ImportCatalogsリクエスト (公開ありまたはなし)。

  • ImportLocalCatalogs要求。

DoNotCalculateCart (カートを計算しない)

カートを再計算しないことを示します。

渡されたもの:

  • GetCartCommand要求。

プロモーションを無視する

Sellable商品に関連付けられたプロモーションがカートに追加されるまで返されないようにフラグを設定します。パフォーマンスを向上させるには、このフラグをtrueに設定します。

渡されたもの:

  • GetSellableItemSummary

  • GetSellableItem

  • GetBulkPrice

サンプルデータを無視する

環境の初期化中に、特定の環境のサンプル データの読み込みを防止します。

渡されたもの:

  • InitializeEnvironment()"sampleData=True"パラメータが .

IgnoreVersioningエンティティ

エンティティのバージョン管理を無視するフラグを設定します。主に、一括カタログ品目のインポート プロセスによって内部的に使用されます。

ゼロミニオン遅延

フラグを設定して、注文処理ミニオンをすぐに実行し、事前定義された間隔での実行を待つのではなく、注文をコミットします。

渡されたもの:

  • CreateOrder要求

ミニオンフォールト

実行中のミニオンのテストまたはトラブルシューティング時にエラーをリッスンするフラグを設定します。

渡されたもの:

  • Run PendingOrder MinionPostmanでのリクエスト。

この記事を改善するための提案がある場合は、 お知らせください!