[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[aspectj-users] instance tracking example in dev notebook

The instance tracking example in the developer's notebook at


is very cool, but it should use WeakHashMap<T, Boolean> internally rather than
Set<WeakReference<T>>. As it stands, null references will hang around forever.
I know it's just an illustration, but I bet lots of folks will copy it blindly.

  public aspect InstanceTracking<T> pertypewithin(org.xyz..*) {

      private Map<T, Boolean> instances = new WeakHashMap<T, Boolean>();

      after() returning(T t) : execution(new(..)) {
          instances.put(t, true);

      public Set<T> getInstances() {
          return instances.keySet();