Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 12.0.1 » Mobile Link サーバー起動同期 » サーバー起動同期チュートリアル » チュートリアル:ライトウェイトポーリングを使用したサーバー起動同期の設定

 

レッスン 8:Push 要求の発行

このレッスンは、受講者がこれまでのすべてのレッスンを終了していることを前提としています。 レッスン 1:統合データベースの設定を参照してください。

このレッスンでは、統合データベースの Dealer テーブルを変更して、Mobile Link Listener が Push 通知をポーリングするときに情報をリモートデータベースにダウンロードできるようにします。次に、統合データベースにポーリングキー値を挿入して、サーバー起動同期を要求します。Notifier は request_cursor イベントを実行し、non_sync_request テーブル内のポーリングキーを検出して Mobile Link Listener に Push 通知を送信します。Mobile Link Listener が Push 通知を受信すると、Mobile Link データベースと同期してリモートデータベースを更新します。

 ♦ サーバー起動同期を実行するための統合データベースの変更
  1. 統合データベースに接続していない場合は、Interactive SQL で接続します。

    次のコマンドを実行します。

    dbisql -c "dsn=SIS_CarDealer_LP_DBLSN_CONDB"
  2. 次の SQL 文を実行します。

    UPDATE Dealer
        SET RATING = 'B' WHERE name = 'Geo'; 
    COMMIT;
  3. non_sync_request テーブルに直接移植し、Push 要求を発行します。ポーリングキーカラムによって、Push 通知を受信するデバイスが決まります。

    次のスクリプトを入力します。

    INSERT INTO non_sync_request(poll_key) VALUES ('%remote_id%.no_action');
    COMMIT;
  4. 同期が発生するまで数秒待ちます。

    Mobile Link Listener は、統合データベースをポーリングして Push 通知をダウンロードし、リモートデータベースの Dealer テーブルを更新します。

  5. non_sync_request テーブルからポーリングキー値を削除し、デバイスとのサーバー起動同期を停止します。

    次のスクリプトを入力します。

    DELETE FROM non_sync_request WHERE poll_key = '%remote_id%.no_action';
    COMMIT;
  6. クリーンアップに進みます。

 参照