[YMIR-306] 前の画面がなんだったのか判定するユーティリティ Created: 27/Jan/09  Updated: 12/Apr/09  Resolved: 21/Mar/09

Status: Closed
Project: Ymir
Component/s: ymir-extension
Affects Version/s: 1.0.0
Fix Version/s: 1.0.3

Type: Improvement Priority: Minor
Reporter: jflute Assignee: skirnir
Resolution: Fixed Votes: 0
Labels: None


 Description   

【概要】
不正遷移チェックはConversationである程度まかなえるが、
_get()の中とかでどこから来たかでちょっと処理を変えたい場合などにニーズがある。

イメージは以下のとおり:

if (TransitionUtils.isPreviousPage(ConfirmPage.class)) {
    // 確認画面から来たらこの処理
}

判定さえ出来れば、インターフェースは特に問わない。



 Comments   
Comment by skirnir [ 07/Feb/09 ]

画面遷移情報を記録するInterceptorなどを作成して、その記録情報を簡単に参照できるようにするというようなイメージでしょうか。

上記機構をcoreに持たせるか、それともutility-fragmentやアプリケーション毎のフレームワークラッパ層に持たせるかは議論の余地があると考えますが、そのあたりどうお考えですか?

Comment by jflute [ 07/Feb/09 ]

実現方法に関しては、Ymirの内部構造で都合の良い方法でいいので特に問いません。
ただ、どこかで記録するということには変わりはないと思います。
ちなみにTeedaはpreviousViewIdという名前でsessionを利用して保持していたと記憶します。

coreかutility-fragmentか、これも特にどちらも構いませんが、
Redirectとか既に存在するUtilの役割をみると、どちらかというと
utility-fragmentかなぁというのが個人的な感じです。

Comment by jflute [ 07/Feb/09 ]

PRGのときは、いいですが、
ForwardとかProceedとかを利用した場合に、
どういう仕様とするかちょっと迷いそうですかね...
(TeedaはPRGオンリーだったので逆に単純でしたが)

Comment by jflute [ 23/Feb/09 ]

Conversationで「前のフェーズが何なのか」が判定できれば、
それでも良いかもしれません。

Comment by skirnir [ 21/Mar/09 ]

機能を追加しました(r3038)。詳しくはHistoryManagerを見ていただけますか?よろしくお願いします。ドキュメントは後で書きます。

Comment by skirnir [ 12/Apr/09 ]

問題ないようなので完了とします。

Generated at Sat Apr 04 11:41:13 JST 2020 using JIRA 7.9.2#79002-sha1:3bb15b68ecd99a30eb364c4c1a393359bcad6278.