20.12. ステートフルおよびステートレスの RuleSession の使用


手順20.3 タスク

  1. 以下に示すように RuleServiceProvider にアクセスしてランタイムを取得します。
    RuleRuntime ruleRuntime = ruleServiceProvider.getRuleRuntime();
    Copy to Clipboard Toggle word wrap
  2. ルールセッションを作成するには、2 つの RuleRuntime パブリック定数のいずれかを使用します。これらは "RuleRuntime.STATEFUL_SESSION_TYPE" および "RuleRuntime.STATELESS_SESSION_TYPE" で、RuleSession をインスタンス化する RuleExecutionSet に URI が付随します。
  3. 必要に応じて、プロパティーにアクセスしてグローバルを指定します。
  4. createRuleSession (...)メソッドは RuleSession インスタンスを返します。StatefulRuleSession または StatelessRuleSession にキャストする必要があります。
    (StatefulRuleSession) session =
      ruleRuntime.createRuleSession( uri,
                                     null,
                                     RuleRuntime.STATEFUL_SESSION_TYPE );
    session.addObject( new PurchaseOrder( "cheese" ) );
    session.executeRules();
    Copy to Clipboard Toggle word wrap
  5. StatelessRuleSession を使用すると、オブジェクトのリストと任意のフィルターを渡す executeRules (List list)のみを呼び出すと、作成されるオブジェクトが返されます。
    (StatelessRuleSession) session =
      ruleRuntime.createRuleSession( uri,
                                     null,
                                     RuleRuntime.STATELESS_SESSION_TYPE );
    List list = new ArrayList();
    list.add( new PurchaseOrder( "even more cheese" ) );
    
    List results = new ArrayList();
    results = session.executeRules( list );
    Copy to Clipboard Toggle word wrap

トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat