Hi Yogi, You can take a look at the unit tests for PojoUtils (PojoUtilsTest).. That has ample examples describing the usage for various different cases.
Thanks, Chinmay. On Mon, May 9, 2016 at 11:06 AM, Pradeep A. Dalvi <p...@apache.org> wrote: > Try following: > > partitionColumnValue = (String)(getters.get(i).get(tuple)); > > On Mon, May 9, 2016 at 10:59 AM, Yogi Devendra <yogideven...@apache.org> > wrote: > >> Hi, >> >> I am using code similar to following for generating getters. >> --- >> Class<?> fqcn = tuple.getClass(); >> getter = PojoUtils.createGetter(fqcn, "aPartyPhone", String.class); >> logger.debug("getter {}", getter.getClass().getCanonicalName()); >> getters.add(getter); >> --- >> >> What should be the return type of this getter? And how should I use this >> getter? I am using it as follows: >> --- >> partitionColumnValue = ((Getter<Object, >> String>)getters.get(i)).get(tuple); >> --- >> >> and getting following exception. >> --- >> java.lang.ClassCastException: SC cannot be cast to >> com.datatorrent.lib.util.PojoUtils$Getter >> --- >> >> Can you suggest correct way of using this getter? Here is the debug log >> for the same. >> --- >> 2016-05-09 10:41:55,296 DEBUG >> com.datatorrent.contrib.hive.FSPojoToHiveOperator: type >> com.datatorrent.contrib.hive.FSPojoToHiveOperator.FIELD_TYPE >> 2016-05-09 10:41:55,296 DEBUG com.datatorrent.lib.util.PojoUtils: class >> com.datatorrent.solution.objects.CDR aPartyPhone class java.lang.String >> interface com.datatorrent.lib.util.PojoUtils$Getter >> 2016-05-09 10:41:55,296 DEBUG >> com.datatorrent.lib.expression.JavaExpressionParser: >> com.datatorrent.solution.objects.CDR does not have field aPartyPhone. >> Proceeding to locate a getter method. >> 2016-05-09 10:41:55,297 DEBUG com.datatorrent.lib.util.PojoUtils: code: >> return >> ((java.lang.String)((com.datatorrent.solution.objects.CDR)(object)).getAPartyPhone()); >> 2016-05-09 10:41:55,300 DEBUG >> com.datatorrent.contrib.hive.FSPojoToHiveOperator: getter SC >> --- >> >> ~ Yogi >> > >