All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.avaje.ebeaninternal.server.persist.dml.DmlBeanPersisterFactory Maven / Gradle / Ivy

There is a newer version: 9.5.1
Show newest version
package com.avaje.ebeaninternal.server.persist.dml;

import com.avaje.ebean.config.dbplatform.DatabasePlatform;
import com.avaje.ebeaninternal.server.deploy.BeanDescriptor;
import com.avaje.ebeaninternal.server.persist.BeanPersister;
import com.avaje.ebeaninternal.server.persist.BeanPersisterFactory;

/**
 * Factory for creating a DmlBeanPersister for a bean type.
 */
public class DmlBeanPersisterFactory implements BeanPersisterFactory {

  private final MetaFactory metaFactory;

  public DmlBeanPersisterFactory(DatabasePlatform dbPlatform) {
    this.metaFactory = new MetaFactory(dbPlatform);
  }


  /**
   * Create a DmlBeanPersister for the given bean type.
   */
  public BeanPersister create(BeanDescriptor desc) {

    UpdateMeta updMeta = metaFactory.createUpdate(desc);
    DeleteMeta delMeta = metaFactory.createDelete(desc);
    InsertMeta insMeta = metaFactory.createInsert(desc);

    return new DmlBeanPersister(updMeta, insMeta, delMeta);

  }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy