@Override public synchronized void shutdown() throws Exception { super.shutdown(); // make a copy so trajectories can remove themselves final List<Trajectory> list = new ArrayList<Trajectory>(trajectories); // remove all trajectories for (final Trajectory t : list) { t.cancel(); } assert trajectories.size() == 0; timer.cancel(); }
@Override public synchronized void init(final PluginManager manager) throws Exception { super.init(manager); timer = new Timer("ObjectPainter-Timer"); }