objectify について簡単な質問があります。これは実際のドキュメントに記載されている可能性がありますが、何も見つからなかったので、安全のためにここに質問します。
私はちょっと急いでオブジェクト化を使用するバックエンドを持っています-私がやりたいことは次のとおりです-私は活動で構成されるイベント計画を持っています。現在、イベントを削除する場合、実際にはすべてのロジックを記述して、イベント プランの削除メソッド内の個々のアクティビティを削除しています。
私が疑問に思っているのは、イベント計画の削除メソッドからアクティビティの削除メソッドを呼び出した場合 (これを実行できる場合)、それはアトミックですか?
サンプル (これは単なる疑似コードであり、実際のものではありません。ケースとメソッド名は間違っている可能性があります):
// inside event plan dao
public void delete(EventPlan eventPlan) {
final Objectify ofy = Objectify.beginTransaction();
try {
final ActivityDAO activityDao = new ActivityDAO();
for (final Activity activity : eventPlan.getActivities()) {
activityDao.delete(activity);
}
ofy.getTxn().commit();
} finally {
if (ofy.getTxn().isActive()) {
ofy.getTxn().rollback();
|
}
}
// inside activity dao
public void delete(Activity activity) {
final Objectify ofy = Objectify.beginTransaction();
try {
// do some logic in here, delete activity and commit txn
} finally {
// check and rollback as normal
}
}
これは安全ですか?- 現在のように、それが非常に混乱している理由は、エンティティ グループの問題に気付いていなかったからです - アクティビティ自体と同じエンティティ グループにない特定のものがアクティビティにありました - これを修正した後、私はすべてを入れましたイベントプランの削除のロジックとメソッドが管理不能になりつつあります-物事をより小さな断片に分割しても大丈夫ですか、それともアトミック性を壊しますか.
ありがとうございました