@Override public UiWizard createWizard(String obj) throws Exception { return (UiWizard) activator.createObject(obj); }
@Override public ComponentAdapter getAdapter(String id) throws Exception { return (ComponentAdapter) activator.getObject(id); }
@Override public void destroy() { if (activator != null) activator.destroy(); }
public Object getObject(String name) throws Exception { if (isInstance(name)) return getInstance(name); Class<?> clazz = findClass(name); Class<?> orgClazz = clazz; ObjectFactory factory = getObject(defaultFactory.value()); return factory.create(orgClazz, null, null); setInstance(name, obj);
public Object createObject(String name, Class<?>[] classes, Object[] objects ) throws Exception { Object obj = mapName(name); if (s.length() == 0) s = (String)obj; // reset clazz = loadClass(s); } else if (obj instanceof Class) { ObjectFactory inst = getObject(factoryClazz.value()); if (inst != null) { out = inst.create(clazz,classes,objects);
@Override public <T, D extends T> T lookup(Class<T> ifc, Class<D> def) { try { if (activator == null) { if (parent != null) return parent.lookup(ifc, def); } else { if (parent != null && !activator.isInstance(ifc) && ( local == null || !local.contains(ifc.getCanonicalName()) ) ) return parent.lookup(ifc, def); } T ret = activator.getObject(ifc); if (ret != null) return ret; } catch (Exception e) { MApi.dirtyLog("info: fallback to default",ifc,def,e); } if (def == null) return null; try { return def.newInstance(); } catch (InstantiationException | IllegalAccessException e) { MApi.dirtyLog(ifc,e); } return null; }
@Override public InternalDbConnection createConnection() throws Exception { // ResourceNode concon = config.getNode("connection"); String driver = config.getExtracted("driver"); String url = config.getExtracted("url"); String user = config.getExtracted("user"); String pass = config.getExtracted("pass"); if (!MString.isEmpty(driver)) { if (activator != null) activator.getClazz(driver); else Class.forName(driver); } log().t(driver,url,user); Connection con = DriverManager.getConnection(url,user,MPassword.decode(pass)); getDialect().prepareConnection(con); JdbcConnection dbCon = new JdbcConnection(this,con); long timeoutUnused = MPeriod.toMilliseconds( config.getExtracted("timeout_unused"), 0 ); long timeoutLifetime = MPeriod.toMilliseconds( config.getExtracted("timeout_lifetime"), 0 ); if (timeoutUnused > 0) dbCon.setTimeoutUnused(timeoutUnused); if (timeoutLifetime > 0) dbCon.setTimeoutLifetime(timeoutLifetime); return dbCon; }
default: try { t = MApi.lookup(MActivator.class).findClass(type); } catch (ClassNotFoundException e) { return def;
public Desktop(ResourceNode layout) throws Exception { if (getActivator() instanceof MutableActivator) initDefaultActivator((MutableActivator)getActivator()); InjectorMap injector = new InjectorMap(); injector.put(DesktopInject.class, new Injector() { @Override public void doInject(Object obj) throws Exception { ((DesktopInject)obj).setDesktop(Desktop.this); } }); getActivator().addInjector(injector); model = new LayoutBuilder().doBuild(layout).getModel(); //filesystem = loadModule(Filesystem.class); //userManager = loadModule(UserManager.class); }
String name = mapping.getString("name"); String className = mapping.getString("class"); Class<?> clazz = from.getClazz(className); a.addMap(name, clazz); } catch (Exception e) {
public Object createObject(String name) throws Exception { return createObject(name, null, null); }
@SuppressWarnings("unchecked") public <T> T getObject(Class<T> ifc, String name) throws Exception { return (T)getObject(ifc.getCanonicalName() + ":" + name); }
@Override public void destroy() { super.destroy(); for (Object obj : instances.values() ) if (obj instanceof Closeable) { try { ((Closeable)obj).close(); } catch (Throwable t) {} } mapper = null; }
public <T> T createObject(Class<T> ifc, String name) throws Exception { return (T)createObject(ifc,name,null,null); }
@SuppressWarnings("unchecked") public <T> T getObject(Class<T> ifc) throws Exception { return (T)getObject(ifc.getCanonicalName()); }
@SuppressWarnings("unchecked") public <T> T createObject(Class<T> ifc, String name, Class<?>[] classes, Object[] objects ) throws Exception { return (T)createObject(ifc.getCanonicalName() + ":" + name,classes,objects); }
@Deprecated public <T> T loadModule(Class<? extends T> clazz) throws Exception { T out = (T) getActivator().getObject(clazz,""); if (out instanceof DesktopInject) ((DesktopInject) out).setDesktop(this); return out; }
/** * Object factory to create different kinds of objects for one table. * * @param clazz * @param registryName * @param ret could be null, return the default object * @param manager * @param isPersistent * @return x x * @throws Exception */ public Object createObject(Class<?> clazz, String registryName, DbResult ret, DbManager manager, boolean isPersistent) throws Exception { Object object = manager .getActivator() .createObject(clazz.getCanonicalName()); if (object instanceof DbObject) { ((DbObject)object).doInit(manager, registryName, isPersistent); } return object; }
/** {@inheritDoc} */ @Override public boolean validate(LayoutElement element, DataConnector dataConnector, Object value) throws MException { String string = element.getConfig().getString("validator", null); if (string == null) return true; // MActivator a = validators; // if (a == null) a = element.getLayoutFactory().getActivator(); MActivator a = element.getLayoutFactory().getActivator(); String[] va = string.split(","); for (String v : va) { Validator validator; try { validator = (Validator) a.getObject(Validator.class,v); } catch (Exception e) { e.printStackTrace(); return false; } if (validator != null && !validator.validate(this,element,value)) return false; } return true; }
private void readObject(java.io.ObjectInputStream in) throws IOException, ClassNotFoundException { int size = in.readInt(); // data.clear(); Create new one because of concurrent modifications data = new LinkedList<>(); for (int i = 0; i < size; i++) { int code = in.readInt(); if (code == 0) { Object d = in.readObject(); data.add(d); } else if (code == 1) { String clazzName = in.readUTF(); Object obj; try { obj = MApi.get().base().lookup(MActivator.class).createObject(clazzName); } catch (Exception e) { throw new IOException(e); } String jsonString = in.readUTF(); JsonNode json = MJson.load(jsonString); MPojo.jsonToPojo(json, obj); data.add(obj); } } }