From a19d224e5de6a067cc559a23cf6b4afdef060d56 Mon Sep 17 00:00:00 2001 From: Vitaly Takmazov Date: Thu, 1 Dec 2016 15:06:08 +0300 Subject: juick-api: Notifications controller from perl, refactoring --- .../main/java/com/juick/server/PushQueries.java | 48 ---------------------- .../java/com/juick/service/PushQueriesService.java | 18 ++++++-- .../com/juick/service/PushQueriesServiceImpl.java | 36 ++++++++++++++-- 3 files changed, 46 insertions(+), 56 deletions(-) delete mode 100644 juick-server/src/main/java/com/juick/server/PushQueries.java (limited to 'juick-server/src/main') diff --git a/juick-server/src/main/java/com/juick/server/PushQueries.java b/juick-server/src/main/java/com/juick/server/PushQueries.java deleted file mode 100644 index 5ee3cef3..00000000 --- a/juick-server/src/main/java/com/juick/server/PushQueries.java +++ /dev/null @@ -1,48 +0,0 @@ -/* - * To change this template, choose Tools | Templates - * and open the template in the editor. - */ -package com.juick.server; - -import org.springframework.jdbc.core.JdbcTemplate; -import org.springframework.util.StringUtils; - -import java.util.List; - -/** - * - * @author ugnich - */ -public class PushQueries { - - public static List getAndroidRegID(JdbcTemplate sql, int uid) { - return sql.queryForList("SELECT regid FROM android WHERE user_id=?", String.class, uid); - } - - public static List getAndroidTokens(JdbcTemplate sql, List uids) { - return sql.queryForList("SELECT regid FROM android INNER JOIN users " + - "ON (users.id=android.user_id) WHERE users.id IN (" + StringUtils.collectionToCommaDelimitedString(uids) + ")", String.class); - } - - public static List getWinPhoneURL(JdbcTemplate sql, int uid) { - return sql.queryForList("SELECT url FROM winphone WHERE user_id=?", String.class, uid); - } - - public static List getWindowsTokens(JdbcTemplate sql, List uids) { - return sql.queryForList("SELECT url FROM winphone INNER JOIN users " + - "ON (users.id=winphone.user_id) WHERE users.id IN (" + StringUtils.collectionToCommaDelimitedString(uids) + ")", String.class); - } - - public static List getAPNSToken(JdbcTemplate sql, int uid) { - return sql.queryForList("SELECT token from ios WHERE user_id=?", String.class, uid); - } - - public static List getAPNSTokens(JdbcTemplate sql, List uids) { - return sql.queryForList("SELECT token FROM ios INNER JOIN users " + - "ON (users.id=ios.user_id) WHERE users.id IN (" + StringUtils.collectionToCommaDelimitedString(uids) + ")", String.class); - } - - public static boolean deleteAPNSToken(JdbcTemplate sql, String token) { - return sql.update("DELETE FROM ios WHERE token=?", token) > 0; - } -} diff --git a/juick-server/src/main/java/com/juick/service/PushQueriesService.java b/juick-server/src/main/java/com/juick/service/PushQueriesService.java index 2e2ac390..7d4bc295 100644 --- a/juick-server/src/main/java/com/juick/service/PushQueriesService.java +++ b/juick-server/src/main/java/com/juick/service/PushQueriesService.java @@ -7,17 +7,27 @@ import java.util.List; * Created by aalexeev on 11/13/16. */ public interface PushQueriesService { - List getAndroidRegID(int uid); + List getGCMRegID(int uid); - List getAndroidTokens(Collection uids); + List getGCMTokens(Collection uids); - List getWinPhoneURL(int uid); + boolean addGCMToken(Integer uid, String token); - List getWindowsTokens(Collection uids); + boolean deleteGCMToken(String token); + + List getMPNSURL(int uid); + + List getMPNSTokens(Collection uids); + + boolean addMPNSToken(Integer uid, String token); + + boolean deleteMPNSToken(String token); List getAPNSToken(int uid); List getAPNSTokens(Collection uids); + boolean addAPNSToken(Integer uid, String token); + boolean deleteAPNSToken(String token); } diff --git a/juick-server/src/main/java/com/juick/service/PushQueriesServiceImpl.java b/juick-server/src/main/java/com/juick/service/PushQueriesServiceImpl.java index b11f0a79..aca48a19 100644 --- a/juick-server/src/main/java/com/juick/service/PushQueriesServiceImpl.java +++ b/juick-server/src/main/java/com/juick/service/PushQueriesServiceImpl.java @@ -24,7 +24,7 @@ public class PushQueriesServiceImpl extends BaseJdbcService implements PushQueri } @Override - public List getAndroidRegID(final int uid) { + public List getGCMRegID(final int uid) { return getJdbcTemplate().queryForList( "SELECT regid FROM android WHERE user_id=?", String.class, @@ -32,7 +32,7 @@ public class PushQueriesServiceImpl extends BaseJdbcService implements PushQueri } @Override - public List getAndroidTokens(final Collection uids) { + public List getGCMTokens(final Collection uids) { if (CollectionUtils.isEmpty(uids)) return Collections.emptyList(); @@ -43,7 +43,18 @@ public class PushQueriesServiceImpl extends BaseJdbcService implements PushQueri } @Override - public List getWinPhoneURL(final int uid) { + public boolean addGCMToken(Integer uid, String token) { + return getJdbcTemplate().update("INSERT IGNORE INTO android(user_id,regid) VALUES (?, ?)", + uid, token) > 0; + } + + @Override + public boolean deleteGCMToken(String token) { + return getJdbcTemplate().update("DELETE FROM android WHERE regid=?", token) > 0; + } + + @Override + public List getMPNSURL(final int uid) { return getJdbcTemplate().queryForList( "SELECT url FROM winphone WHERE user_id=?", String.class, @@ -51,7 +62,7 @@ public class PushQueriesServiceImpl extends BaseJdbcService implements PushQueri } @Override - public List getWindowsTokens(final Collection uids) { + public List getMPNSTokens(final Collection uids) { if (CollectionUtils.isEmpty(uids)) return Collections.emptyList(); @@ -61,6 +72,17 @@ public class PushQueriesServiceImpl extends BaseJdbcService implements PushQueri String.class); } + @Override + public boolean addMPNSToken(Integer uid, String token) { + return getJdbcTemplate().update("INSERT IGNORE INTO winphone(user_id,url) VALUES (?, ?)", + uid, token) > 0; + } + + @Override + public boolean deleteMPNSToken(String token) { + return getJdbcTemplate().update("DELETE FROM winphone WHERE url=?", token) > 0; + } + @Override public List getAPNSToken(final int uid) { return getJdbcTemplate().queryForList( @@ -84,4 +106,10 @@ public class PushQueriesServiceImpl extends BaseJdbcService implements PushQueri new MapSqlParameterSource("ids", uids), String.class); } + + @Override + public boolean addAPNSToken(Integer uid, String token) { + return getJdbcTemplate().update("INSERT IGNORE INTO ios(user_id,token) VALUES (?, ?)", + uid, token) > 0; + } } -- cgit v1.2.3