FrontendFieldEditContext.java
package eu.javaexperience.webgsdb.commons;
import java.util.Map;
import hu.ddsi.java.database.GenericStoreDatabase;
import eu.javaexperience.classes.ClassFieldDescriptor;
import eu.javaexperience.collection.map.SmallMap;
import eu.javaexperience.gsdbrpc.WebDbModel;
import eu.javaexperience.gsdbrpc.api.ModelManager;
import eu.javaexperience.interfaces.ExternalDataAttached;
import eu.javaexperience.semantic.references.MayNull;
import eu.teasite.frontend.api.ApiClient;
public class FrontendFieldEditContext<T extends WebDbModel> implements ExternalDataAttached
{
public ApiClient api;
public ModelManager<T> acc;
public GenericStoreDatabase gdb;
public T model;
public @MayNull String idLabelFor;
public ClassFieldDescriptor field;
public Object value;
protected Map<String, Object> extraData;
public boolean isEmbedded;
@Override
public Map<String, Object> getExtraDataMap()
{
if(null == extraData)
{
extraData = new SmallMap<>();
}
return extraData;
}
@Override
public FrontendFieldEditContext<T> clone()
{
FrontendFieldEditContext ret = new FrontendFieldEditContext<>();
ret.api = api;
ret.acc = acc;
ret.gdb = gdb;
ret.model = model;
ret.idLabelFor = idLabelFor;
ret.field = field;
ret.value = value;
ret.extraData = null == extraData?null:new SmallMap(extraData);
return ret;
}
}