--
You received this message because you are subscribed to the Google Groups "PODAM" group.
To unsubscribe from this group and stop receiving emails from it, send an email to podam+un...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
public static class XMLGregorianCalendarImpl extends XMLGregorianCalendar {
public static XMLGregorianCalendar getInstance() throws DatatypeConfigurationException {
DatatypeFactory factory = DatatypeFactory.newInstance();
return factory.newXMLGregorianCalendar(new GregorianCalendar());
}
...
}
RandomDataProviderStrategy strategy = RandomDataProviderStrategy.getInstance();
PodamFactory podam = new PodamFactoryImpl(strategy);
strategy.addSpecific(XMLGregorianCalendar.class, XMLGregorianCalendarImpl.class);
XMLGregorianCalendar pojo = podam.manufacturePojo(XMLGregorianCalendar.class);
private final static PodamFactory externalFactory =
new PodamFactory() {
@Override
public <T> T manufacturePojo(Class<T> pojoClass,
Type... genericTypeArgs) {
try {
if (pojoClass.isAssignableFrom(XMLGregorianCalendar.class)) {
DatatypeFactory factory = DatatypeFactory.newInstance();
@SuppressWarnings("unchecked")
T calendar = (T) factory.newXMLGregorianCalendar(new GregorianCalendar());
LOG.info("Externally created XMLGregorianCalendar");
return calendar;
} else if (pojoClass.isAssignableFrom(Duration.class)) {
DatatypeFactory factory = DatatypeFactory.newInstance();
@SuppressWarnings("unchecked")
T duration = (T) factory.newDuration(0L);
LOG.info("Externally created Duration");
return duration;
}
} catch (Exception e) {
throw new IllegalStateException("Manufacturing failed", e);
}
return null;
}
@Override
public <T> T manufacturePojo(Class<T> pojoClass) {
return this.manufacturePojo(pojoClass, NO_TYPES);
}
@Override
public <T> T manufacturePojoWithFullData(Class<T> pojoClass,
Type... genericTypeArgs) {
return this.manufacturePojo(pojoClass, genericTypeArgs);
}
@Override
public DataProviderStrategy getStrategy() {
return null;
}
@Override
public ClassInfoStrategy getClassStrategy() {
return null;
}
@Override
public PodamFactory setClassStrategy(
ClassInfoStrategy classInfoStrategy) {
return null;
}
};
private final static PodamFactory podam = new PodamFactoryImpl(externalFactory);
XMLGregorianCalendar pojo = podam.manufacturePojo(XMLGregorianCalendar.class);
--
RandomDataProviderStrategy strategy = new RandomDataProviderStrategyImpl();strategy.addOrReplaceSpecific(XMLGregorianCalendar.class, XMLGregorianCalendarImpl.class); PodamFactory factory = new PodamFactoryImpl(strategy);XMLGregorianCalendar pojo = factory.manufacturePojo(XMLGregorianCalendar.class);
To unsubscribe from this group and stop receiving emails from it, send an email to podam+unsubscribe@googlegroups.com.