修改cheat文件
Change-Id: I0ffce820f7ff78b6fe5b9a714baf17814636dc19
API修改
Change-Id: I63a5b9752afcfe6f8088d2cfc065b385ee2a4464
merge
Change-Id: I783bc0349b858b16bccd1ec21623182239170df2
修改cheat文件
Change-Id: I0ffce820f7ff78b6fe5b9a714baf17814636dc19
merge
Change-Id: I783bc0349b858b16bccd1ec21623182239170df2
修改cheat文件
Change-Id: I0ffce820f7ff78b6fe5b9a714baf17814636dc19
merge
Change-Id: I783bc0349b858b16bccd1ec21623182239170df2
合并API代码
Change-Id: I5ac299271c14d247413d78b5da51adc28977e05d
diff --git a/src/main/java/cheat/Cheat.java b/src/main/java/cheat/Cheat.java
index 270f2fd..3eecaff 100644
--- a/src/main/java/cheat/Cheat.java
+++ b/src/main/java/cheat/Cheat.java
@@ -1,14 +1,11 @@
package cheat;
import java.util.ArrayList;
-import java.util.HashMap;
import java.util.List;
-import java.util.Map;
import javax.persistence.EntityManager;
-import javax.persistence.EntityManagerFactory;
-import javax.persistence.Persistence;
-import javax.persistence.EntityTransaction;
+import javax.persistence.PersistenceContext;
+import javax.transaction.Transactional;
import org.apache.commons.lang3.tuple.Pair;
@@ -22,138 +19,94 @@
public class Cheat implements CheatInterfnterface {
- private EntityManagerFactory emf;
-
- public Cheat() {
- config cfg = new config();
- Map<String, Object> props = new HashMap<>();
- props.put("javax.persistence.jdbc.url",
- "jdbc:mysql://" + cfg.SqlURL + "/" + cfg.Database);
- props.put("javax.persistence.jdbc.user", cfg.SqlUsername);
- props.put("javax.persistence.jdbc.password", cfg.SqlPassword);
- this.emf = Persistence.createEntityManagerFactory("myPersistenceUnit", props);
- }
-
- // 测试时注入
- public Cheat(EntityManagerFactory emf) {
- this.emf = emf;
- }
-
- private EntityManager getEntityManager() {
- return emf.createEntityManager();
- }
+ @PersistenceContext
+ private EntityManager entityManager;
@Override
+ @Transactional
public boolean AddAppeal(Appeal appeal) {
- EntityManager em = getEntityManager();
- EntityTransaction tx = em.getTransaction();
try {
- tx.begin();
- em.persist(appeal);
- tx.commit();
+ entityManager.persist(appeal);
} catch (Exception e) {
- if (tx.isActive()) {
- tx.rollback();
- }
e.printStackTrace();
return false;
- } finally {
- em.close();
}
return true;
}
@Override
public Appeal GetAppeal(String appealid) {
- EntityManager em = getEntityManager();
try {
- JPAQueryFactory queryFactory = new JPAQueryFactory(em);
+ JPAQueryFactory queryFactory = new JPAQueryFactory(entityManager);
QAppeal qAppeal = QAppeal.appeal;
Appeal appeal = queryFactory
- .selectFrom(qAppeal)
- .where(qAppeal.appealid.eq(appealid))
- .fetchOne();
+ .selectFrom(qAppeal)
+ .where(qAppeal.appealid.eq(appealid))
+ .fetchOne();
return appeal;
} catch (Exception e) {
e.printStackTrace();
return null;
- } finally {
- em.close();
}
}
@Override
public Appeal[] GetAppealList() {
- EntityManager em = getEntityManager();
try {
- JPAQueryFactory queryFactory = new JPAQueryFactory(em);
+ JPAQueryFactory queryFactory = new JPAQueryFactory(entityManager);
QAppeal qAppeal = QAppeal.appeal;
List<Appeal> appeals = queryFactory
- .selectFrom(qAppeal)
- .fetch();
+ .selectFrom(qAppeal)
+ .fetch();
return appeals.toArray(new Appeal[0]);
} catch (Exception e) {
e.printStackTrace();
return null;
- } finally {
- em.close();
}
}
@Override
public boolean HandleAppeal(String appealid, Integer status) {
- EntityManager em = getEntityManager();
- EntityTransaction tx = em.getTransaction();
try {
- tx.begin();
- Appeal appeal = em.find(Appeal.class, appealid);
+ Appeal appeal = GetAppeal(appealid);
if (appeal != null) {
appeal.status = status;
- em.merge(appeal);
- User user = em.find(User.class, appeal.appealuserid);
+ entityManager.merge(appeal);
+ User user = entityManager.find(User.class, appeal.appealuserid);
if (user != null && user.accountstate != false) {
if (status == 1) {
user.accountstate = false;
}
- em.merge(user);
+ entityManager.merge(user);
}
- tx.commit();
return true;
}
return false;
} catch (Exception e) {
e.printStackTrace();
return false;
- } finally {
- if (tx.isActive()) {
- tx.rollback();
- }
- em.close();
}
}
@Override
public Pair<String, String>[] GetFakeSeed() {
List<Pair<String, String>> fakeSeeds = new ArrayList<>();
- EntityManager em = getEntityManager();
try {
- JPAQueryFactory queryFactory = new JPAQueryFactory(em);
+ JPAQueryFactory queryFactory = new JPAQueryFactory(entityManager);
QSeed qSeed = QSeed.seed;
List<com.querydsl.core.Tuple> results = queryFactory
- .select(qSeed.seedid, qSeed.seeduserid)
- .from(qSeed)
- .where(qSeed.faketime.gt(new config().FakeTime))
- .fetch();
+ .select(qSeed.seedid, qSeed.seeduserid)
+ .from(qSeed)
+ .where(qSeed.faketime.gt(new config().FakeTime))
+ .fetch();
for (com.querydsl.core.Tuple result : results) {
String seedid = result.get(qSeed.seedid);
- String userid = result.get(qSeed.seeduserid);
+ String userid = result.get(qSeed.seeduserid);
fakeSeeds.add(Pair.of(seedid, userid));
}
} catch (Exception e) {
e.printStackTrace();
return null;
- } finally {
- em.close();
}
return fakeSeeds.toArray(new Pair[0]);
}
@@ -161,23 +114,20 @@
@Override
public String[] GetPunishedUserList() {
List<String> punishedUsers = new ArrayList<>();
- EntityManager em = getEntityManager();
try {
- JPAQueryFactory queryFactory = new JPAQueryFactory(em);
+ JPAQueryFactory queryFactory = new JPAQueryFactory(entityManager);
entity.QUser qUser = entity.QUser.user;
List<String> results = queryFactory
- .select(qUser.userid)
- .from(qUser)
- .where(qUser.accountstate.isTrue())
- .fetch();
+ .select(qUser.userid)
+ .from(qUser)
+ .where(qUser.accountstate.isTrue())
+ .fetch();
for (String userid : results) {
punishedUsers.add(userid);
}
} catch (Exception e) {
e.printStackTrace();
return null;
- } finally {
- em.close();
}
return punishedUsers.toArray(new String[0]);
}
@@ -198,17 +148,21 @@
// int n = tasks.size();
// if (n == 0) continue;
+
// double[] xArr = new double[n];
// for (int i = 0; i < n; i++) {
// TransRecord t = tasks.get(i);
// xArr[i] = Math.max(0, t.upload - t.download);
// }
+
// double sum = 0;
// for (double x : xArr) sum += x;
// double mu = sum / n;
+
// double sqSum = 0;
// for (double x : xArr) sqSum += (x - mu) * (x - mu);
// double sigma = Math.sqrt(sqSum / n);
+
// for (int i = 0; i < n; i++) {
// if (Math.abs(xArr[i] - mu) > 3 * sigma) {
// User user = entityManager.find(User.class, tasks.get(i).downloaduserid);
@@ -223,37 +177,27 @@
}
@Override
- public void DetectFakeSeed() {
+ public void DetectFakeSeed(){
}
@Override
- public boolean DetectFakeSeed(String seedid) {
+ public boolean DetectFakeSeed(String seedid){
return false;
}
@Override
- public void PunishUser() {
- EntityManager em = getEntityManager();
- EntityTransaction tx = em.getTransaction();
- try {
- tx.begin();
- JPAQueryFactory queryFactory = new JPAQueryFactory(em);
- entity.QUser qUser = entity.QUser.user;
- List<User> users = queryFactory
- .selectFrom(qUser)
- .where(qUser.detectedCount.gt(new entity.config().CheatTime)
- .or(qUser.fakeDetectedCount.gt(new entity.config().FakeTime)))
- .fetch();
+ public void PunishUser(){
+ JPAQueryFactory queryFactory = new JPAQueryFactory(entityManager);
+ entity.QUser qUser = entity.QUser.user;
+ List<User> users = queryFactory
+ .selectFrom(qUser)
+ .where(qUser.detectedCount.gt(new entity.config().CheatTime)
+ .or(qUser.fakeDetectedCount.gt(new entity.config().FakeTime)))
+ .fetch();
- for (User user : users) {
- user.accountstate = true;
- em.merge(user);
- }
- tx.commit();
- } catch (Exception e) {
- if (tx.isActive()) tx.rollback();
- } finally {
- em.close();
+ for (User user : users) {
+ user.accountstate = true;
+ entityManager.merge(user);
}
}
-}
+}
\ No newline at end of file