package foundation.icall.callout; import org.dom4j.Element; import foundation.data.entity.Entity; import foundation.data.entity.EntitySet; import foundation.translator.Translator; public class RemoteDBMeta implements IRemoteSourceMeta { private String name; private String url; private String userName; private String password; private boolean active; public RemoteDBMeta() { } public void loadHead(Entity entity) { name = entity.getString("name"); active = entity.getBoolean("is_active", false); } public void loadDetail(EntitySet elementList) { String element, value; for (Entity entity: elementList) { element = entity.getString("element"); value = entity.getString("value"); switch(element) { case "url": url = value; break; case "password": password = value; break; case "username": userName = value; break; } } } public void load(Element element) { name = element.attributeValue("name"); url = element.elementText("url"); userName = element.elementText("username"); password = element.elementText("password"); active = Translator.toBoolean(element.attributeValue("active"), false); } @Override public IRemoteSource createRemoteSource() { try { RemoteDBSource result = new RemoteDBSource(this); return result; } catch (Exception e) { e.printStackTrace(); return null; } } public String getName() { return name; } public String getURL() { return url; } public String getUserName() { return userName; } public String getPassword() { return password; } public boolean isActive() { return active; } }