mizo0203/hoshiguma-line-bot

View on GitHub
src/main/java/com/mizo0203/hoshiguma/repo/PushQueueRepository.java

Summary

Maintainability
A
0 mins
Test Coverage
package com.mizo0203.hoshiguma.repo;

import com.google.appengine.api.taskqueue.Queue;
import com.google.appengine.api.taskqueue.QueueFactory;
import com.google.appengine.api.taskqueue.TaskOptions;
import com.mizo0203.hoshiguma.push_task.ReminderTaskServlet;

import java.util.logging.Logger;

/* package */ class PushQueueRepository {

  private static final Logger LOG = Logger.getLogger(PushQueueRepository.class.getName());
  private final Queue mQueue;

  PushQueueRepository() {
    mQueue = QueueFactory.getDefaultQueue();
  }

  @SuppressWarnings("EmptyMethod")
  public void destroy() {
    // NOP
  }

  protected void enqueueReminderTask(String source_id, long etaMillis) {
    LOG.info("enqueueReminderTask");
    mQueue.add(
        TaskOptions.Builder.withUrl("/push_task/reminder_task")
            .param(ReminderTaskServlet.PARAM_NAME_SOURCE_ID, source_id)
            .etaMillis(etaMillis));
  }

  protected void enqueueCloseTask(String source_id, long etaMillis) {
    LOG.info("enqueueCloseTask");
    mQueue.add(
        TaskOptions.Builder.withUrl("/push_task/close_task")
            .param(ReminderTaskServlet.PARAM_NAME_SOURCE_ID, source_id)
            .etaMillis(etaMillis));
  }
}