r3734 - trunk/src/main/java/fr/ifremer/isisfish/aspect
Author: echatellier Date: 2012-08-27 17:05:05 +0200 (Mon, 27 Aug 2012) New Revision: 3734 Url: http://forge.codelutin.com/repositories/revision/isis-fish/3734 Log: Improve cache key length Modified: trunk/src/main/java/fr/ifremer/isisfish/aspect/Cache.java Modified: trunk/src/main/java/fr/ifremer/isisfish/aspect/Cache.java =================================================================== --- trunk/src/main/java/fr/ifremer/isisfish/aspect/Cache.java 2012-08-27 15:04:12 UTC (rev 3733) +++ trunk/src/main/java/fr/ifremer/isisfish/aspect/Cache.java 2012-08-27 15:05:05 UTC (rev 3734) @@ -25,6 +25,7 @@ package fr.ifremer.isisfish.aspect; +import java.lang.reflect.Field; import java.lang.reflect.Method; import java.util.ArrayList; import java.util.Arrays; @@ -44,9 +45,11 @@ import org.codehaus.aspectwerkz.joinpoint.JoinPoint; import org.codehaus.aspectwerkz.joinpoint.MethodRtti; import org.codehaus.aspectwerkz.joinpoint.MethodSignature; +import org.nuiton.topia.persistence.TopiaEntity; import fr.ifremer.isisfish.IsisFishRuntimeException; import fr.ifremer.isisfish.simulator.SimulationContext; +import fr.ifremer.isisfish.types.TimeStep; import fr.ifremer.isisfish.util.Nocache; /** @@ -180,13 +183,20 @@ Method method = ((MethodSignature)jp.getSignature()).getMethod(); Object[] args = ((MethodRtti)jp.getRtti()).getParameterValues(); - String result = method.toString(); + //String result = method.toString(); + String result = method.getDeclaringClass().getSimpleName() + "." + + method.getName(); for (Object o : args) { result += ";"; if (o instanceof Number || o instanceof String) { result += o.toString(); + } else if (o instanceof TimeStep) { + result += ((TimeStep)o).getStep(); + } else if (o instanceof TopiaEntity) { + result += ((TopiaEntity)o).getTopiaId().replaceAll("fr.ifremer.isisfish.entities.", ""); } else { result += ObjectUtils.identityToString(o); + result = result.replaceAll("org.nuiton.math.matrix.", ""); } }
participants (1)
-
echatellier@users.forge.codelutin.com