예제 #1
0
  /**
   * Delete
   *
   * @param model
   * @return
   */
  public static void delete(UserModel userModel) {

    // ユーザーのすべてのDateModelを取得
    List<DateModel> dateModelList = userModel.getDateModelListRef().getModelList();

    for (DateModel dateModel : dateModelList) {
      // DateModelに紐づくつべてのActivityModel を取得
      List<ActivityModel> activityModelList = dateModel.getActivityModelListRef().getModelList();

      for (ActivityModel activityModel : activityModelList) {
        // アクティビティの削除
        ActivityService.delete(userModel, activityModel);
      }

      // DateModelの削除
      DateService.delete(userModel, dateModel);
    }

    // URLリストの削除
    UserUrlsService.deleteAll(userModel);

    userModelDao.delete(userModel.getKey());

    // 自信のキャッシュをクリア
    Memcache.delete(userModel.getKey().toString());

    // ユーザーカウントのキャッシュクリア
    clearUserCountAndListMemcache();
    // グループのキャッシュをクリア
    clearGroupUserListMemcache(userModel.getGroup());
  }
예제 #2
0
  /**
   * PUT
   *
   * @param model
   * @return
   */
  public static UserModel put(UserModel model) {
    // 永久化
    userModelDao.put(model);

    // 自信のキャッシュをクリア
    Memcache.delete(model.getKey().toString());

    // グループのキャッシュをクリア
    clearGroupUserListMemcache(model.getGroup());

    return model;
  }
예제 #3
0
 /** グループユーザーリストのキャッシュをクリア */
 public static void clearGroupUserListMemcache(int groupId) {
   Memcache.delete(getGroupUserListMemcache(groupId));
 }
예제 #4
0
 /** ユーザー数のキャッシュをクリア */
 public static void clearUserCountAndListMemcache() {
   Memcache.delete(SERVICE_USER_COUNT);
   Memcache.delete(ALL_USER_LIST);
   //        Memcache.delete(EXAMPLE_USER_LIST);
 }