xapi.dev.elemental.ModelProviderImpl Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of xapi-dev Show documentation
Show all versions of xapi-dev Show documentation
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);
}
}