Doctrineのtrunkをみてて思ったこととか

Doctrineのtrunkが今どうなってるのかを少しだけ眺めてたら、前に比べて結構変わってるみたいなので思ったこととかを書いてみます。

Doctrine\ORM\Entity

Doctrine\ORM\ActiveEntity

  • fromArray()に引数の型指定がなくなって内部で型の判定がされてる
    • toArray()したものを再度fromArray()しようとしたときに、たまに循環参照部分が空文字になっててエラーになることがあったのでありがたい
  • 新規作成かどうかの判定がexists()からisNew()に
    • Propelにあわせた?
  • _get()とかにごっそりfinal修飾子が

Doctrine\Common\VirtualPropertyObject

  • ActiveEntityの親クラス
  • 以前のDoctrine_Access
  • $obj[$field],$obj->$fieldを全て$obj->get($field)に

Doctrine_ORM_EntityRepository

  • Doctrine_Tableのファインダメソッド周り
  • findBySql()が実装される模様

Doctrine\ORM\Mapping\ClassMetadata

  • Doctrine_Tableのテーブル情報まわり
  • hasField()とかがある

Doctrine\ORM\EntityManager

  • createCriteria()とかあるけど・・・

実装はまだまだ進んでないみたいです。Doctrine_Tableの役割が複数のクラスに分かれたようですが、内部ではgetTable()とかやってたりしますのでまだ動く段階ですらないでしょう。

リリース予定はまだ半年以上先ですし、気長に待ちましょう。またしばらくしたら見てみようと思います。