/** @see com.emc.atmos.sync.plugins.SyncPlugin#filter(com.emc.atmos.sync.plugins.SyncObject) */ @Override public synchronized void filter(SyncObject obj) { try { if (out == null) { out = new PrintWriter(new BufferedWriter(new FileWriter(new File(filename)))); } } catch (IOException e) { throw new RuntimeException("Error writing to ID log file: " + e.getMessage(), e); } try { getNext().filter(obj); out.println(obj.getSourceURI().toASCIIString() + ", " + obj.getDestURI().toASCIIString()); } catch (RuntimeException e) { // Log the error out.println(obj.getSourceURI().toASCIIString() + ", FAILED: " + e.getMessage()); throw e; } }