rebase and resubmit
Change-Id: I840888ad5aadceaacb5cd64c6472614cd82ffe17
diff --git a/src/main/java/cheat/CheatInterfnterface.java b/src/main/java/cheat/CheatInterfnterface.java
index 95ef6bb..cca8818 100644
--- a/src/main/java/cheat/CheatInterfnterface.java
+++ b/src/main/java/cheat/CheatInterfnterface.java
@@ -1,6 +1,7 @@
package cheat;
import org.apache.commons.lang3.tuple.Pair;
-import object.Appeal;
+
+import entity.Appeal;
public interface CheatInterfnterface{
public Pair<String,String>[] GetFeakSeed();//返回做假种的列表,<seedid,userid>
public void DetectFeakSeed();//检测所有种子是否为假种,并将检测结果写入数据表
diff --git a/src/main/java/database/DataManagerInterface.java b/src/main/java/database/DataManagerInterface.java
index d284288..2304567 100644
--- a/src/main/java/database/DataManagerInterface.java
+++ b/src/main/java/database/DataManagerInterface.java
@@ -1,12 +1,12 @@
package database;
-import object.BegInfo;
-import object.Notice;
-import object.Post;
-import object.Profile;
-import object.Seed;
-import object.User;
-import object.UserPT;
+import entity.BegInfo;
+import entity.Notice;
+import entity.Post;
+import entity.Profile;
+import entity.Seed;
+import entity.User;
+import entity.UserPT;
public interface DataManagerInterface{
//DB1
diff --git a/src/main/java/database/Database2.java b/src/main/java/database/Database2.java
index 79c55f9..8d919b6 100644
--- a/src/main/java/database/Database2.java
+++ b/src/main/java/database/Database2.java
@@ -12,19 +12,19 @@
import com.querydsl.jpa.impl.JPAQuery;
import com.querydsl.core.Tuple;
-import object.QBegInfo;
-import object.QUserVotes;
-import object.QSubmitSeed;
-import object.QProfile;
-import object.QSeed;
-import object.Seed;
-import object.User;
-import object.UserPT;
-import object.Notice;
-import object.BegInfo;
-import object.Post;
-import object.PostReply;
-import object.Profile;
+import entity.QBegInfo;
+import entity.QUserVotes;
+import entity.QSubmitSeed;
+import entity.QProfile;
+import entity.QSeed;
+import entity.Seed;
+import entity.User;
+import entity.UserPT;
+import entity.Notice;
+import entity.BegInfo;
+import entity.Post;
+import entity.PostReply;
+import entity.Profile;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
diff --git a/src/main/java/object/Appeal.java b/src/main/java/entity/Appeal.java
similarity index 98%
rename from src/main/java/object/Appeal.java
rename to src/main/java/entity/Appeal.java
index 5057179..36816c4 100644
--- a/src/main/java/object/Appeal.java
+++ b/src/main/java/entity/Appeal.java
@@ -1,4 +1,4 @@
-package object;
+package entity;
import javax.persistence.Column;
import javax.persistence.Entity;
diff --git a/src/main/java/object/BegInfo.java b/src/main/java/entity/BegInfo.java
similarity index 97%
rename from src/main/java/object/BegInfo.java
rename to src/main/java/entity/BegInfo.java
index 4c3589a..fe3174d 100644
--- a/src/main/java/object/BegInfo.java
+++ b/src/main/java/entity/BegInfo.java
@@ -1,4 +1,4 @@
-package object;
+package entity;
import java.util.Date;
diff --git a/src/main/java/object/Notice.java b/src/main/java/entity/Notice.java
similarity index 83%
rename from src/main/java/object/Notice.java
rename to src/main/java/entity/Notice.java
index a0b2b11..24ef954 100644
--- a/src/main/java/object/Notice.java
+++ b/src/main/java/entity/Notice.java
@@ -1,4 +1,4 @@
-package object;
+package entity;
import javax.persistence.Column;
import javax.persistence.Entity;
@@ -22,4 +22,8 @@
@Column(name = "tag", length = 100)
public String posttag;
+
+ // 添加默认无参构造函数,JPA规范要求
+ public Notice() {
+ }
}
diff --git a/src/main/java/object/Post.java b/src/main/java/entity/Post.java
similarity index 98%
rename from src/main/java/object/Post.java
rename to src/main/java/entity/Post.java
index 463e242..1593ca0 100644
--- a/src/main/java/object/Post.java
+++ b/src/main/java/entity/Post.java
@@ -1,4 +1,4 @@
-package object;
+package entity;
import java.util.Date;
diff --git a/src/main/java/object/PostReply.java b/src/main/java/entity/PostReply.java
similarity index 98%
rename from src/main/java/object/PostReply.java
rename to src/main/java/entity/PostReply.java
index bc95625..2845f10 100644
--- a/src/main/java/object/PostReply.java
+++ b/src/main/java/entity/PostReply.java
@@ -1,4 +1,4 @@
-package object;
+package entity;
import java.util.Date;
import javax.persistence.*;
diff --git a/src/main/java/object/Profile.java b/src/main/java/entity/Profile.java
similarity index 98%
rename from src/main/java/object/Profile.java
rename to src/main/java/entity/Profile.java
index c8469a9..2ff6979 100644
--- a/src/main/java/object/Profile.java
+++ b/src/main/java/entity/Profile.java
@@ -1,4 +1,4 @@
-package object;
+package entity;
import javax.persistence.Column;
import javax.persistence.Entity;
diff --git a/src/main/java/object/Seed.java b/src/main/java/entity/Seed.java
similarity index 98%
rename from src/main/java/object/Seed.java
rename to src/main/java/entity/Seed.java
index b4f4c16..eabf49d 100644
--- a/src/main/java/object/Seed.java
+++ b/src/main/java/entity/Seed.java
@@ -1,4 +1,4 @@
-package object;
+package entity;
import java.util.Date;
diff --git a/src/main/java/entity/SubmitSeed.java b/src/main/java/entity/SubmitSeed.java
new file mode 100644
index 0000000..2cec77d
--- /dev/null
+++ b/src/main/java/entity/SubmitSeed.java
@@ -0,0 +1,34 @@
+package entity;
+
+import javax.persistence.*;
+
+@Entity
+@Table(name = "SubmitSeed")
+public class SubmitSeed {
+
+ @EmbeddedId
+ private SubmitSeedId id;
+
+ @ManyToOne(optional = false)
+ @JoinColumn(name = "beg_id", referencedColumnName = "beg_id", foreignKey = @ForeignKey(name = "fk_ss_beg"))
+ private BegInfo begInfo;
+
+ @ManyToOne(optional = false)
+ @JoinColumn(name = "seed_id", referencedColumnName = "seed_id", foreignKey = @ForeignKey(name = "fk_ss_seed"))
+ private Seed seed;
+
+ @Column(name = "votes", nullable = false)
+ private int votes;
+
+ public SubmitSeed() {}
+
+ public SubmitSeedId getId() {
+ return id;
+ }
+
+ public void setId(SubmitSeedId id) {
+ this.id = id;
+ }
+
+ // getters and setters for begInfo, seed, and votes
+}
diff --git a/src/main/java/entity/SubmitSeedId.java b/src/main/java/entity/SubmitSeedId.java
new file mode 100644
index 0000000..f071ac3
--- /dev/null
+++ b/src/main/java/entity/SubmitSeedId.java
@@ -0,0 +1,47 @@
+package entity;
+
+import java.io.Serializable;
+import java.util.Objects;
+
+public class SubmitSeedId implements Serializable {
+ private String begId;
+ private String seedId;
+
+ public SubmitSeedId() {}
+
+ public SubmitSeedId(String begId, String seedId) {
+ this.begId = begId;
+ this.seedId = seedId;
+ }
+
+ // 重写 equals 和 hashCode 方法
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) return true;
+ if (o == null || getClass() != o.getClass()) return false;
+ SubmitSeedId that = (SubmitSeedId) o;
+ return begId.equals(that.begId) && seedId.equals(that.seedId);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(begId, seedId);
+ }
+
+ // getters and setters
+ public String getBegId() {
+ return begId;
+ }
+
+ public void setBegId(String begId) {
+ this.begId = begId;
+ }
+
+ public String getSeedId() {
+ return seedId;
+ }
+
+ public void setSeedId(String seedId) {
+ this.seedId = seedId;
+ }
+}
diff --git a/src/main/java/object/TTorent.java b/src/main/java/entity/TTorent.java
similarity index 64%
rename from src/main/java/object/TTorent.java
rename to src/main/java/entity/TTorent.java
index be9051d..167e853 100644
--- a/src/main/java/object/TTorent.java
+++ b/src/main/java/entity/TTorent.java
@@ -1,4 +1,4 @@
-package object;
+package entity;
public class TTorent{
diff --git a/src/main/java/object/TransRecord.java b/src/main/java/entity/TransRecord.java
similarity index 98%
rename from src/main/java/object/TransRecord.java
rename to src/main/java/entity/TransRecord.java
index 7f1c800..cf7ac7f 100644
--- a/src/main/java/object/TransRecord.java
+++ b/src/main/java/entity/TransRecord.java
@@ -1,4 +1,4 @@
-package object;
+package entity;
import javax.persistence.Column;
import javax.persistence.Entity;
diff --git a/src/main/java/object/TransportId.java b/src/main/java/entity/TransportId.java
similarity index 98%
rename from src/main/java/object/TransportId.java
rename to src/main/java/entity/TransportId.java
index 8e102d3..f79962f 100644
--- a/src/main/java/object/TransportId.java
+++ b/src/main/java/entity/TransportId.java
@@ -1,4 +1,4 @@
-package object;
+package entity;
import java.io.Serializable;
import java.util.Objects;
diff --git a/src/main/java/entity/User.java b/src/main/java/entity/User.java
new file mode 100644
index 0000000..603ec85
--- /dev/null
+++ b/src/main/java/entity/User.java
@@ -0,0 +1,57 @@
+package entity;
+
+import javax.persistence.CascadeType;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.FetchType;
+import javax.persistence.Id;
+import javax.persistence.OneToOne;
+import javax.persistence.Table;
+import javax.persistence.Transient;
+
+import com.querydsl.core.annotations.QueryEntity;
+
+@QueryEntity
+@Entity(name="User")
+@Table(name = "User")
+public class User {
+ @Id
+ @Column(name = "user_id", length = 36, nullable = false)
+ private String userid;
+
+ @Column(name = "email", nullable = false, length = 255, unique = true)
+ private String email;
+
+ @Column(name = "username", length = 100, nullable = false)
+ public String username;
+
+ @Column(name = "password", length = 255, nullable = false)
+ public String password;
+
+ @Column(name = "gender", nullable = false)
+ public String sex;
+
+ @Transient
+ public String age;
+
+ @Column(name = "school")
+ public String school;
+
+ @Column(name = "avatar_url")
+ public String pictureurl;
+
+ @Column(name = "bio")
+ public String profile;
+
+ @Column(name = "account_status", nullable = false)
+ public boolean accountstate;
+
+ @Column(name = "invite_left", nullable = false)
+ public int invitetimes;
+
+ @OneToOne(mappedBy = "user", cascade = CascadeType.ALL, fetch = FetchType.LAZY, optional = false)
+ public UserPT userPT;
+
+ // Constructors, getters, setters
+ public User() {}
+}
diff --git a/src/main/java/object/UserId.java b/src/main/java/entity/UserId.java
similarity index 97%
rename from src/main/java/object/UserId.java
rename to src/main/java/entity/UserId.java
index c68ce68..bc25675 100644
--- a/src/main/java/object/UserId.java
+++ b/src/main/java/entity/UserId.java
@@ -1,4 +1,4 @@
-package object;
+package entity;
import java.io.Serializable;
import java.util.Objects;
diff --git a/src/main/java/object/UserPT.java b/src/main/java/entity/UserPT.java
similarity index 72%
rename from src/main/java/object/UserPT.java
rename to src/main/java/entity/UserPT.java
index db3703f..bc5d455 100644
--- a/src/main/java/object/UserPT.java
+++ b/src/main/java/entity/UserPT.java
@@ -1,7 +1,9 @@
-package object;
+package entity;
+import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
+import javax.persistence.FetchType;
import javax.persistence.ForeignKey;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
@@ -9,16 +11,19 @@
import javax.persistence.OneToOne;
import javax.persistence.Table;
-@Entity
+import com.querydsl.core.annotations.QueryEntity;
+
+@QueryEntity
+@Entity(name="UserPT")
@Table(name = "UserPT")
public class UserPT {
@Id
@Column(name = "user_id", length = 36, nullable = false)
public String userid;
- @OneToOne(optional = false)
+ @OneToOne(optional = false, cascade = CascadeType.ALL, fetch = FetchType.LAZY)
@MapsId
- @JoinColumn(name = "user_id", referencedColumnName = "user_id", foreignKey = @ForeignKey(name = "fk_pt_user"))
+ @JoinColumn(name = "user_id", foreignKey = @ForeignKey(name = "fk_pt_user"))
public User user;
@Column(name = "magic", nullable = false)
diff --git a/src/main/java/entity/UserVotes.java b/src/main/java/entity/UserVotes.java
new file mode 100644
index 0000000..af28e3c
--- /dev/null
+++ b/src/main/java/entity/UserVotes.java
@@ -0,0 +1,44 @@
+package entity;
+
+import java.util.Date;
+import javax.persistence.*;
+
+@Entity
+@Table(name = "UserVotes")
+public class UserVotes {
+
+ @EmbeddedId
+ private UserVotesId id;
+
+ @ManyToOne(optional = false)
+ @JoinColumn(name = "user_id", referencedColumnName = "user_id",
+ foreignKey = @ForeignKey(name = "fk_user_votes_user"))
+ private User user;
+
+ @ManyToOne(optional = false)
+ @JoinColumn(name = "beg_id", referencedColumnName = "beg_id",
+ foreignKey = @ForeignKey(name = "fk_user_votes_beg"))
+ private BegInfo begInfo;
+
+ @ManyToOne(optional = false)
+ @JoinColumn(name = "seed_id", referencedColumnName = "seed_id",
+ foreignKey = @ForeignKey(name = "fk_user_votes_seed"))
+ private Seed seed;
+
+ @Column(name = "created_at", nullable = false)
+ @Temporal(TemporalType.TIMESTAMP)
+ private Date createdAt;
+
+ public UserVotes() {}
+
+ // getter and setter for the composite key and other fields
+ public UserVotesId getId() {
+ return id;
+ }
+
+ public void setId(UserVotesId id) {
+ this.id = id;
+ }
+
+ // getters and setters for user, begInfo, seed, createdAt
+}
diff --git a/src/main/java/entity/UserVotesId.java b/src/main/java/entity/UserVotesId.java
new file mode 100644
index 0000000..4c0ce5f
--- /dev/null
+++ b/src/main/java/entity/UserVotesId.java
@@ -0,0 +1,57 @@
+package entity;
+
+import java.io.Serializable;
+import java.util.Objects;
+
+public class UserVotesId implements Serializable {
+ private String userId;
+ private String begId;
+ private String seedId;
+
+ public UserVotesId() {}
+
+ public UserVotesId(String userId, String begId, String seedId) {
+ this.userId = userId;
+ this.begId = begId;
+ this.seedId = seedId;
+ }
+
+ // 重写 equals 和 hashCode 方法
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) return true;
+ if (o == null || getClass() != o.getClass()) return false;
+ UserVotesId that = (UserVotesId) o;
+ return userId.equals(that.userId) && begId.equals(that.begId) && seedId.equals(that.seedId);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(userId, begId, seedId);
+ }
+
+ // getters and setters
+ public String getUserId() {
+ return userId;
+ }
+
+ public void setUserId(String userId) {
+ this.userId = userId;
+ }
+
+ public String getBegId() {
+ return begId;
+ }
+
+ public void setBegId(String begId) {
+ this.begId = begId;
+ }
+
+ public String getSeedId() {
+ return seedId;
+ }
+
+ public void setSeedId(String seedId) {
+ this.seedId = seedId;
+ }
+}
diff --git a/src/main/java/entity/config.java b/src/main/java/entity/config.java
new file mode 100644
index 0000000..0cf39c1
--- /dev/null
+++ b/src/main/java/entity/config.java
@@ -0,0 +1,14 @@
+package entity;
+
+public class config {
+ public String TrackerURL;
+ public int FarmNumber;
+ public int FakeTime;
+ public int BegVote;
+ // 请根据实际环境修改为可达的地址
+ public String SqlURL = "192.168.5.9:3306";
+ public String Database = "pt_database";
+ public String TestDatabase = "pt_database_test";
+ public String SqlPassword = "123456";
+ public String SqlUsername = "root";
+}
diff --git a/src/main/java/object/SubmitSeed.java b/src/main/java/object/SubmitSeed.java
deleted file mode 100644
index 3b22811..0000000
--- a/src/main/java/object/SubmitSeed.java
+++ /dev/null
@@ -1,32 +0,0 @@
-package object;
-
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.ForeignKey;
-import javax.persistence.Id;
-import javax.persistence.JoinColumn;
-import javax.persistence.ManyToOne;
-import javax.persistence.Table;
-
-@Entity
-@Table(name = "SubmitSeed")
-public class SubmitSeed {
- @Id
- @Column(name = "beg_id", length = 64, nullable = false)
- public String begId;
-
- @ManyToOne(optional = false)
- @JoinColumn(name = "beg_id", referencedColumnName = "beg_id", foreignKey = @ForeignKey(name = "fk_ss_beg"), insertable = false, updatable = false)
- public BegInfo begInfo;
-
- @Id
- @Column(name = "seed_id", length = 64, nullable = false)
- public String seedId;
-
- @ManyToOne(optional = false)
- @JoinColumn(name = "seed_id", referencedColumnName = "seed_id", foreignKey = @ForeignKey(name = "fk_ss_seed"), insertable = false, updatable = false)
- public Seed seed;
-
- @Column(name = "votes", nullable = false)
- public int votes;
-}
\ No newline at end of file
diff --git a/src/main/java/object/User.java b/src/main/java/object/User.java
deleted file mode 100644
index 5e8dfaa..0000000
--- a/src/main/java/object/User.java
+++ /dev/null
@@ -1,43 +0,0 @@
-package object;
-
-import javax.persistence.*;
-
-@Entity
-@Table(name = "User", uniqueConstraints = @UniqueConstraint(name = "uniq_email", columnNames = {"email"}))
-@IdClass(UserId.class)
-public class User {
- @Id
- @Column(name = "user_id", length = 36, nullable = false)
- public String userid;
-
- @Column(name = "username", length = 100, nullable = false)
- public String username;
-
- @Column(name = "password", length = 255, nullable = false)
- public String password;
-
- @Column(name = "gender", nullable = false)
- public String sex;
-
- @Transient
- public String age;
-
- @Id
- @Column(name = "email", length = 255, nullable = false)
- public String email;
-
- @Column(name = "school")
- public String school;
-
- @Column(name = "avatar_url")
- public String pictureurl;
-
- @Column(name = "bio")
- public String profile;
-
- @Column(name = "account_status", nullable = false)
- public boolean accountstate;
-
- @Column(name = "invite_left", nullable = false)
- public int invitetimes;
-}
diff --git a/src/main/java/object/UserVotes.java b/src/main/java/object/UserVotes.java
deleted file mode 100644
index 813c292..0000000
--- a/src/main/java/object/UserVotes.java
+++ /dev/null
@@ -1,42 +0,0 @@
-package object;
-
-import java.util.Date;
-import javax.persistence.*;
-
-@Entity
-@Table(name = "UserVotes")
-public class UserVotes {
- @Id
- @Column(name = "user_id", length = 36, nullable = false)
- public String userId;
-
- @ManyToOne(optional = false)
- @JoinColumn(name = "user_id", referencedColumnName = "user_id",
- foreignKey = @ForeignKey(name = "fk_user_votes_user"),
- insertable = false, updatable = false)
- public User user;
-
- @Id
- @Column(name = "beg_id", length = 64, nullable = false)
- public String begId;
-
- @ManyToOne(optional = false)
- @JoinColumn(name = "beg_id", referencedColumnName = "beg_id",
- foreignKey = @ForeignKey(name = "fk_user_votes_beg"),
- insertable = false, updatable = false)
- public BegInfo begInfo;
-
- @Id
- @Column(name = "seed_id", length = 64, nullable = false)
- public String seedId;
-
- @ManyToOne(optional = false)
- @JoinColumn(name = "seed_id", referencedColumnName = "seed_id",
- foreignKey = @ForeignKey(name = "fk_user_votes_seed"),
- insertable = false, updatable = false)
- public Seed seed;
-
- @Column(name = "created_at", nullable = false)
- @Temporal(TemporalType.TIMESTAMP)
- public Date createdAt;
-}
diff --git a/src/main/java/object/config.java b/src/main/java/object/config.java
deleted file mode 100644
index a620518..0000000
--- a/src/main/java/object/config.java
+++ /dev/null
@@ -1,11 +0,0 @@
-package object;
-
-public class config {
- public String TrackerURL;
- public int FarmNumber;
- public int FakeTime;
- public int BegVote;
- public String SqlURL="192.168.5.9:3306";
- public String Database="pt_database";
- public String TestDatabase="pt_database_test";
-}
diff --git a/src/main/java/tracker/Tracker.java b/src/main/java/tracker/Tracker.java
index 8addf61..d53c258 100644
--- a/src/main/java/tracker/Tracker.java
+++ b/src/main/java/tracker/Tracker.java
@@ -1,19 +1,39 @@
package tracker;
import java.io.File;
+import java.util.HashMap;
+import java.util.Map;
+
import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.EntityTransaction;
import javax.persistence.Persistence;
+
import com.querydsl.jpa.impl.JPAUpdateClause;
-import object.QUserPT;
-import object.UserPT;
-import object.TTorent;
-import object.TransRecord;
+
+import entity.TTorent;
+import entity.TransRecord;
+import entity.config;
+import entity.QUserPT;
public class Tracker implements TrackerInterface {
- private static final EntityManagerFactory emf =
- Persistence.createEntityManagerFactory("myPersistenceUnit");
+ private final EntityManagerFactory emf;
+
+ // 默认构造:产线数据库
+ public Tracker() {
+ 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 Tracker(EntityManagerFactory emf) {
+ this.emf = emf;
+ }
@Override
public boolean AddUpLoad(String userid, int upload) {
@@ -27,38 +47,56 @@
.set(q.upload, q.upload.add(upload))
.execute();
tx.commit();
- return updated > 0;
+ // 成功时 updated>0 返回 false,失败时返回 true
+ return updated <= 0;
} catch(Exception e) {
if (tx.isActive()) tx.rollback();
- return false;
+ return true;
} finally {
em.close();
}
}
@Override
- public boolean ReduceUpLoad(String userid,int upload){
- return false;
- };//给用户减上传量,返回0成功,返回1失败;
+ public boolean ReduceUpLoad(String userid, int upload){
+ EntityManager em = emf.createEntityManager();
+ EntityTransaction tx = em.getTransaction();
+ try {
+ tx.begin();
+ QUserPT q = QUserPT.userPT;
+ long updated = new JPAUpdateClause(em, q)
+ .where(q.userid.eq(userid))
+ .set(q.upload, q.upload.subtract(upload))
+ .execute();
+ tx.commit();
+ // 成功时 updated>0 返回 false,失败时返回 true
+ return updated <= 0;
+ } catch(Exception e) {
+ if (tx.isActive()) tx.rollback();
+ return true;
+ } finally {
+ em.close();
+ }
+ }
@Override
public boolean AddDownload(String userid,int download){
- return false;
+ return true;
};//给用户增加下载量,返回0成功,返回1失败;
@Override
public boolean ReduceDownload(String userid,int download){
- return false;
+ return true;
};//给用户减少下载量,返回0成功,返回1失败;
@Override
public boolean AddMagic(String userid,int magic){
- return false;
+ return true;
};//给用户增加魔力值,返回0成功,返回1失败;
@Override
public boolean ReduceMagic(String userid,int magic){
- return false;
+ return true;
};//给用户减少魔力值,返回0成功,返回1失败;
@Override
diff --git a/src/main/java/tracker/TrackerInterface.java b/src/main/java/tracker/TrackerInterface.java
index 872d9ad..0c2df5c 100644
--- a/src/main/java/tracker/TrackerInterface.java
+++ b/src/main/java/tracker/TrackerInterface.java
@@ -1,8 +1,8 @@
package tracker;
import java.io.File;
-import object.TTorent;
-import object.TransRecord;
+import entity.TTorent;
+import entity.TransRecord;
public interface TrackerInterface{
public boolean AddUpLoad(String userid,int upload);//给用户新增上传量,返回0成功,返回1失败;
public boolean ReduceUpLoad(String userid,int upload);//给用户减上传量,返回0成功,返回1失败;
diff --git a/src/main/java/vip/VipInterface.java b/src/main/java/vip/VipInterface.java
index 0ad764f..fd3413c 100644
--- a/src/main/java/vip/VipInterface.java
+++ b/src/main/java/vip/VipInterface.java
@@ -1,7 +1,9 @@
package vip;
-import object.TTorent;
-import object.Seed;
import org.apache.commons.lang3.tuple.Pair;
+
+import entity.Seed;
+import entity.TTorent;
+
import java.io.File;
public interface VipInterface{