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

xapi.dev.elemental.ModelProviderImpl Maven / Gradle / Ivy

Go to download

Everything needed to run a comprehensive dev environment. Just type X_ and pick a service from autocomplete; new dev modules will be added as they are built. The only dev service not included in the uber jar is xapi-dev-maven, as it includes all runtime dependencies of maven, adding ~4 seconds to build time, and 6 megabytes to the final output jar size (without xapi-dev-maven, it's ~1MB).

The newest version!
package xapi.dev.elemental;

import com.google.gwt.core.ext.typeinfo.JClassType;

import xapi.source.X_Source;

public class ModelProviderImpl implements ModelProvider {

  private String modelName;
  private String modelPackage;
  private String providerMethod;
  private String providerName;
  private String providerPackage;

  public ModelProviderImpl(String modelPkg, String modelName) {
    this.modelPackage = modelPkg;
    this.modelName = modelName;
  }
  public ModelProviderImpl(JClassType from) {
    this(from.getPackage().getName(), from.getQualifiedSourceName().replace(from.getPackage().getName()+".", ""));
  }
  /**
   * @return the modelName
   */
  public String getModelName() {
    return modelName;
  }
  /**
   * @param modelName the modelName to set
   */
  public void setModelName(String modelName) {
    this.modelName = modelName;
  }
  /**
   * @return the modelPackage
   */
  public String getModelPackage() {
    return modelPackage;
  }
  /**
   * @param modelPackage the modelPackage to set
   */
  public void setModelPackage(String modelPackage) {
    this.modelPackage = modelPackage;
  }

  @Override
  public String getModelQualifiedName() {
    return X_Source.qualifiedName(modelPackage, modelName);
  }

  public void setModel(Class model) {
    setModelPackage(model.getPackage().getName());
    setModelName(model.getCanonicalName().replace(modelPackage+".", ""));
  }

  /**
   * @return the providerMethod
   */
  public String getProviderMethod() {
    return providerMethod;
  }
  /**
   * @param providerMethod the providerMethod to set
   */
  public void setProviderMethod(String providerMethod) {
    this.providerMethod = providerMethod;
  }
  /**
   * @return the providerName
   */
  public String getProviderName() {
    return providerName;
  }
  /**
   * @param providerName the providerName to set
   */
  public void setProviderName(String providerName) {
    this.providerName = providerName;
  }
  /**
   * @return the providerPackage
   */
  public String getProviderPackage() {
    return providerPackage;
  }
  /**
   * @param providerPackage the providerPackage to set
   */
  public void setProviderPackage(String providerPackage) {
    this.providerPackage = providerPackage;
  }

  public void setProvider(Class provider, String method) {
    setProviderPackage(provider.getPackage().getName());
    setProviderName(provider.getCanonicalName().replace(modelPackage+".", ""));
    setProviderMethod(method);
  }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy