@SuppressWarnings("unchecked") @Override public <T> T adapt(RuleAtom ruleAtom) throws RuleAtomCallExeption, UnavailableRuleObjectException, UnsupportedTypeForExportException { org.apache.stanbol.rules.manager.atoms.SubstringAtom tmp = (org.apache.stanbol.rules.manager.atoms.SubstringAtom) ruleAtom; StringFunctionAtom argument = tmp.getStringFunctionAtom(); NumericFunctionAtom start = tmp.getStart(); NumericFunctionAtom length = tmp.getLength(); ClerezzaSparqlObject clerezzaArgument = (ClerezzaSparqlObject) adapter.adaptTo(argument, ConstructQuery.class); ClerezzaSparqlObject clerezzaStart = (ClerezzaSparqlObject) adapter.adaptTo(start, ConstructQuery.class); ClerezzaSparqlObject clerezzaLength = (ClerezzaSparqlObject) adapter.adaptTo(length, ConstructQuery.class); List<Expression> argumentExpressions = new ArrayList<Expression>(); argumentExpressions.add((Expression) clerezzaArgument.getClerezzaObject()); argumentExpressions.add((Expression) clerezzaStart.getClerezzaObject()); argumentExpressions.add((Expression) clerezzaLength.getClerezzaObject()); FunctionCall functionCall = new FunctionCall(new IRI( "<http://www.w3.org/2005/xpath-functions#substring>"), argumentExpressions); return (T) new ClerezzaSparqlObject(functionCall); }
final public SubstringAtom substringAtom() throws ParseException { StringFunctionAtom arg; NumericFunctionAtom start; NumericFunctionAtom length; jj_consume_token(SUBSTRING); jj_consume_token(LPAR); arg = stringFunctionAtom(); jj_consume_token(COMMA); start = numericFunctionAtom(); jj_consume_token(COMMA); length = numericFunctionAtom(); jj_consume_token(RPAR); {if (true) return new SubstringAtom(arg, start, length);} throw new Error("Missing return statement in function"); }
final public SubstringAtom substringAtom() throws ParseException { StringFunctionAtom arg; NumericFunctionAtom start; NumericFunctionAtom length; jj_consume_token(SUBSTRING); jj_consume_token(LPAR); arg = stringFunctionAtom(); jj_consume_token(COMMA); start = numericFunctionAtom(); jj_consume_token(COMMA); length = numericFunctionAtom(); jj_consume_token(RPAR); {if (true) return new SubstringAtom(arg, start, length);} throw new Error("Missing return statement in function"); }
StringFunctionAtom stringFunctionAtom = tmp.getStringFunctionAtom(); NumericFunctionAtom startAtom = tmp.getStart(); NumericFunctionAtom lengthAtom = tmp.getLength();
StringFunctionAtom stringFunction = tmp.getStringFunctionAtom(); NumericFunctionAtom start = tmp.getStart(); NumericFunctionAtom length = tmp.getLength();