Package net.sf.beanlib.provider

Examples of net.sf.beanlib.provider.BeanPopulator


  public static BeanPopulator newBeanPopulator(Object from, Object to,
                         IClassMapper classMapper,
                         IPersistenceUtil persistenceUtil,
                         IProxyStore proxyStore)
    {
    BeanPopulator replicator = BeanPopulator.newBeanPopulator(from, to);
   
  //  Change bean class replicator
  //
    BeanTransformerSpi transformer = (BeanTransformerSpi) replicator.getTransformer();
    transformer.initBeanReplicatable(MergeClassBeanReplicator.factory);
    ((MergeClassBeanReplicator) transformer.getBeanReplicatable()).setClassMapper(classMapper);
    ((MergeClassBeanReplicator) transformer.getBeanReplicatable()).setPersistenceUtil(persistenceUtil);
    ((MergeClassBeanReplicator) transformer.getBeanReplicatable()).setProxyStore(proxyStore);
   
    transformer.initCollectionReplicatable(MergeCollectionReplicator.factory);
    ((MergeCollectionReplicator) transformer.getCollectionReplicatable()).setPersistenceUtil(persistenceUtil);
   
    transformer.initMapReplicatable(MergeMapReplicator.factory);
    ((MergeMapReplicator) transformer.getMapReplicatable()).setPersistenceUtil(persistenceUtil);
   
  //  Custom transformers (timestamp handling)
  //
        transformer.initCustomTransformerFactory(new CustomBeanTransformerSpi.Factory()
    {
      public CustomBeanTransformerSpi newCustomBeanTransformer(final BeanTransformerSpi beanTransformer)
      {
        return CustomTransformersFactory.getInstance().createUnionCustomBeanTransformer(beanTransformer);
      }
    });

   
  //  Lazy properties handling
  //
    DetailedBeanPopulatable hibernatePopulatable = new MergeBeanPopulatable(persistenceUtil, proxyStore);
    replicator.initDetailedBeanPopulatable(hibernatePopulatable);
   
  //  Merge based on protected and private setters
  //
    replicator.initSetterMethodCollector(PrivateSetterMethodCollector.inst);
    replicator.initReaderMethodFinder(PrivateReaderMethodFinder.inst);
   
    return replicator;
    }
View Full Code Here


   */
  public void populate(Object hibernatePojo, Object clonePojo)
  {
  //  Populate hibernate POJO from the cloned pojo
  //
    BeanPopulator replicator = MergeBeanPopulator.newBeanPopulator(clonePojo, hibernatePojo,
                                     _classMapper,
                                     _persistenceUtil,
                                     _proxyStore);
  //  Store root pojo on bean stack
  //
    BeanlibThreadLocal.getBeanStack().clear();
    BeanlibThreadLocal.getBeanStack().push(clonePojo);
   
    replicator.populate();
  }
View Full Code Here

   */
  public void populate(Object hibernatePojo, Object clonePojo)
  {
  //  Populate hibernate POJO from the cloned pojo
  //
    BeanPopulator replicator = MergeBeanPopulator.newBeanPopulator(clonePojo, hibernatePojo,
                                     _classMapper,
                                     _persistenceUtil,
                                     _pojoStore);

  //  Reset BeanLib thread local
  //
    BeanlibThreadLocal.setDestinationBean(null);

    replicator.populate();
  }
View Full Code Here

  public static BeanPopulator newBeanPopulator(Object from, Object to,
                         IClassMapper classMapper,
                         IPersistenceUtil persistenceUtil,
                         IPojoStore pojoStore)
    {
    BeanPopulator replicator = BeanPopulator.newBeanPopulator(from, to);
   
  //  Change bean class replicator
  //
    BeanTransformerSpi transformer = (BeanTransformerSpi) replicator.getTransformer();
    transformer.initBeanReplicatable(MergeClassBeanReplicator.factory);
    ((MergeClassBeanReplicator) transformer.getBeanReplicatable()).setClassMapper(classMapper);
    ((MergeClassBeanReplicator) transformer.getBeanReplicatable()).setPersistenceUtil(persistenceUtil);
    ((MergeClassBeanReplicator) transformer.getBeanReplicatable()).setPojoStore(pojoStore);
   
    transformer.initCollectionReplicatable(MergeCollectionReplicator.factory);
    ((MergeCollectionReplicator) transformer.getCollectionReplicatable()).setPersistenceUtil(persistenceUtil);
   
    transformer.initMapReplicatable(MergeMapReplicator.factory);
    ((MergeMapReplicator) transformer.getMapReplicatable()).setPersistenceUtil(persistenceUtil);
   
  //  Timestamp handling
  //
    transformer.initCustomTransformer(new CustomBeanTransformerSpi.Factory()
    {
      public CustomBeanTransformerSpi newCustomBeanTransformer(final BeanTransformerSpi beanTransformer)
      {
        return new TimestampCustomTransformer(beanTransformer);
      }
    });
   
  //  Lazy properties handling
  //
    MergeBeanPopulatable hibernatePopulatable = new MergeBeanPopulatable(persistenceUtil, pojoStore);
    replicator.initDetailedBeanPopulatable(hibernatePopulatable);
   
  //  Merge based on protected and private setters
  //
    replicator.initSetterMethodCollector(PrivateSetterMethodCollector.inst);
    replicator.initReaderMethodFinder(PrivateReaderMethodFinder.inst);
   
    return replicator;
    }
View Full Code Here

TOP

Related Classes of net.sf.beanlib.provider.BeanPopulator

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.