22 Commits

Author SHA1 Message Date
Sola
a121cd3f28 no message 2016-03-25 06:14:03 +08:00
Sola
d88eddc1c4 no message 2016-03-25 06:07:56 +08:00
Sola
0723dd6090 no message 2016-03-25 05:58:13 +08:00
Sola
8551dce821 no message 2016-03-25 05:54:58 +08:00
Sola
ec1336e86a no message 2016-03-25 05:50:07 +08:00
Sola
6a0e67a3d9 no message 2016-03-25 05:40:00 +08:00
Sola
391a353aee no message 2016-03-25 05:32:57 +08:00
Sola
b8bdca7b37 no message 2016-03-25 05:28:33 +08:00
Sola
1dcd07c137 no message 2016-03-25 05:13:32 +08:00
Sola
edba6c2b0e no message 2016-03-25 05:10:14 +08:00
Sola
bbbe15ff9b no message 2016-03-25 05:06:26 +08:00
Sola
ebf5c4f66a no message 2016-03-25 05:03:51 +08:00
Sola
2c1f589ab2 no message 2016-03-25 04:59:27 +08:00
Sola
cd5733e64a no message 2016-03-25 04:50:33 +08:00
Sola
3212a2fe04 no message 2016-03-25 04:41:42 +08:00
Sola
e20d550dfa no message 2016-03-25 04:29:00 +08:00
Sola
2eb5b1344f no message 2016-03-25 04:17:21 +08:00
Sola
1835510283 no message 2016-03-25 04:15:23 +08:00
Sola
e46257d152 no message 2016-03-25 04:12:04 +08:00
Sola
153997d684 no message 2016-03-25 04:06:58 +08:00
Sola
42c966394e no message 2016-03-25 04:01:52 +08:00
Sola
0e4efc55a1 no message 2016-03-25 03:55:36 +08:00
16 changed files with 51 additions and 21 deletions

View File

@@ -1,5 +1,18 @@
package love.sola.netsupport.api;
import love.sola.netsupport.api.manager.GetUser;
import love.sola.netsupport.api.manager.TicketPush;
import love.sola.netsupport.api.root.DashBoard;
import love.sola.netsupport.api.root.FlushCache;
import love.sola.netsupport.api.root.SetPassword;
import love.sola.netsupport.api.stuff.TicketLog;
import love.sola.netsupport.api.stuff.TicketLookup;
import love.sola.netsupport.api.stuff.TicketTrack;
import love.sola.netsupport.api.stuff.TicketUpdate;
import love.sola.netsupport.api.user.ProfileModify;
import love.sola.netsupport.api.user.Register;
import love.sola.netsupport.api.user.TicketQuery;
import love.sola.netsupport.api.user.TicketSubmit;
import love.sola.netsupport.enums.Access;
import love.sola.netsupport.wechat.Command;
import me.chanjar.weixin.common.session.WxSession;
@@ -29,4 +42,21 @@ public abstract class API {
'}';
}
public static final Class[] LIST = new Class[]{
GetUser.class,
TicketPush.class,
DashBoard.class,
FlushCache.class,
SetPassword.class,
TicketLog.class,
TicketLookup.class,
TicketTrack.class,
TicketUpdate.class,
ProfileModify.class,
Register.class,
TicketQuery.class,
TicketSubmit.class,
CheckSession.class
};
}

View File

@@ -1,6 +1,5 @@
package love.sola.netsupport.api;
import com.google.common.reflect.ClassPath;
import com.google.gson.Gson;
import love.sola.netsupport.enums.Access;
import love.sola.netsupport.enums.Attribute;
@@ -21,7 +20,6 @@ import java.io.PrintWriter;
import java.text.ParseException;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
/**
* ***********************************************
@@ -37,10 +35,11 @@ public class APIRouter extends HttpServlet {
public APIRouter() {
try {
ClassPath path = ClassPath.from(getClass().getClassLoader());
Set<ClassPath.ClassInfo> classes = path.getTopLevelClassesRecursive(getClass().getPackage().getName());
for (ClassPath.ClassInfo info : classes) {
Class<?> clz = info.load();
// ClassPath path = ClassPath.from(getServletContext().getClassLoader());
// Set<ClassPath.ClassInfo> classes = path.getTopLevelClasses();
// for (ClassPath.ClassInfo info : classes) {
for (Class<?> clz : API.LIST) {
// Class<?> clz = info.load();
if (!API.class.equals(clz) && API.class.isAssignableFrom(clz)) {
try {
System.out.print("Loading API: " + clz.getName());
@@ -66,9 +65,10 @@ public class APIRouter extends HttpServlet {
resp.addHeader("Access-Control-Allow-Origin", "*");
Object obj = null;
try {
API api = nodes.get(req.getRequestURI());
API api = nodes.get(req.getPathInfo());
if (api == null) {
resp.sendError(HttpServletResponse.SC_FORBIDDEN);
// obj = req.getPathInfo();
return;
}
WxSession session = getSession(req);

View File

@@ -17,7 +17,7 @@ import java.util.Map;
public class CheckSession extends API {
public CheckSession() {
url = "/api/checksession";
url = "/checksession";
access = Access.GUEST;
authorize = null;
}

View File

@@ -19,7 +19,7 @@ import javax.servlet.http.HttpServletRequest;
public class GetUser extends API {
public GetUser() {
url = "/api/admin/getuser";
url = "/admin/getuser";
access = Access.LEADER;
authorize = Command.LOGIN;
}

View File

@@ -26,7 +26,7 @@ import javax.servlet.http.HttpServletRequest;
public class TicketPush extends API {
public TicketPush() {
url = "/api/admin/ticketpush";
url = "/admin/ticketpush";
access = Access.LEADER;
authorize = Command.LOGIN;
}

View File

@@ -19,7 +19,7 @@ import java.util.Enumeration;
public class DashBoard extends API {
public DashBoard() {
url = "/api/root/dashboard";
url = "/root/dashboard";
access = Access.ROOT;
authorize = Command.LOGIN;
}

View File

@@ -18,7 +18,7 @@ import javax.servlet.http.HttpServletRequest;
public class FlushCache extends API {
public FlushCache() {
url = "/api/root/flushcache";
url = "/root/flushcache";
access = Access.ROOT;
authorize = Command.LOGIN;
}

View File

@@ -21,7 +21,7 @@ import javax.servlet.http.HttpServletRequest;
public class SetPassword extends API {
public SetPassword() {
url = "/api/root/setpass";
url = "/root/setpass";
access = Access.ROOT;
authorize = Command.LOGIN;
}

View File

@@ -28,7 +28,7 @@ public class TicketLog extends API {
public static SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMdd");
public TicketLog() {
url = "/api/admin/ticketlog";
url = "/admin/ticketlog";
access = Access.MEMBER;
authorize = Command.LOGIN;
}

View File

@@ -19,7 +19,7 @@ import javax.servlet.http.HttpServletRequest;
public class TicketLookup extends API {
public TicketLookup() {
url = "/api/admin/ticketlookup";
url = "/admin/ticketlookup";
access = Access.MEMBER;
authorize = Command.LOGIN;
}

View File

@@ -18,7 +18,7 @@ import javax.servlet.http.HttpServletRequest;
public class TicketTrack extends API {
public TicketTrack() {
url = "/api/admin/tickettrack";
url = "/admin/tickettrack";
access = Access.MEMBER;
authorize = Command.LOGIN;
}

View File

@@ -24,7 +24,7 @@ import java.util.Date;
public class TicketUpdate extends API {
public TicketUpdate() {
url = "/api/admin/ticketupdate";
url = "/admin/ticketupdate";
access = Access.MEMBER;
authorize = Command.LOGIN;
}

View File

@@ -24,7 +24,7 @@ import static love.sola.netsupport.util.Checker.*;
public class ProfileModify extends API {
public ProfileModify() {
url = "/api/profilemodify";
url = "/profilemodify";
access = Access.USER;
authorize = Command.PROFILE;
}

View File

@@ -32,7 +32,7 @@ import static love.sola.netsupport.util.Checker.*;
public class Register extends API {
public Register() {
url = "/api/register";
url = "/register";
access = Access.GUEST;
authorize = Command.REGISTER;
}

View File

@@ -24,7 +24,7 @@ import javax.servlet.http.HttpServletRequest;
public class TicketQuery extends API {
public TicketQuery() {
url = "/api/ticketquery";
url = "/ticketquery";
access = Access.USER;
authorize = Command.QUERY;
}

View File

@@ -24,7 +24,7 @@ import javax.servlet.http.HttpServletRequest;
public class TicketSubmit extends API {
public TicketSubmit() {
url = "/api/ticketsubmit";
url = "/ticketsubmit";
access = Access.USER;
authorize = Command.SUBMIT;
}