@Override protected boolean supports(Class<?> target) { return this.jdb.findJClass(target) != null; }
/** * Constructor. * * <p> * Uses a default {@code storageIdMapper} that creates new instances for imported objects via * {@link JTransaction#create(Class)}, using the Permazen model type found by * {@link Permazen#findJClass(Class)} when given the POJO's class. * * @param jtx the transaction in which to import objects * @throws IllegalArgumentException if {@code jtx} is null */ public ImportContext(JTransaction jtx) { Preconditions.checkArgument(jtx != null); this.jtx = jtx; this.storageIdMapper = obj -> { final JClass<?> modelClass = this.jtx.jdb.findJClass(obj.getClass()); if (modelClass == null) throw new IllegalArgumentException("no Permazen model class corresponds to POJO " + obj.getClass()); return ((JObject)this.jtx.create(modelClass)).getObjId(); }; }