public <C extends MLNNamedObject> C getForName(Class<C> mlnClass, String name) { C obj = null; obj = getForNameNoCreation(mlnClass, name); if (obj == null) { if (MLNNamedObject.class.isAssignableFrom(mlnClass) && searchForClass(mlnClass)) { try { obj = mlnClass.newInstance(); obj.setName(name); if (obj instanceof MLNPredicate) { ((MLNPredicate) obj).setClosedWorldType(MLNClosedWorldType.Undefined); unusedPredicates.remove(obj); } addMlnNamedObject(obj); } catch (InstantiationException e) { e.printStackTrace(); } catch (IllegalAccessException e) { e.printStackTrace(); } } } return obj; }
public void nativeSetTag(String tag) { component.setName(tag); }