@@ -0,0 +1,860 @@
+package com.custardsource.parfait.dxm;%0A%0Aimport java.util.Set;%0Aimport java.util.concurrent.atomic.AtomicInteger;%0A%0Aimport org.apache.log4j.Logger;%0A%0A/**%0A * %7B@link IdentifierSource%7D which logs a warning on every generation, and returns a dummy value.%0A * Useful for generating a list of IDs which should later be explicity-provided.%0A */%0Apublic class WarningIdentifierSource implements IdentifierSource %7B%0A    private static final Logger LOG = Logger.getLogger(WarningIdentifierSource.class);%0A%0A    private final AtomicInteger nextId;%0A%0A    public WarningIdentifierSource(int initialId) %7B%0A        nextId = new AtomicInteger(initialId);%0A    %7D%0A%0A    @Override%0A    public int calculateId(String name, Set%3CInteger%3E usedIds) %7B%0A        LOG.warn(%22No identifier provided for value %22 + name + %22; please specify an explicit ID%22);%0A        return nextId.getAndIncrement();%0A    %7D%0A%0A%7D%0A

Add WarningIdentifierSource