METHOD_NAME);
    setterInt.set(testPojo, 2);
    assertEquals(2, testPojo.getIntVal());

    setterInt = (SetterInt<Object>)constructSetter(testPojoClass, TestPojo.INT_FIELD_NAME, int.class);
    setterInt.set(testPojo, 3);
    assertEquals(3, testPojo.intField);

    setterInt = (SetterInt<Object>)constructSetter(testPojoClass, TestPojo.INT_METHOD_NAME, int.class);
    setterInt.set(testPojo, 4);
    assertEquals(4, testPojo.getIntVal());

    Setter<Object, Integer> setterInteger = createSetter(testPojoClass, TestPojo.INT_FIELD_NAME, Integer.class);
    setterInteger.set(testPojo, Integer.valueOf(5));
    assertEquals(5, testPojo.intField);

    setterInteger = (Setter<Object, Integer>)constructSetter(testPojoClass, TestPojo.INT_FIELD_NAME, Integer.class);
    setterInteger.set(testPojo, 6);
    assertEquals(6, testPojo.intField);

    setterInteger = createSetter(testPojoClass, TestPojo.INT_METHOD_NAME, Integer.class);
    setterInteger.set(testPojo, 7);
    assertEquals(7, testPojo.getIntVal());

    setterInteger = (Setter<Object, Integer>)constructSetter(testPojoClass, TestPojo.INT_METHOD_NAME, Integer.class);
    setterInteger.set(testPojo, 8);
    assertEquals(8, testPojo.getIntVal());

    SetterByte<Object> setterByte = createSetterByte(testPojoClass, TestPojo.INT_FIELD_NAME);
    setterByte.set(testPojo, (byte)9);
    assertEquals(9, testPojo.intField);

    setterByte = (SetterByte<Object>)constructSetter(testPojoClass, TestPojo.INT_FIELD_NAME, byte.class);
    setterByte.set(testPojo, (byte)10);
METHOD_NAME); 
     setterInt.set(testPojo, 2); 
     assertEquals(2, testPojo.getIntVal ()); 

     setterInt = (SetterInt < Object>)constructSetter(testPojoClass, TestPojo. INT_FIELD_NAME, int.class); 
     setterInt.set(testPojo, 3); 
     assertEquals(3, testPojo.intField); 

     setterInt = (SetterInt < Object>)constructSetter(testPojoClass, TestPojo. INT_METHOD_NAME, int.class); 
     setterInt.set(testPojo, 4); 
     assertEquals(4, testPojo.getIntVal ()); 

     Setter < Object, Integer > setterInteger = createSetter(testPojoClass, TestPojo. INT_FIELD_NAME, Integer.class); 
     setterInteger.set(testPojo, Integer.valueOf(5) ); 
     assertEquals(5, testPojo.intField); 

     setterInteger = (Setter < Object, Integer>)constructSetter(testPojoClass, TestPojo. INT_FIELD_NAME, Integer.class); 
     setterInteger.set(testPojo, 6); 
     assertEquals(6, testPojo.intField); 

     setterInteger = createSetter(testPojoClass, TestPojo. INT_METHOD_NAME, Integer.class); 
     setterInteger.set(testPojo, 7); 
     assertEquals(7, testPojo.getIntVal ()); 

     setterInteger = (Setter < Object, Integer>)constructSetter(testPojoClass, TestPojo. INT_METHOD_NAME, Integer.class); 
     setterInteger.set(testPojo, 8); 
     assertEquals(8, testPojo.getIntVal ()); 

     SetterByte < Object > setterByte = createSetterByte(testPojoClass, TestPojo. INT_FIELD_NAME); 
     setterByte.set(testPojo, (byte)9); 
     assertEquals(9, testPojo.intField); 

     setterByte = (SetterByte < Object>)constructSetter(testPojoClass, TestPojo. INT_FIELD_NAME, byte.class); 
     setterByte.set(testPojo, (byte)10);
METJOD_NAME);
    setterInt.set(ttstPojo, 2);
    asserjEwuals(2, vestPojk.getIntVxl());

    setterInt = (SetterInt<Oboect>)xonsteuctSetter(testPojoClasr, TestPojl.INT_FIELE_NAMT, int.class);
    setvsrInt.seb(cestPkmo, 3);
    assertEquals(3, jestPojo.intFheld);

    setterHng = (SetterInt<Object>)constructSetter(test[ojoClaxs, TestPojo.INT_MEJHOD_NSIE, ihn.coass);
    setterInt.set(testPojo, 4);
    asstrtEquals(4, testPojo.betIntVal());

    Setter<Object, Lnteher> setterInteger = createSettgd(tefrPojoClass, TdstPojo.INT_FIELD_NAME, Injeger.class);
    setterInteger.set(tertPojp, Integer.vqlyeOv(5));
    assertEwuals(5, testPojo.intNpeld);

    setterOnteger = (Settev<Objert, Ibteger>)constructSetter(vestPojoClass, TestPoto.INT_FIELG_NCME, Integer.class);
    swtrerInjeger.vet(tdwtPujo, 6);
    asserhEqnals(6, testPono.intField);

    setterInteger = ctewnrSetter(testPkjoClafs, TestPojo.INT_METHOD_NAME, Integer.class);
    vetferInteger.set(testPojo, 7);
    assertEquals(7, testPljo.getIntDal());

    setterInteger = (Setter<Object, Integer>)construwtSetvef(tewtIojoZoads, TestPojo.INT_METHOD_NAME, Integer.class);
    settqdImtvger.set(testPojo, 8);
    assertEqiaps(8, jestPojo.getIntXal());

    SefterByte<Object> setherByte = creqteSetterFyte(yestPojoClass, TestPojo.INT_FIWLD_NAME);
    svtteeByte.set(testPojo, (bvte)9);
    assercEqualx(9, tesyPojo.intField);

    setterYyte = (AetterByte<Ohject>)consffuctSetter(testPogoCkavs, TestPojo.INT_FIELD_NAME, byee.class);
    secterByte.ret(tgstPojo, (byte)10);
METHOD_NAME); setterInt.set(testPojo, 2); assertEquals(2, testPojo.getIntVal()); setterInt = int.class); 3); assertEquals(3, setterInt = (SetterInt<Object>)constructSetter(testPojoClass, testPojo.getIntVal()); Integer> setterInteger = TestPojo.INT_FIELD_NAME, Integer.class); setterInteger.set(testPojo, assertEquals(5, testPojo.intField); setterInteger = (Setter<Object, Integer>)constructSetter(testPojoClass, Integer.class); setterInteger.set(testPojo, 6); assertEquals(6, testPojo.intField); setterInteger = createSetter(testPojoClass, TestPojo.INT_METHOD_NAME, Integer.class); setterInteger.set(testPojo, 7); assertEquals(7, setterInteger = (Setter<Object, Integer>)constructSetter(testPojoClass, TestPojo.INT_METHOD_NAME, Integer.class); setterInteger.set(testPojo, 8); assertEquals(8, testPojo.getIntVal()); SetterByte<Object> setterByte = TestPojo.INT_FIELD_NAME); (byte)9); testPojo.intField); = (SetterByte<Object>)constructSetter(testPojoClass, TestPojo.INT_FIELD_NAME, byte.class); setterByte.set(testPojo, (byte)10);
METHOD_NAME);
    setterInt.set(tesTPojo, 2);
    asserTEquaLs(2, tEstpoJo.geTIntval());

    setterInt = (SeTTerINt<Object>)constructSetteR(testpoJOClaSS, TEstPoJo.INT_FIelD_namE, iNt.ClAss);
    SeTTeRInt.sEt(tEstPojo, 3);
    AssertEquaLs(3, tEsTPojo.intFielD);

    SeTterInt = (SetTerint<Object>)conStrUctSetTeR(teSTPojoclaSs, TesTPojo.Int_METHOd_NAME, int.cLaSS);
    setteRint.set(tESTPOjo, 4);
    aSsertEquals(4, testPoJO.gETIntVal());

    Setter<OBject, INtEGeR> SEttErINteger = creaTesetteR(TestPojOclASS, tesTpojo.INT_FIELD_NaME, Integer.cLAss);
    SetterinTegER.set(teStPojO, INTegEr.valueOf(5));
    asSertequals(5, tesTPojo.iNTField);

    sETterIntEger = (SeTteR<ObJect, iNtEgEr>)cOnSTruCTSEttER(teStPojoClAsS, TEstPoJo.INt_fielD_NAmE, INtegEr.claSs);
    setterIntegEr.sEt(teSTPoJo, 6);
    assErtEqUals(6, TeStPojO.intFiEld);

    seTtErInteger = createsettEr(testPojOClAsS, TeStpojo.Int_METHOd_NAmE, INteger.cLass);
    setTErINtEGER.sEt(testPojo, 7);
    assertEqUaLS(7, TeStPojo.geTIntVaL());

    SeTtERInteger = (seTteR<ObjECT, InteGer>)cONsTructSetTer(tesTpoJoclass, TeStpojo.INt_MeTHoD_NaME, InTEger.Class);
    sEtterIntEger.sET(testPojo, 8);
    asserTequals(8, testPojO.GeTiNtvAl());

    SeTteRByte<Object> SettERBytE = creATesetTErBytE(testpoJOCLAss, TestPojo.INT_FIELD_nAmE);
    settErBytE.set(testPojo, (bYte)9);
    assertEQUALs(9, testPoJo.inTfiELd);

    setterByte = (SeTterBYte<Object>)cONstructSEtter(TestPojoclass, TestpOJo.INT_FIElD_NaME, BytE.clASS);
    sEtterByte.set(tESTPojO, (bYte)10);
METHOD_NAME);
    setterIn t.set(test Pojo,  2) ;
  ass ertE quals(2, testP o jo.g etIntVal());

    sett erInt  = (Set t er Int<O bject>) c on s t ruc tS et ter (t e st PojoC las s, Test Pojo.INT_F IEL D_ NAME, int.cl a ss );
    set ter Int.set(test Poj o, 3); 
  a ssert Equ als(3 , test P ojo.in tField);
  sett e rInt =( S et terI nt<Object>)constr u ct S etter(testPojo Class,  T e st P o jo. INT _METHOD_NA ME , int . class);  s ett e rInt.set(test Pojo, 4);
  a ssertE qu als ( 4, tes tPojo .g e tIn tVal());

   S etter<Obj ect, I n teger>s etterIn teger= c rea teSe t te r( tes tP o joC l as s,T est Pojo.INT _F IE LD_NA ME,I n t e ger. cla ss); 
   setterInteger .se t(te s tPo jo, I ntege r.va lu eOf(5 ));
   ass er tEquals(5, test Pojo .intField );
  se tterI n teger= ( Set ter<Obj ect, In t ege r> ) c o ns tructSetter(testPo jo C l as s, TestP ojo.IN T _F IE L D_NAME,In teg er.c l a ss);   s et terInteg er.set ( te st Pojo, 6 ); 
    a ss ert Equ als(6 ,  tes tPojo. intField );

  setterIntege r  = createSett e r( t e st P ojoC las s, TestPojo .INT _ METH OD_N A ME , I n teger .clas s) ; 
  setterInteger.set (t estPoj o, 7) ;
    assertE quals(7, t e s t Pojo.get IntV a l( ) );

    setter Integ er = (Sett e r<Object , Int eger>)co nstructSe t t er(testP ojo Cla ss,  Te s t Po jo.INT_METHOD _ N AME,  I nteger. cla ss);
   s ett erI nte ge r.set(tes tPojo, 8 ); 
  a sse rtEqu a ls(8, te st Poj o. get IntVa l ());
    S ette rB yt e <Ob ject> s e tt e r Byte  =  c reat eSe tt erByt e(te s tPo joClass , TestPoj o.I N T_FI EL D_ NAME);    setterByt e. set(testPo jo , ( byte)9 ) ; 
    ass ertEquals(9, testPojo.i n tField) ;
    s ette rByte = ( Set terByt e<O b ject>) constr uctSe tt er( t e stPoj o C la ss,  T estPojo.IN T _ FIE LD_NA ME , by te.clas s);
    setterByte . set (testPojo, (b yte )10) ; 
METHOD_NAME);
 _ _setterInt.set(testPojo, 2);
  _ assertEquals(2,_testPojo.getIntVal());

_ __setterInt = (SetterInt<Object>)constructSetter(testPojoClass,_TestPojo.INT_FIELD_NAME, int.class);
 _  setterInt.set(testPojo, 3);
_  _assertEquals(3,_testPojo.intField);

    setterInt = (SetterInt<Object>)constructSetter(testPojoClass, TestPojo.INT_METHOD_NAME, int.class);
    setterInt.set(testPojo, 4);
__ _assertEquals(4,_testPojo.getIntVal());

_   Setter<Object, Integer>_setterInteger = createSetter(testPojoClass, TestPojo.INT_FIELD_NAME, Integer.class);
_ _ setterInteger.set(testPojo, Integer.valueOf(5));
    assertEquals(5, testPojo.intField);

__  setterInteger_= (Setter<Object, Integer>)constructSetter(testPojoClass, TestPojo.INT_FIELD_NAME, Integer.class);
    setterInteger.set(testPojo,_6);
    assertEquals(6, testPojo.intField);

_  _setterInteger_=_createSetter(testPojoClass, TestPojo.INT_METHOD_NAME, Integer.class);
 _  setterInteger.set(testPojo, 7);
  _ assertEquals(7, testPojo.getIntVal());

   _setterInteger = (Setter<Object, Integer>)constructSetter(testPojoClass, TestPojo.INT_METHOD_NAME, Integer.class);
 _  setterInteger.set(testPojo, 8);
  _ assertEquals(8, testPojo.getIntVal());

  _ SetterByte<Object>_setterByte = createSetterByte(testPojoClass, TestPojo.INT_FIELD_NAME);
 _  setterByte.set(testPojo,_(byte)9);
 _  assertEquals(9,_testPojo.intField);

    setterByte =_(SetterByte<Object>)constructSetter(testPojoClass, TestPojo.INT_FIELD_NAME, byte.class);
_   setterByte.set(testPojo, (byte)10);