nomlab / camome

CAMOME MOtivates ME
1 stars 11 forks source link

TokenをCalendar_Auth_Infoとして保存できるようにする #39

Open HiromuIshikawa opened 8 years ago

HiromuIshikawa commented 8 years ago

Created from AI0264 of minute 302.

ikeda-yuko commented 7 years ago

CalendarAuthInfo に Google認証後の token と refresh_token を保存するに際して,モデル構造を検討し直した. まず,カレンダの予定を取得するまでのフローについて述べる. フローは以下の通りである.

  1. ユーザは Google に対して認証を行い,カレンダリストを取得
  2. カレンダリストから,camome に表示するカレンダを選択
  3. 選択した Googleカレンダーについて,Calendar のインスタンスを生成
  4. Calendar のインスタンス生成に伴い, CalendarAuthInfo のインスタンスを生成し,そこに認証情報を保存
  5. Calendar のインスタンスが対応する CalendarAuthInfo を使い,Googleカレンダから予定を取得

次に,現在の User と Calendar に関連するクラス図を示す. current_model

このクラス図で上記で述べたフローを実現するには以下の問題が発生する.

このため,モデル構造を検討した.検討後のモデル構造を表わすクラス図は以下の通りである. class また,モデル構造変更後の他のアプリからカレンダの予定を取得する際のフローは以下の通りである.

  1. プロバイダを作成 (Google, Yahoo, etc...)
  2. プロバイダからカレンダリストを取得し,表示するカレンダを選択し,カレンダを作成 (gn@gmail.com, swlab@gmail.com, etc...)
  3. 選択したカレンダの予定を取得

それぞれの工程を詳細に示したシーケンス図を以下に示す. <プロバイダの作成> create_provider <カレンダの作成> create_calendar <予定の取得> get_event

emiksk commented 7 years ago

クラス図はWikiのCamome class diagram about authenticationに最新のものがまとめられている.