uBikeアプリケーションのバックエンドはOracle Tuxedoプラットフォーム上にC++で記述されています。 このシステムでは、Tuxedoサービス内に含まれるビジネス・ロジックを使用した検索機能を備える自転車在庫アプリケーションが再現されています。
searchBikeサービスは定義されており、そのサービス契約情報はTuxedoメタデータ・リポジトリに保存されています。このデータを使用して、WSDLの出力結果が生成され、Oracle SALT SOAPゲートウェイ経由でのサービスへの疎結合のアクセスが実現されます。このゲートウェイは、WebサービスのSOAPおよびXMLのペイロードと、対応するTuxedoサービスのパラメータ型との変換を自動的に行います。
uBikeアプリケーションに実装されているTuxedoサービスについて、以下の表に示します。
サービス名 |
入力 |
出力 |
説明 |
|---|---|---|---|
searchBike |
COLOR - string |
以下の0〜n件のレコード
SERIALNO - string
SKU - string NAME - string TYPE - string PRICE - float SIZE - long INSTOCK - string ORDERDATE - string COLOR - string |
COLORフィールドに基づいて自転車のレコードを検索します。 |
uBike在庫データベースでは、実際のデータベースは使用されません。 メモリ内で操作できるよう、インメモリのデータセットとして実装されています。 uBikeSCASvrサーバーが起動すると、ランダムなデータを使用して100台の自転車の新規リストが生成されます。 データベースをリセットするには、uBikeSCASvrサーバーを再起動します。
uBikeデータベースに含まれる自転車の在庫は以下のデータで構成されます。
SERIALNOフィールドは、自転車レコードのID(主キー)です。 uBikeサービスによってその一意な値が生成され管理されます。
すべての自転車には、 YELLOW、ORANGE、RED、GREEN、BLUE、WHITE、BLACK、SILVERの色があります。
TYPE 'M'の自転車はマウンテン・バイクと見なされ、サイズは14〜21インチ(増分は1インチ単位)です。
TYPE 'R'の自転車はロード・バイクと見なされ、サイズは46〜60cm(増分は2cm単位)です。
ORDERDATEが7日以上の自転車はINSTOCK=Y、その他はINSTOCK=Nと見なされます。
| イメージ | データ |
|---|---|
SKU - C800 NAME - Carver 800 TYPE - R PRICE - $800 |
|
SKU - F1200 NAME - Flyer 1200 TYPE - R PRICE - $1200 |
|
SKU - I1600 NAME - Infinity 1600 TYPE - R PRICE - $1750 |
|
SKU - A2500 NAME - Americana 2500 TYPE - R PRICE - $2000 |
|
SKU - C5200 NAME - Cutter 5200 TYPE - R PRICE - $3000 |
|
SKU - LS900 NAME - Led Sled 900 TYPE - M PRICE - $6800 |
|
SKU - S1100 NAME - Steeler 1100 TYPE - M PRICE - $900 |
|
SKU - RJ4500 NAME - RockJumper 4500 TYPE - M PRICE - $1400 |
|
SKU - M4S6000 NAME - M4 Sport 6000 TYPE - M PRICE - $1800 |
|
| SKU - SLP8800 NAME - StumpLeaper Pro 8800 TYPE - M PRICE - $2400 |
これでuBikeのバックエンド・サービスの仕組みを確認し、チュートリアルを進めるために必要となる背景を理解できました。