Browse Source

移除clazz缓存

xueli.xue 9 years ago
parent
commit
66adbd687f
1 changed files with 12 additions and 35 deletions
  1. 12 35
      xxl-job-client/src/main/java/com/xxl/job/client/glue/GlueFactory.java

+ 12 - 35
xxl-job-client/src/main/java/com/xxl/job/client/glue/GlueFactory.java View File

@@ -101,48 +101,25 @@ public class GlueFactory implements ApplicationContextAware {
101 101
 	}
102 102
 	
103 103
 	// ----------------------------- load instance -----------------------------
104
-	
105
-	// load class, 
106
-	public static String generateClassCacheKey(String job_group, String job_name){
107
-		return job_group.concat("_").concat(job_name).concat("_class");
108
-	}
109
-	public Class<?> loadClass(String job_group, String job_name) throws Exception{
104
+	// load new instance, prototype
105
+	public IJobHandler loadNewInstance(String job_group, String job_name) throws Exception{
110 106
 		if (job_group==null || job_group.trim().length()==0 || job_name==null || job_name.trim().length()==0) {
111 107
 			return null;
112 108
 		}
113
-		String cacheClassKey = generateClassCacheKey(job_group, job_name);
114
-		Object cacheClass = LocalCache.getInstance().get(cacheClassKey);
115
-		if (cacheClass != null) {
116
-			return (Class<?>) cacheClass;
117
-		}
118 109
 		String codeSource = glueLoader.load(job_group, job_name);
119 110
 		if (codeSource!=null && codeSource.trim().length()>0) {
120 111
 			Class<?> clazz = groovyClassLoader.parseClass(codeSource);
121
-			if (clazz!=null) {
122
-				LocalCache.getInstance().set(cacheClassKey, clazz, cacheTimeout);
123
-				logger.info(">>>>>>>>>>>> xxl-glue, fresh class, cacheClassKey:{}", cacheClassKey);
124
-				return clazz;
125
-			}
126
-		}
127
-		return null;
128
-	}
129
-	
130
-	// load new instance, prototype
131
-	public IJobHandler loadNewInstance(String job_group, String job_name) throws Exception{
132
-		if (job_group==null || job_group.trim().length()==0 || job_name==null || job_name.trim().length()==0) {
133
-			return null;
134
-		}
135
-		Class<?> clazz = loadClass(job_group, job_name);
136
-		if (clazz!=null) {
137
-			Object instance = clazz.newInstance();
138
-			if (instance!=null) {
139
-				if (!(instance instanceof IJobHandler)) {
140
-					throw new IllegalArgumentException(">>>>>>>>>>> xxl-glue, loadNewInstance error, "
141
-							+ "cannot convert from instance["+ instance.getClass() +"] to IJobHandler");
112
+			if (clazz != null) {
113
+				Object instance = clazz.newInstance();
114
+				if (instance!=null) {
115
+					if (instance instanceof IJobHandler) {
116
+						this.injectService(instance);
117
+						return (IJobHandler) instance;
118
+					} else {
119
+						throw new IllegalArgumentException(">>>>>>>>>>> xxl-glue, loadNewInstance error, "
120
+								+ "cannot convert from instance["+ instance.getClass() +"] to IJobHandler");
121
+					}
142 122
 				}
143
-				
144
-				this.injectService(instance);
145
-				return (IJobHandler) instance;
146 123
 			}
147 124
 		}
148 125
 		throw new IllegalArgumentException(">>>>>>>>>>> xxl-glue, loadNewInstance error, instance is null");