Skip to content

ja Entity\Entity class

USAMI Kenta edited this page May 5, 2017 · 1 revision

Entity\Entity

よくわからんけど、構造体に名前がついた

Entityとは何か

わからん。

いや、実体関連モデル(ERM)に端を発する用語だってことはわかる。

Mastodon/API.mdEntitiesって名前でずらずらーっと並んでるから、それに対応するクラスを実装していっただけ。

Entityの実装

単純な構造体クラスにするつもりだったので、Teto Objectsystem (zonuexe/objectsystem)をラップして使ってる。これの概念的な説明はobjectsystem/ポエム集にある。

正直なところ、SDKのやることなんてAPIリクエストで得られたJSONをPHPのオブジェクトにマッピングできれば勝ち確定である。そのあたりのことがあってコンストラクタに配列を投げ付けてやれば、それだけで再帰的にオブジェクトにマッピングされるようにした。具体的にはEntity\helpers functionsに書く。ああ、お手軽。

あと、それぞれ再帰的に機能するtoArray()メソッドを持たせたので、JSONのような汎用のシリアライズ形式にも用意に変換できる。こっちにも「再帰的」ってフレーズが出てきてるけど、再帰的マッピングに比べれば再帰的シリアライズはどちらかと言ったらおまけ。

Clone this wiki locally