|
|
@@ -1,6 +1,9 @@
|
|
1
|
1
|
package com.ruoyi.common.log.aspect;
|
|
2
|
2
|
|
|
3
|
3
|
import java.lang.reflect.Method;
|
|
|
4
|
+import java.util.Collection;
|
|
|
5
|
+import java.util.Iterator;
|
|
|
6
|
+import java.util.Map;
|
|
4
|
7
|
import javax.servlet.http.HttpServletRequest;
|
|
5
|
8
|
import javax.servlet.http.HttpServletResponse;
|
|
6
|
9
|
import org.aspectj.lang.JoinPoint;
|
|
|
@@ -209,8 +212,31 @@ public class LogAspect
|
|
209
|
212
|
* @param o 对象信息。
|
|
210
|
213
|
* @return 如果是需要过滤的对象,则返回true;否则返回false。
|
|
211
|
214
|
*/
|
|
|
215
|
+ @SuppressWarnings("rawtypes")
|
|
212
|
216
|
public boolean isFilterObject(final Object o)
|
|
213
|
217
|
{
|
|
|
218
|
+ Class<?> clazz = o.getClass();
|
|
|
219
|
+ if (clazz.isArray())
|
|
|
220
|
+ {
|
|
|
221
|
+ return clazz.getComponentType().isAssignableFrom(MultipartFile.class);
|
|
|
222
|
+ }
|
|
|
223
|
+ else if (Collection.class.isAssignableFrom(clazz))
|
|
|
224
|
+ {
|
|
|
225
|
+ Collection collection = (Collection) o;
|
|
|
226
|
+ for (Iterator iter = collection.iterator(); iter.hasNext();)
|
|
|
227
|
+ {
|
|
|
228
|
+ return iter.next() instanceof MultipartFile;
|
|
|
229
|
+ }
|
|
|
230
|
+ }
|
|
|
231
|
+ else if (Map.class.isAssignableFrom(clazz))
|
|
|
232
|
+ {
|
|
|
233
|
+ Map map = (Map) o;
|
|
|
234
|
+ for (Iterator iter = map.entrySet().iterator(); iter.hasNext();)
|
|
|
235
|
+ {
|
|
|
236
|
+ Map.Entry entry = (Map.Entry) iter.next();
|
|
|
237
|
+ return entry.getValue() instanceof MultipartFile;
|
|
|
238
|
+ }
|
|
|
239
|
+ }
|
|
214
|
240
|
return o instanceof MultipartFile || o instanceof HttpServletRequest || o instanceof HttpServletResponse;
|
|
215
|
241
|
}
|
|
216
|
242
|
}
|