package session; import gov.nasa.ial.mde.describer.Describer; import gov.nasa.ial.mde.properties.MdeSettings; import gov.nasa.ial.mde.solver.Solver; import java.util.Vector; public class MathEquationBean { Vector<String> v = new Vector<String>(); String submit = null; String item = null; private void addItem(String name) { v.addElement(name); } private void removeItem(String name) { v.removeElement(name); } public void setItem(String name) { item = name; } public void setSubmit(String s) { submit = s; } public String[] getItems() { String[] s = new String[v.size()]; v.copyInto(s); return s; } public String getMathDescription(String equation) { String description = null; MdeSettings currentSettings = new MdeSettings("myAppsMdeProperties"); Solver solver = new Solver(); Describer describer = new Describer(solver, currentSettings); describer.setOutputFormat(Describer.TEXT_OUTPUT); solver.add(equation); solver.solve(); //solver.get(0).getAnalyzedItem().getFeatures(); if (solver.anyDescribable()) description = describer.getDescriptions("standards"); else description = "Equation `" + equation + " ` is not supported by MDE."; solver.removeAll(); return description; } public void processRequest() { // null value for submit - user hit enter instead of clicking on // "add" or "remove" if (submit == null || submit.equals("add")) addItem(item); else if (submit.equals("remove")) removeItem(item); // reset at the end of the request reset(); } // reset private void reset() { submit = null; item = null; } }