001 package railo.runtime.functions.orm; 002 003 004 import railo.runtime.Component; 005 import railo.runtime.PageContext; 006 import railo.runtime.exp.PageException; 007 import railo.runtime.orm.ORMSession; 008 import railo.runtime.orm.ORMUtil; 009 import railo.runtime.type.Collection.Key; 010 import railo.runtime.type.Struct; 011 012 public class EntityNew { 013 014 public static Object call(PageContext pc, String name) throws PageException { 015 return call(pc, name, null); 016 } 017 018 public static Object call(PageContext pc, String name,Struct properties) throws PageException { 019 ORMSession session=ORMUtil.getSession(pc); 020 if(properties==null)return session.create(pc,name); 021 022 Component entity = session.create(pc,name); 023 Key[] keys = properties.keys(); 024 for(int i=0;i<keys.length;i++){ 025 entity.call(pc, "set"+keys[i], new Object[]{properties.get(keys[i])}); 026 } 027 return entity; 028 } 029 }