public void testParameterEdit() throws Exception { ConfigurationContext configCtx = ConfigurationContextFactory.createEmptyConfigurationContext(); AxisConfiguration axisConfig = configCtx.getAxisConfiguration(); Parameter parameter = new Parameter(); parameter.setValue("true"); parameter.setName("enableMTOM"); axisConfig.addParameter(parameter); parameter.setValue("true"); AxisServiceGroup serviceGroup = new AxisServiceGroupImpl(); serviceGroup.setName("testServiceGroup"); AxisService service = new AxisService(); service.setName("service"); serviceGroup.addService(service); axisConfig.addServiceGroup(serviceGroup); parameter = serviceGroup.getParameter("enableMTOM"); parameter.setValue("true"); Parameter para2 = serviceGroup.getParameter("enableMTOM"); assertEquals(para2.getValue(), "true"); Parameter test = new Parameter(); test.setName("test"); test.setValue("test"); serviceGroup.addParameter(test); Parameter para = serviceGroup.getParameter("test"); assertNotNull(para); assertEquals(para.getValue(), "test"); para.setValue("newValue"); para = serviceGroup.getParameter("test"); assertNotNull(para); assertEquals(para.getValue(), "newValue"); }
@Test public void testAsString() { Parameter p = new Parameter(); assertTrue(p.asString().equals("name=null,value=null")); p.setName("bob"); assertTrue(p.asString().equals("name=bob,value=null")); p.setValue("val"); assertTrue(p.asString().equals("name=bob,value=val")); p.setName(null); assertTrue(p.asString().equals("name=null,value=val")); }
public void test_Parameter_setName() { String name = "Forward_Michaelis_Menten_Constant"; P.setName(name); assertTrue(P.getName().equals(name)); assertEquals(true, P.isSetName()); if (P.getName() == name) ; { } P.setName(P.getName()); assertTrue(P.getName().equals(name)); P.setName(""); assertEquals(false, P.isSetName()); if (P.getName() != null) ; { } }
public void testNodeAttributeEvent() { TestAttributeListener l = new TestAttributeListener(); Node test = Node.ROOT_NODE.newInstance(testLibrary, "test"); test.addNodeAttributeListener(l); // Setting the name to itself does not trigger an event. test.setName("test"); assertEquals(0, l.nameCounter); test.setName("newname"); assertEquals(1, l.nameCounter); Parameter p1 = test.addParameter("p1", Parameter.Type.FLOAT); assertEquals(1, l.parameterCounter); p1.setName("parameter1"); assertEquals(2, l.parameterCounter); // TODO: These trigger ParameterAttributeChanged // p1.setBoundingMethod(Parameter.BoundingMethod.HARD); // assertEquals(3, l.parameterCounter); // p1.setMinimumValue(0F); // assertEquals(4, l.parameterCounter); // Changing the value does not trigger the event. // The event only happens for metadata, not data. // If you want to catch that, use DirtyListener. p1.setValue(20F); assertEquals(2, l.parameterCounter); test.removeParameter("parameter1"); assertEquals(3, l.parameterCounter); }
public static Parameter createInputParameter(String name, String datatype) { Parameter param = new Parameter(); param.setInput(true); param.setName(name); param.setDataType(datatype); return param; }
private void generateEvent(final Event event) throws Exception { final ClassWriter classWriter = new ClassWriter( this, getSrcGeneratedDirectory(), GeneratorHelper.getEventPackage(domain), GeneratorHelper.getEventClassName(event)); if (event.getParameter() != null) { for (final Parameter parameter : event.getParameter()) { classWriter.addClassMembers(parameter); } } classWriter.addExtend(GeneratorHelper.getBusinessEventExtends(event)); // Constant classWriter.addConstants( "public static final com.ponysdk.core.event.Event.Type<" + GeneratorHelper.getHandlerClassName(event) + "> TYPE = new com.ponysdk.core.event.Event.Type<" + GeneratorHelper.getHandlerClassName(event) + ">();"); // Build constructor final Parameter sourceComponentParameter = new Parameter(); sourceComponentParameter.setName("sourceComponent"); sourceComponentParameter.setClazz("java.lang.Object"); final List<Parameter> superConstructorParameters = new ArrayList<Parameter>(); superConstructorParameters.add(sourceComponentParameter); final List<Parameter> constructorParameters = new ArrayList<Parameter>(event.getParameter()); constructorParameters.add(0, sourceComponentParameter); final Constructor constructor = new Constructor(constructorParameters, superConstructorParameters); classWriter.addConstructor(constructor); // Build methods classWriter.addLine("@Override"); classWriter.addLine( "protected void dispatch(" + GeneratorHelper.getHandlerClassName(event) + " handler) {"); classWriter.addLine(" handler.on" + event.getName() + "(this);"); classWriter.addLine("}"); classWriter.addNewLine(); classWriter.addLine("@Override"); classWriter.addLine( "public com.ponysdk.core.event.Event.Type<" + GeneratorHelper.getHandlerClassName(event) + "> getAssociatedType() {"); classWriter.addLine(" return TYPE;"); classWriter.addLine("}"); // Adding classWriter.setGenerateGetter(true); classWriter.generateContentAndStore(); }
@Test public void testGettersAndSetters() { Parameter p = new Parameter(); assertTrue(p.getName() == null); assertTrue(p.getValue() == null); p.setName("bob"); p.setValue("val"); assertTrue(p.getName().equals("bob")); assertTrue(p.getValue().equals("val")); }
private ClassWriter generatePushCommandX(final Pushmethod method, final String type) throws Exception { final String className = method.getName().substring(0, 1).toUpperCase() + method.getName().substring(1) + "Command"; final ClassWriter classWriter = new ClassWriter( this, getSrcGeneratedDirectory(), GeneratorHelper.getCommandPackage(domain), className); final Parameter pushListener = new Parameter(); pushListener.setName("listener"); pushListener.setClazz("com.ponysdk.core.command.PushListener<" + type + ">"); final List<Parameter> parameters = method.getParameter(); final List<Parameter> clonedParameters = new ArrayList<Parameter>(parameters); clonedParameters.add(pushListener); final Constructor constructor = new Constructor(); constructor.setConstructorParameters(clonedParameters); constructor.setSuperConstructorParameters(Arrays.asList(pushListener)); classWriter.addConstructor(constructor); for (final Parameter param : parameters) { classWriter.addClassMembers(param); } classWriter.addConstants( "private static " + GeneratorHelper.getServiceFullClassName(domain) + " service;"); final StringBuilder template = new StringBuilder(); template.append("@Override\n"); template.append("public com.ponysdk.core.event.HandlerRegistration execute(){\n"); template.append(" if (service == null) {\n"); template.append( " service = com.ponysdk.core.service.PonyServiceRegistry.getPonyService(" + GeneratorHelper.getServiceFullClassName(domain) + ".class);"); template.append(" }\n"); if (method.getParameter().isEmpty()) template.append(" return service.%1$sRegistration(this);\n"); else template.append(" return service.%1$sRegistration(%2$s,this);\n"); template.append("}\n"); classWriter.addMethod( template.toString(), method.getName(), GeneratorHelper.getParameterNamesToString(method.getParameter())); return classWriter; }
public Parameter clone() { Parameter clone = null; try { clone = this.getClass().newInstance(); clone.setParameterList(parameterList); clone.setName(getName()); clone.setValue(value); } catch (InstantiationException exception) { exception.printStackTrace(); } catch (IllegalAccessException exception) { exception.printStackTrace(); } return clone; // Parameter clone = new DefaultParameter(this.processor, this.name); }
Parameter lookupComponentParameter(String name) { Parameter param = null; List<Parameter> c = components.get(currentComponent); if (c == null) { param = new Parameter(); param.setName(name); List<Parameter> l = new ArrayList<Parameter>(); l.add(param); components.put(currentComponent, l); return param; } for (Parameter p : c) { if (p.getName().equals(name)) { param = p; break; } } return param; }
/** @param args the command line arguments */ public static void main(String[] args) { // TODO code application logic here Model model; String insertstmt; String insertmodel = "", insertspecies = "", insertcompartment = "", insertfunction = "", insertunitdef = "", insertunits = "", insertreaction = "", insertreactant = "", insertproduct = ""; String insertmodifier = "", insertklaw = "", insertrules = "", insertconstraint = "", insertdelay = "", inserttrigger = "", insertevent = "", inserteventassign = "", insertparameter = ""; String insertstatement = ""; String server, user, password, dbname, filepath; String Filedata = ""; String cwd = System.getProperty("user.dir"); if (args.length == 0) { server = "localhost"; user = "******"; password = "******"; dbname = "sbmldb2"; /** * Path to extract the SBML files from database, where cwd is * "github\db2sbml\dbtosbml_standalone_Project\dbtosbml" so add a folder in this directory and * mention folder name instead of extractedbm folder */ filepath = cwd + "\\extractedbm\\"; } else { server = args[0]; user = args[1]; password = args[2]; dbname = args[3]; filepath = args[4]; } try { Filedata = readFileAsString(cwd + "\\sbmldbschema.sql"); } catch (Exception e) { e.printStackTrace(); } Mysqlconn sql = new Mysqlconn(server, user, password, dbname); // String modelids.getId() = "MorrisonAllegra" ; ASTNode math = null; int level = 0, version = 0; ArrayList<modellist> modelidlist = sql.getmodels(); insertstatement = "LOCK TABLES `model` WRITE,`species` WRITE,`compartment` WRITE,`functiondefinition` WRITE,"; insertstatement = insertstatement + "`listofunitdefinitions` WRITE,`listofunits` WRITE,`reaction` WRITE,`simplespeciesreference` WRITE,"; insertstatement = insertstatement + "`modifierspeciesreference` WRITE,`kineticlaw` WRITE,`parameter` WRITE,`sbmlconstraint` WRITE,"; insertstatement = insertstatement + "`event` WRITE,`sbmltrigger` WRITE,`delay` WRITE,`eventassignment` WRITE,`rules` WRITE" + ";"; for (modellist modelids : modelidlist) { ArrayList<modellist> modellevel = sql.getmodeldetails(modelids.getId()); for (modellist modellv : modellevel) { level = modellv.getlevel(); version = modellv.getversion(); } SBMLDocument doc = new SBMLDocument(level, version); ArrayList<modellist> modellists = sql.getmodeldetails(modelids.getId()); if (!modellists.isEmpty()) insertmodel = insertmodel + "\nInsert Into model (id, name,SBML_level,version,notes,annotation) Values"; for (modellist models : modellists) { insertmodel = insertmodel + "(\'" + models.getId() + "\',\'" + models.getName() + "\'," + models.getlevel() + "," + models.getversion() + ",\'" + models.getnotes() + "\',\'" + models.getannotation().toString() + "\'),"; model = doc.createModel(models.getId()); model.setName(models.getName()); // System.out.println("model : " + models.getId()); // model.setNotes(models.getnotes()); // there is some null exception is command line run // but run perfectly from netbeans so ommented out if (!models.getannotation().equals("")) { Annotation annot = new Annotation(models.getannotation().toString()); model.setAnnotation(annot); } doc.setModel(model); } if (!modellists.isEmpty()) { insertmodel = insertmodel.substring(0, insertmodel.length() - 1); insertmodel = insertmodel + ';'; } // insertmodel = insertmodel + "\nUNLOCK TABLES;"; // System.out.println(insertmodel); ArrayList<SpeciesList> specieslist = sql.getspecies(modelids.getId()); if (!specieslist.isEmpty()) insertspecies = insertspecies + "\nInsert Into species (id, name, compartment, initialAmount, initialConcentration,substanceUnits,hasOnlySubstanceUnits,boundaryCondition,constant,conversionFactor,model_id,annotation) Values"; for (SpeciesList species : specieslist) { insertspecies = insertspecies + "(\'" + species.getId() + "\',\'" + species.getName() + "\',\'" + species.getcompartment() + "\'," + species.getia() + "," + species.getic() + ",\'" + species.getsu() + "\'," + species.gethosu() + "," + species.getbc() + "," + species.getconstant() + "," + species.getcf() + ",\'" + modelids.getId() + "\',\'" + species.getannotation() + "\'),"; Species sp = doc.getModel().createSpecies(species.getId()); sp.setName(species.getName()); sp.setCompartment(species.getcompartment()); sp.setConstant(species.getconstant()); sp.setInitialAmount(species.getia()); sp.setInitialConcentration(species.getic()); sp.setHasOnlySubstanceUnits(species.gethosu()); if (doc.getModel().getLevel() == 3) sp.setConversionFactor(species.getcf()); sp.setBoundaryCondition(species.getbc()); sp.setSubstanceUnits(species.getsu()); if (!species.getannotation().equals("")) { Annotation annot = new Annotation(species.getannotation().toString()); sp.setAnnotation(annot); } // doc.getModel().addSpecies(sp) ; } if (!specieslist.isEmpty()) { insertspecies = insertspecies.substring(0, insertspecies.length() - 1); insertspecies = insertspecies + ';'; } ArrayList<CompartmentList> complist = sql.getcompartments(modelids.getId()); if (!complist.isEmpty()) insertcompartment = insertcompartment + "\nInsert Into compartment (id, name,constant,model_id,spacialDimensions,size,units) Values"; for (CompartmentList comp : complist) { insertcompartment = insertcompartment + "(\'" + comp.getId() + "\',\'" + comp.getName() + "\'," + comp.getconstant() + ",\'" + modelids.getId() + "\'," + comp.getspatialdimensions() + "," + comp.getsize() + "," + comp.getunits() + "\'),"; Compartment c = doc.getModel().createCompartment(comp.getId()); c.setName(comp.getName()); c.setConstant(comp.getconstant()); c.setSize(comp.getsize()); c.setSpatialDimensions(comp.getspatialdimensions()); if (comp.getspatialdimensions() != 0) c.setUnits(comp.getunits()); // doc.getModel().addSpecies(sp) ; } if (!complist.isEmpty()) { insertcompartment = insertcompartment.substring(0, insertcompartment.length() - 1); insertcompartment = insertcompartment + ';'; } ArrayList<functionList> funclist = sql.getfunctions(modelids.getId()); if (!funclist.isEmpty()) insertfunction = insertfunction + "\nInsert Into functiondefinition (id, xmlns,model_id) Values"; for (functionList func : funclist) { insertfunction = insertfunction + "(\'" + func.getId() + "\',\'" + func.getxmlns() + "\',\'" + modelids.getId() + "\'),"; FunctionDefinition fd = doc.getModel().createFunctionDefinition(func.getId()); try { math = ASTNode.parseFormula(func.getxmlns()); fd.setMath(math); } catch (Exception e) { e.printStackTrace(); } } if (!funclist.isEmpty()) { insertfunction = insertfunction.substring(0, insertfunction.length() - 1); insertfunction = insertfunction + ';'; } ArrayList<unitList> unitlist = sql.getunitlist(modelids.getId()); if (!unitlist.isEmpty()) insertunitdef = insertunitdef + "\nInsert Into listofunitdefinitions (id,name,model_id) Values"; for (unitList units : unitlist) { insertunitdef = insertunitdef + "(\'" + units.getId() + "\',\'" + units.getName() + "\',\'" + modelids.getId() + "\'),"; UnitDefinition ud = doc.getModel().createUnitDefinition(units.getId()); ud.setName(units.getName()); ArrayList<unitList> unitdeflist = sql.getunitdef(units.getId()); if (!unitdeflist.isEmpty()) insertunits = insertunits + "\nInsert Into listofunits (listofunitdefinitions_id,kind, scale,exponent,multiplier) Values"; for (unitList unitdef : unitdeflist) { insertunits = insertunits + "(\'" + units.getId() + "\',\'" + unitdef.getkind() + "\'," + unitdef.getscale() + "," + unitdef.getexponent() + "," + unitdef.getmultiplier() + "),"; Unit u = ud.createUnit(Unit.Kind.valueOf(unitdef.getkind())); u.setScale(unitdef.getscale()); u.setExponent(unitdef.getexponent()); u.setMultiplier(unitdef.getmultiplier()); } // doc.getModel().addSpecies(sp) ; if (!unitdeflist.isEmpty()) { insertunits = insertunits.substring(0, insertunits.length() - 1); insertunits = insertunits + ';'; } } if (!unitlist.isEmpty()) { insertunitdef = insertunitdef.substring(0, insertunitdef.length() - 1); insertunitdef = insertunitdef + ';'; } ArrayList<reactionList> reactionlist = sql.getreactons(modelids.getId()); if (!reactionlist.isEmpty()) insertreaction = insertreaction + "\nInsert Into reaction (id,name, reversible,fast,model_id,compartment,annotation) Values"; for (reactionList reaction : reactionlist) { insertreaction = insertreaction + "(\'" + reaction.getId() + "\',\'" + reaction.getName() + "\'," + reaction.getreversible() + "," + reaction.getfast() + ",\'" + modelids.getId() + "\',\'" + reaction.getcompartment() + "\',\'" + reaction.getannotation() + "\'),"; Reaction rn = doc.getModel().createReaction(reaction.getId()); rn.setName(reaction.getName()); if (doc.getModel().getLevel() == 3) rn.setCompartment(reaction.getcompartment()); rn.setFast(reaction.getfast()); rn.setReversible(reaction.getreversible()); if (!reaction.getannotation().equals("")) { Annotation annot = new Annotation(reaction.getannotation().toString()); rn.setAnnotation(annot); } ArrayList<reactionList> reactantlist = sql.getreactants(reaction.getId()); if (!reactantlist.isEmpty()) insertreactant = insertreactant + "\nInsert Into simplespeciesreference (reaction_id,species, sboTerm,stoichiometry,speciestype,constant) Values"; for (reactionList reactant : reactantlist) { insertreactant = insertreactant + "(\'" + reaction.getId() + "\',\'" + reactant.getspecies() + "\',\'" + reactant.getsboTerm() + "\'," + reactant.getstoichometry() + "," + reactant.getconstant() + ",\'reactants\'),"; SpeciesReference rt = new SpeciesReference(); rt.setName(reactant.getspecies()); rt.setSpecies(reactant.getspecies()); // rt.setSBOTerm(reactant.getsboTerm()); rt.setStoichiometry(reactant.getstoichometry()); // rt.setConstant(reactant.getconstant()); rn.addReactant(rt); } if (!reactantlist.isEmpty()) { insertreactant = insertreactant.substring(0, insertreactant.length() - 1); insertreactant = insertreactant + ';'; } ArrayList<reactionList> productlist = sql.getproducts(reaction.getId()); if (!productlist.isEmpty()) insertproduct = insertproduct + "\nInsert Into simplespeciesreference (reaction_id,species, sboTerm,stoichiometry,constant,speciestype) Values"; for (reactionList product : productlist) { insertproduct = insertproduct + "(\'" + reaction.getId() + "\',\'" + product.getspecies() + "\',\'" + product.getsboTerm() + "\'," + product.getstoichometry() + "," + product.getconstant() + ",\'products\'),"; SpeciesReference pr = new SpeciesReference(); pr.setName(product.getspecies()); pr.setSpecies(product.getspecies()); // pr.setSBOTerm(product.getsboTerm()); pr.setStoichiometry(product.getstoichometry()); // pr.setConstant(product.getconstant()); rn.addProduct(pr); } if (!productlist.isEmpty()) { insertproduct = insertproduct.substring(0, insertproduct.length() - 1); insertproduct = insertproduct + ';'; } ArrayList<reactionList> modifierlist = sql.getmodifiers(reaction.getId()); if (!modifierlist.isEmpty()) insertmodifier = insertmodifier + "\nInsert Into modifierspeciesreference (reaction_id,species, sboTerm,speciestype) Values"; for (reactionList modifier : modifierlist) { insertmodifier = insertmodifier + "(\'" + reaction.getId() + "\',\'" + modifier.getspecies() + "\',\'" + modifier.getsboTerm() + "\',\'modifiers\'),"; ModifierSpeciesReference m = new ModifierSpeciesReference(); m.setName(modifier.getspecies()); m.setSpecies(modifier.getspecies()); // m.setSBOTerm(modifier.getsboTerm()); rn.addModifier(m); } if (!modifierlist.isEmpty()) { insertmodifier = insertmodifier.substring(0, insertmodifier.length() - 1); insertmodifier = insertmodifier + ';'; } ArrayList<reactionList> klawlist = sql.getkineticlaws(reaction.getId()); if (!klawlist.isEmpty()) insertklaw = insertklaw + "\nInsert Into kineticlaw (reaction_id,kid, math,annotation) Values"; for (reactionList klaw : klawlist) { insertklaw = insertklaw + "(\'" + reaction.getId() + "\',\'" + klaw.getId() + "\',\'" + klaw.getmath() + "\',\'" + klaw.getannotation() + "\'),"; KineticLaw kl = rn.createKineticLaw(); try { math = ASTNode.parseFormula(klaw.getmath()); kl.setMath(math); if (!klaw.getannotation().equals("")) { Annotation annot = new Annotation(klaw.getannotation().toString()); kl.setAnnotation(annot); } } catch (Exception e) { e.printStackTrace(); } } if (!klawlist.isEmpty()) { insertklaw = insertklaw.substring(0, insertklaw.length() - 1); insertklaw = insertklaw + ';'; } } if (!reactionlist.isEmpty()) { insertreaction = insertreaction.substring(0, insertreaction.length() - 1); insertreaction = insertreaction + ';'; } ArrayList<parameterList> paralist = sql.getparameters(modelids.getId()); if (!paralist.isEmpty()) insertparameter = insertparameter + "\nInsert Into parameter (id,name,value,units,constant,model_id) Values"; for (parameterList para : paralist) { insertparameter = insertparameter + "(\'" + para.getId() + "\',\'" + para.getName() + "\'," + para.getvalue() + "," + para.getunits() + "," + para.getconstant() + ",\'" + modelids.getId() + "\'),"; Parameter par = doc.getModel().createParameter(para.getId()); par.setName(para.getId()); par.setConstant(para.getconstant()); par.setUnits(para.getunits()); par.setValue(para.getvalue()); } if (!paralist.isEmpty()) { insertparameter = insertparameter.substring(0, insertparameter.length() - 1); insertparameter = insertparameter + ';'; } ArrayList<constraintList> conslist = sql.getconstraints(modelids.getId()); if (!conslist.isEmpty()) insertconstraint = insertconstraint + "\nInsert Into sbmlconstraint (math,message,model_id) Values"; for (constraintList constraint : conslist) { insertconstraint = insertconstraint + "(\'" + constraint.getmath() + "\',\'" + constraint.getmessage() + "\',\'" + modelids.getId() + "\'),"; Constraint cons = doc.getModel().createConstraint(); try { math = ASTNode.parseFormula(constraint.getmath()); cons.setMath(math); cons.setMessage(constraint.getmessage()); } catch (Exception e) { e.printStackTrace(); } } if (!conslist.isEmpty()) { insertconstraint = insertconstraint.substring(0, insertconstraint.length() - 1); insertconstraint = insertconstraint + ';'; } ArrayList<eventsList> eventlist = sql.getevents(modelids.getId()); if (!eventlist.isEmpty()) insertevent = insertevent + "\nInsert Into event (id,name,UseValuesFromTriggerTime,model_id) Values"; for (eventsList events : eventlist) { insertevent = insertevent + "(\'" + events.getId() + "\',\'" + events.getName() + "\'," + events.getuservalues() + ",\'" + modelids.getId() + "\'),"; Event ev = doc.getModel().createEvent(events.getId()); ev.setName(events.getName()); // ev.setUseValuesFromTriggerTime(events.getuservalues()); ArrayList<eventsList> triggerlist = sql.gettriggers(events.getId()); if (!triggerlist.isEmpty()) inserttrigger = inserttrigger + "\nInsert Into sbmltrigger (event_id,initialvalue,persisent,math) Values"; for (eventsList triggers : triggerlist) { Trigger tr = doc.getModel().createTrigger(); try { math = ASTNode.parseFormula(triggers.getmath()); tr.setMath(math); tr.setInitialValue(triggers.getinitialval()); tr.setPersistent(triggers.getpersistent()); } catch (Exception e) { e.printStackTrace(); } } if (!triggerlist.isEmpty()) { inserttrigger = inserttrigger.substring(0, insertmodel.length() - 1); inserttrigger = inserttrigger + ';'; } ArrayList<eventsList> delaylist = sql.getdelays(events.getId()); if (!delaylist.isEmpty()) insertdelay = insertdelay + "\nInsert Into delay (event_id,math) Values"; for (eventsList delays : delaylist) { Delay d = doc.getModel().createDelay(); try { math = ASTNode.parseFormula(delays.getmath()); d.setMath(math); } catch (Exception e) { e.printStackTrace(); } } if (!delaylist.isEmpty()) { insertdelay = insertdelay.substring(0, insertdelay.length() - 1); insertdelay = insertdelay + ';'; } ArrayList<eventsList> evasslist = sql.geteventassignments(events.getId()); if (!evasslist.isEmpty()) inserteventassign = inserteventassign + "\nInsert Into eventassignment (event_id,variable,math) Values"; for (eventsList evassign : evasslist) { EventAssignment ea = doc.getModel().createEventAssignment(); try { math = ASTNode.parseFormula(evassign.getmath()); ea.setMath(math); } catch (Exception e) { e.printStackTrace(); } } if (!evasslist.isEmpty()) { inserteventassign = inserteventassign.substring(0, inserteventassign.length() - 1); inserteventassign = inserteventassign + ';'; } } if (!eventlist.isEmpty()) { insertevent = insertevent.substring(0, insertevent.length() - 1); insertevent = insertevent + ';'; } ArrayList<ruleslist> rulelist = sql.getrules(modelids.getId()); if (!rulelist.isEmpty()) insertrules = insertrules + "\nInsert Into rules (id,math,ruletype,model_id) Values"; for (ruleslist rules : rulelist) { insertrules = insertrules + "(\'" + rules.getId() + "\',\'" + rules.getmath() + "\',\'" + rules.getruletype() + "\',\'" + modelids.getId() + "\'),"; if (rules.getruletype().equals("assignmentrule")) { Rule r = doc.getModel().createAssignmentRule(); r.setMetaId(rules.getId()); try { math = ASTNode.parseFormula(rules.getmath()); r.setMath(math); } catch (Exception e) { e.printStackTrace(); } } } if (!rulelist.isEmpty()) { insertrules = insertrules.substring(0, insertrules.length() - 1); insertrules = insertrules + ';'; } SBMLWriter writer = new SBMLWriter(); try { String Path = filepath + modelids.getId() + ".xml"; writer.write(doc, Path); DocumentBuilderFactory documentBuilderFactory = DocumentBuilderFactory.newInstance(); DocumentBuilder documentBuilder = documentBuilderFactory.newDocumentBuilder(); Document document = documentBuilder.parse(Path); Element root = document.getDocumentElement(); Element newdataset = document.createElement("dataset"); root.appendChild(newdataset); ArrayList<dataset> datasetlist = sql.getdataset(modelids.getId()); for (dataset ds : datasetlist) { // System.out.println(ds.getexpcond()); Element name = document.createElement("experimentalcondition"); name.setAttribute("bioelement", ds.getbioel()); name.setAttribute("name", ds.getName()); name.setAttribute("descr", ds.getdescr()); name.setAttribute("expcond", ds.getexpcond()); name.setAttribute("value", String.valueOf(ds.getvalue())); name.setAttribute("type", ds.gettype()); name.setAttribute("uri", ds.geturi()); newdataset.appendChild(name); } root.appendChild(newdataset); DOMSource source = new DOMSource(document); TransformerFactory transformerFactory = TransformerFactory.newInstance(); Transformer transformer = transformerFactory.newTransformer(); transformer.setOutputProperty(OutputKeys.INDENT, "yes"); transformer.setOutputProperty(OutputKeys.METHOD, "xml"); transformer.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "4"); StreamResult result = new StreamResult(filepath + modelids.getId() + "d.xml"); transformer.transform(source, result); System.out.println( "Files : " + modelids.getId() + ".xml and " + modelids.getId() + "d.xml have been generated successfully !!!"); } catch (Exception e) { e.printStackTrace(); } insertstatement = insertstatement + "\n\n" + insertmodel + "\n" + insertspecies + "\n" + insertcompartment + "\n" + insertfunction; insertstatement = insertstatement + "\n" + insertparameter + "\n" + insertreaction + "\n" + insertreactant + "\n" + insertproduct; insertstatement = insertstatement + "\n" + insertmodifier + "\n" + insertklaw + "\n" + insertunitdef + "\n" + insertunits; insertstatement = insertstatement + "\n" + insertrules + "\n" + insertconstraint + "\n" + insertevent + "\n" + inserttrigger + "\n" + insertdelay + "\n" + inserteventassign; insertcompartment = ""; insertmodel = ""; insertspecies = ""; // System.out.println("document : " + doc); } insertstatement = insertstatement + "\nUNLOCK TABLES;"; Filedata = Filedata + "\n\n\n" + insertstatement; try { wrtireStringToFile(Filedata, filepath + "sbmldb.sql"); } catch (IOException e) { e.printStackTrace(); } // System.out.println(insertstatement); }
@Override public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException { tags.add(qName); if (debug) { System.out.println("Start Element: " + qName + " parent: " + getParent()); } dumpAttrs(attributes); lastText = ""; if (qName.equalsIgnoreCase("object") && (getParent().equals("model") || getParent().equals("component"))) { pushHandler(new ObjectHandler(isService)); } else if (qName.equalsIgnoreCase(ParamHandler.TOP_TAG) && getParent().equals("object") && !isAnyChildOf("profile")) { ObjectHandler oh = (ObjectHandler) getHandler(); pushHandler(new ParamHandler((oh != null ? oh.getParam().getName() : ""))); } else if (qName.equalsIgnoreCase(DatatypeHandler.TOP_TAG) && getParent().equals("dm:document")) { pushHandler(new DatatypeHandler()); } else if (qName.equalsIgnoreCase(BibiliographyHandler.TOP_TAG) && getParent().equals("dm:document")) { pushHandler(new BibiliographyHandler()); } else if (qName.equalsIgnoreCase("component")) { if (getParent().equals("import")) { String n = attributes.getValue("name"); dumpTags(); if (n != null) { // TODO really import or maybe do nothing } } else if (getParent().equals("model")) { dumpTags(); String path = attributes.getValue("path"); String ref = attributes.getValue("ref"); if (ref != null && path != null) { List<Parameter> cs = components.get(ref); if (cs != null) { for (Parameter p : cs) { // copy parameters Parameter pc = p.clone(); pc.setName(path + pc.getName()); Parameter.Add(pc); } } } } else { dumpTags(); currentComponent = attributes.getValue("name"); pushHandler(new ComponentHandler()); } } else if (qName.equalsIgnoreCase("model")) { try { isService = attributes.getValue("isService").equals("true"); } catch (NullPointerException e) { } Model.setName(attributes.getValue("name")); } else if (qName.equalsIgnoreCase("import")) { String fname = attributes.getValue("file"); InputStream is = streamProvider.getStream(dirDefault + fname); if (is == null) { String fnameBase = fname.substring(0, fname.length() - 4); fname = fnameBase + "-0.xml"; is = streamProvider.getStream(dirDefault + fname); } try { Parse(is, fname); } catch (Exception e) { e.printStackTrace(); System.out.println("EXCEPTION: (import " + fname + ") " + e.getMessage()); } } else if (qName.equalsIgnoreCase("profile")) { pushHandler(new NullHandler(qName)); } else if (getParent().equals("")) { handlers.clear(); } else { } DefaultHandler h = getHandler(); if (h != null) { h.startElement(uri, localName, qName, attributes); } }
private ClassWriter generateCommandX(final Method method, final String resultClass) throws Exception { final String className = method.getName().substring(0, 1).toUpperCase() + method.getName().substring(1) + "Command"; final ClassWriter classWriter = new ClassWriter( this, getSrcGeneratedDirectory(), GeneratorHelper.getCommandPackage(domain), className); final Constructor constructor = new Constructor(); final Parameter eventBusParameter = new Parameter(); eventBusParameter.setName("eventBus"); eventBusParameter.setClazz("com.ponysdk.core.event.EventBus"); final List<Parameter> parameters = method.getParameter(); final List<Parameter> clonedParameters = new ArrayList<Parameter>(); for (final Parameter parameter : parameters) { final Parameter clonedParameter = new Parameter(); clonedParameter.setClazz(parameter.getClazz()); clonedParameter.setName(parameter.getName()); clonedParameter.setCollection(parameter.getCollection()); clonedParameters.add(clonedParameter); } final Constructor constructor2 = new Constructor(); constructor2.setConstructorParameters(new ArrayList<Parameter>(clonedParameters)); clonedParameters.add(0, eventBusParameter); constructor.setConstructorParameters(clonedParameters); constructor.setSuperConstructorParameters(Arrays.asList(eventBusParameter)); classWriter.addConstructor(constructor); classWriter.addConstructor(constructor2); for (final Parameter param : parameters) { classWriter.addClassMembers(param); } classWriter.addConstants( "private static " + GeneratorHelper.getServiceFullClassName(domain) + " service;"); final StringBuilder template = new StringBuilder(); template.append("@Override\n"); if (resultClass.equals("void") && method.getReturn().getValue() == null) { template.append("protected java.lang.Void execute0() throws Exception {\n"); } else { template.append("protected " + resultClass + " execute0() throws Exception {\n"); } template.append(" if (service == null) {\n"); template.append( " service = com.ponysdk.core.service.PonyServiceRegistry.getPonyService(" + GeneratorHelper.getServiceFullClassName(domain) + ".class);"); template.append(" }\n"); if (resultClass.equals("void") && method.getReturn().getValue() == null) { template.append(" service.%1$s(%2$s);\n"); template.append(" return null;\n"); } else { template.append(" return service.%1$s(%2$s);\n"); } template.append("}\n"); classWriter.addMethod( template.toString(), method.getName(), GeneratorHelper.getParameterNamesToString(method.getParameter())); return classWriter; }
private void generateCRUDMethos() throws Exception { // Insert CRUD methods if (domain.getService() != null && domain.getService().getCrudmethod() != null) { // Return final Return crudReturn = new Return(); crudReturn.setClazz(domain.getService().getCrudmethod().getClazz()); // Parameters final Parameter crudParameter = new Parameter(); crudParameter.setClazz(domain.getService().getCrudmethod().getClazz()); crudParameter.setName(GeneratorHelper.getFirstCharToLower(domain.getName())); final Parameter crudIDParameter = new Parameter(); crudIDParameter.setClazz("long"); crudIDParameter.setName(GeneratorHelper.getFirstCharToLower(domain.getName()) + "ID"); // Add CRUD methods final Method createMethod = createCRUDMethod("create" + domain.getName(), crudParameter, crudReturn); final Method readMethod = createCRUDMethod("read" + domain.getName(), crudIDParameter, crudReturn); final Method updateMethod = createCRUDMethod("update" + domain.getName(), crudParameter, crudReturn); final Method deleteMethod = createCRUDMethod("delete" + domain.getName(), crudIDParameter, new Return()); // Create the implementation class of these CRUD methods if the HibernateDAO is set if (domain.getService().getDao() != null) { final ClassWriter classWriter = new ClassWriter( this, getSrcGeneratedDirectory(), GeneratorHelper.getServerServicePackage(domain), GeneratorHelper.getServiceImplClassName(domain)); classWriter.addImplements(GeneratorHelper.getServiceClassName(domain)); classWriter.setGenerateGetter(true); classWriter.setGenerateSetter(true); // Add static logger classWriter.addConstants( "private static final org.slf4j.Logger log = org.slf4j.LoggerFactory.getLogger(" + GeneratorHelper.getServiceImplClassName(domain) + ".class);"); // Add service HibernateDAO object final Parameter daoParameter = new Parameter(); daoParameter.setClazz( GeneratorHelper.getDAOPackage(domain) + "." + GeneratorHelper.getDAOClassName(domain)); daoParameter.setName( GeneratorHelper.getFirstCharToLower(GeneratorHelper.getDAOClassName(domain))); classWriter.addClassMembers(daoParameter); for (final Method method : domain.getService().getMethod()) { final String resultClass = GeneratorHelper.getClassName(method.getReturn()); classWriter.addNewLine(); classWriter.addLine("@Override"); classWriter.addLine( "public " + resultClass + " " + method.getName() + "(" + GeneratorHelper.getParameterToString(method.getParameter()) + ") throws Exception {"); if (!"void".equals(resultClass)) { classWriter.addLine(" return null;"); } classWriter.addLine("}"); } final String domainClass = domain.getName(); final String domainDAOParameter = GeneratorHelper.getFirstCharToLower(GeneratorHelper.getDAOClassName(domain)); final String domainParameter = GeneratorHelper.getFirstCharToLower(domain.getName()); final String domainParameterID = domainParameter + "ID"; /* * CRUD method implementation */ // Create classWriter.addLine("@Override"); classWriter.addLine( "public " + GeneratorHelper.getClassName(createMethod.getReturn()) + " " + createMethod.getName() + " (" + GeneratorHelper.getParameterToString(createMethod.getParameter()) + ") throws Exception {"); classWriter.addLine(" " + domainDAOParameter + ".beginTransaction();"); classWriter.addLine(" try {"); classWriter.addLine(" " + domainDAOParameter + ".save(" + domainParameter + ");"); classWriter.addLine(" " + domainDAOParameter + ".commit();"); classWriter.addLine(" } catch (final Exception e) {"); classWriter.addLine( " log.error(\"final Cannot create " + domainClass + " in database\", e);"); classWriter.addLine(" " + domainDAOParameter + ".rollback();"); classWriter.addLine( " throw new Exception(\"Cannot create " + domainClass + " in database\", e);"); classWriter.addLine(" }"); classWriter.addLine(" return " + domainParameter + ";"); classWriter.addLine("}"); // Read classWriter.addLine("@Override"); classWriter.addLine( "public " + GeneratorHelper.getClassName(createMethod.getReturn()) + " " + readMethod.getName() + " (" + GeneratorHelper.getParameterToString(readMethod.getParameter()) + ") throws Exception {"); classWriter.addLine( " " + GeneratorHelper.getClassName(createMethod.getReturn()) + " " + domainParameter + " = null;"); classWriter.addLine(" " + domainDAOParameter + ".beginTransaction();"); classWriter.addLine(" try {"); classWriter.addLine( " " + domainParameter + " = " + domainDAOParameter + ".findById(" + domainParameterID + ");"); classWriter.addLine(" " + domainDAOParameter + ".commit();"); classWriter.addLine(" } catch (final Exception e) {"); classWriter.addLine( " log.error(\"final Cannot find " + domain.getName() + " in database\", e);"); classWriter.addLine(" " + domainDAOParameter + ".rollback();"); classWriter.addLine( " throw new Exception(\"Cannot find " + domain.getName() + " in database\", e);"); classWriter.addLine(" }"); classWriter.addLine(" return " + domainParameter + ";"); classWriter.addLine("}"); // Update classWriter.addLine("@Override"); classWriter.addLine( "public " + GeneratorHelper.getClassName(updateMethod.getReturn()) + " " + updateMethod.getName() + " (" + GeneratorHelper.getParameterToString(updateMethod.getParameter()) + ") throws Exception {"); classWriter.addLine(" " + domainDAOParameter + ".beginTransaction();"); classWriter.addLine(" try {"); classWriter.addLine( " " + domainDAOParameter + ".saveOrUpdate(" + domainParameter + ");"); classWriter.addLine(" " + domainDAOParameter + ".commit();"); classWriter.addLine(" } catch (final Exception e) {"); classWriter.addLine( " log.error(\"final Cannot update " + domainClass + " in database\", e);"); classWriter.addLine(" " + domainDAOParameter + ".rollback();"); classWriter.addLine( " throw new Exception(\"Cannot update " + domainClass + " in database\", e);"); classWriter.addLine(" }"); classWriter.addLine(" return " + domainParameter + ";"); classWriter.addLine("}"); // Delete classWriter.addLine("@Override"); classWriter.addLine( "public " + GeneratorHelper.getClassName(deleteMethod.getReturn()) + " " + deleteMethod.getName() + " (" + GeneratorHelper.getParameterToString(deleteMethod.getParameter()) + ") throws Exception {"); classWriter.addLine(" " + domainDAOParameter + ".beginTransaction();"); classWriter.addLine(" try {"); classWriter.addLine( " " + GeneratorHelper.getClassName(createMethod.getReturn()) + " " + domainParameter + " = " + domainDAOParameter + ".findById(" + domainParameterID + ");"); classWriter.addLine(" " + domainDAOParameter + ".delete(" + domainParameter + ");"); classWriter.addLine(" " + domainDAOParameter + ".commit();"); classWriter.addLine(" } catch (final Exception e) {"); classWriter.addLine( " log.error(\"final Cannot delete " + domain.getName() + " in database\", e);"); classWriter.addLine(" " + domainDAOParameter + ".rollback();"); classWriter.addLine( " throw new Exception(\"Cannot delete " + domain.getName() + " in database\", e);"); classWriter.addLine(" }"); classWriter.addLine("}"); classWriter.generateContentAndStore(); } domain.getService().getMethod().add(createMethod); domain.getService().getMethod().add(readMethod); domain.getService().getMethod().add(updateMethod); domain.getService().getMethod().add(deleteMethod); } }
/* * Services : MongoDBDAO */ private void generateMongoDBDAO(final Dao dao) throws Exception { final ClassWriter classWriter = new ClassWriter( this, getSrcGeneratedDirectory(), GeneratorHelper.getDAOPackage(domain), GeneratorHelper.getDAOClassName(domain)); classWriter.addImport("com.fasterxml.jackson.databind.ObjectMapper"); classWriter.addImport("com.mongodb.BasicDBObject"); classWriter.addImport("com.mongodb.DBCollection"); classWriter.addImport("com.mongodb.DBObject"); classWriter.addImport("com.mongodb.DBCursor"); classWriter.addImport("java.util.List"); classWriter.addImport("java.util.ArrayList"); classWriter.addExtend("com.ponysdk.mongodb.dao.MongoDAO"); // Add static logger classWriter.addConstants( "private static final org.slf4j.Logger log = org.slf4j.LoggerFactory.getLogger(" + GeneratorHelper.getDAOClassName(domain) + ".class);"); // Create constructor final List<Parameter> parameters = new ArrayList<Parameter>(); final Parameter sessionFactoryParameter = new Parameter(); sessionFactoryParameter.setName("sessionFactory"); sessionFactoryParameter.setClazz("org.hibernate.SessionFactory"); // parameters.add(sessionFactoryParameter); final Constructor constructor = new Constructor(parameters, parameters); classWriter.addConstructor(constructor); // Create findById method classWriter.addNewLine(); classWriter.addLine("final public " + dao.getClazz() + " findById(final long id) {"); classWriter.addLine(" if (log.isDebugEnabled()) {"); classWriter.addLine( " log.debug(\"getting " + domain.getName() + " instance with id: \" + id);"); classWriter.addLine(" }"); classWriter.addNewLine(); classWriter.addLine(" try {"); classWriter.addLine( " DBCollection collection = db.getCollection(\"" + domain.getName().toLowerCase() + "\");"); classWriter.addLine(" BasicDBObject basicDBObject = new BasicDBObject(\"id\"," + "id);"); classWriter.addLine(" final DBObject foundInstance = collection.findOne(basicDBObject);"); classWriter.addLine(" " + dao.getClazz() + " instance = null;"); classWriter.addLine(" return toModel(foundInstance);"); classWriter.addLine(" } catch (final Exception re) {"); classWriter.addLine(" log.error(\"getting " + domain.getName() + " by id failed\", re);"); classWriter.addLine(" throw new RuntimeException(re);"); classWriter.addLine(" }"); classWriter.addLine("}"); classWriter.addLine("private " + dao.getClazz() + " toModel(DBObject dbObject) {"); classWriter.addLine(" if (dbObject == null) return null;"); classWriter.addLine(" final ObjectMapper mapper = new ObjectMapper();"); classWriter.addLine(" try{"); classWriter.addLine( " " + dao.getClazz() + " model = mapper.readValue(dbObject.toString(), " + dao.getClazz() + ".class);"); classWriter.addLine(" model.setID(dbObject.get(\"_id\"));"); classWriter.addLine(" return model;"); classWriter.addLine(" } catch (final Exception e) {"); classWriter.addLine(" log.error(\"toModel " + domain.getName() + " failed\", e);"); classWriter.addLine(" throw new RuntimeException(e);"); classWriter.addLine(" }"); classWriter.addLine("}"); // Create findAll method classWriter.addNewLine(); classWriter.addLine("@SuppressWarnings(\"unchecked\")"); classWriter.addLine("public java.util.List<" + dao.getClazz() + "> findAll() {"); classWriter.addLine(" if (log.isDebugEnabled()) {"); classWriter.addLine(" log.debug(\"finding all " + domain.getName() + "\");"); classWriter.addLine(" }"); classWriter.addNewLine(); classWriter.addLine(" DBCursor cursor = null;"); classWriter.addLine(" try {"); classWriter.addLine( " DBCollection collection = db.getCollection(\"" + domain.getName().toLowerCase() + "\");"); classWriter.addLine(" cursor = collection.find();"); classWriter.addLine( " List<" + dao.getClazz() + "> result = new ArrayList<" + dao.getClazz() + ">();"); classWriter.addLine(" while(cursor.hasNext()){"); classWriter.addLine(" result.add(toModel(cursor.next()));"); classWriter.addLine(" }"); classWriter.addLine(" return result;"); classWriter.addLine(" } catch (final RuntimeException re) {"); classWriter.addLine(" log.error(\"finding all " + domain.getName() + " failed\", re);"); classWriter.addLine(" throw re;"); classWriter.addLine(" } finally{"); classWriter.addLine(" cursor.close();"); classWriter.addLine(" }"); classWriter.addLine("}"); // Create find by query method classWriter.addNewLine(); classWriter.addLine("@SuppressWarnings(\"unchecked\")"); classWriter.addLine("@Override"); classWriter.addLine("public java.util.List<" + dao.getClazz() + "> find(Object query) {"); classWriter.addLine(" if (log.isDebugEnabled()) {"); classWriter.addLine(" log.debug(\"finding " + domain.getName() + " by query\");"); classWriter.addLine(" }"); classWriter.addNewLine(); classWriter.addLine(" DBCursor cursor = null;"); classWriter.addLine(" try {"); classWriter.addLine( " DBCollection collection = db.getCollection(\"" + domain.getName().toLowerCase() + "\");"); classWriter.addLine(" cursor = collection.find((DBObject)query);"); classWriter.addLine( " List<" + dao.getClazz() + "> result = new ArrayList<" + dao.getClazz() + ">();"); classWriter.addLine(" while(cursor.hasNext()){"); classWriter.addLine(" result.add(toModel(cursor.next()));"); classWriter.addLine(" }"); classWriter.addLine(" return result;"); classWriter.addLine(" } catch (final RuntimeException re) {"); classWriter.addLine(" log.error(\"find " + domain.getName() + " failed\", re);"); classWriter.addLine(" throw re;"); classWriter.addLine(" } finally{"); classWriter.addLine(" cursor.close();"); classWriter.addLine(" }"); classWriter.addLine("}"); classWriter.generateContentAndStore(); }
private void generateHibernateDAO(final Dao dao) throws Exception { final ClassWriter classWriter = new ClassWriter( this, getSrcGeneratedDirectory(), GeneratorHelper.getDAOPackage(domain), GeneratorHelper.getDAOClassName(domain)); classWriter.addExtend("com.ponysdk.hibernate.dao.HibernateDAO"); // Add static logger classWriter.addConstants( "private static final org.slf4j.Logger log = org.slf4j.LoggerFactory.getLogger(" + GeneratorHelper.getDAOClassName(domain) + ".class);"); // Create constructor final List<Parameter> parameters = new ArrayList<Parameter>(); final Parameter sessionFactoryParameter = new Parameter(); sessionFactoryParameter.setName("sessionFactory"); sessionFactoryParameter.setClazz("org.hibernate.SessionFactory"); parameters.add(sessionFactoryParameter); final Constructor constructor = new Constructor(parameters, parameters); classWriter.addConstructor(constructor); // Create findById method classWriter.addNewLine(); classWriter.addLine("final public " + dao.getClazz() + " findById(final long id) {"); classWriter.addLine(" if (log.isDebugEnabled()) {"); classWriter.addLine( " log.debug(\"getting " + domain.getName() + " instance with id: \" + id);"); classWriter.addLine(" }"); classWriter.addNewLine(); classWriter.addLine(" try {"); classWriter.addLine( " " + dao.getClazz() + " instance = (" + dao.getClazz() + ") sessionFactory.getCurrentSession().get(" + dao.getClazz() + ".class, id);"); classWriter.addLine(" return instance;"); classWriter.addLine(" } catch (final RuntimeException re) {"); classWriter.addLine(" log.error(\"getting " + domain.getName() + " by id failed\", re);"); classWriter.addLine(" throw re;"); classWriter.addLine(" }"); classWriter.addLine("}"); // Create findAll method classWriter.addNewLine(); classWriter.addLine("@SuppressWarnings(\"unchecked\")"); classWriter.addLine("public java.util.List<" + dao.getClazz() + "> findAll() {"); classWriter.addLine(" if (log.isDebugEnabled()) {"); classWriter.addLine( " log.debug(\"finding " + domain.getName() + " instance by example\");"); classWriter.addLine(" }"); classWriter.addNewLine(); classWriter.addLine(" try {"); classWriter.addLine( " final java.util.List<" + dao.getClazz() + "> results = sessionFactory.getCurrentSession().createQuery(\"FROM " + domain.getName() + "\").list();"); classWriter.addLine(" return results;"); classWriter.addLine(" } catch (final RuntimeException re) {"); classWriter.addLine(" log.error(\"finding all " + domain.getName() + " failed\", re);"); classWriter.addLine(" throw re;"); classWriter.addLine(" }"); classWriter.addLine("}"); classWriter.generateContentAndStore(); }