document.write('<link rel="stylesheet" href="http://gist.github.com/stylesheets/gist/embed.css"/>')





document.write('<div id=\"gist-120467\" class=\"gist\">\n  \n  \n    \n            \n\n      <div class=\"gist-file\">\n        <div class=\"gist-data gist-syntax\">\n          \n          \n          \n            <div class=\"gist-highlight\"><pre><div class=\"line\" id=\"LC1\"><span class=\"kd\">public<\/span> <span class=\"kd\">class<\/span> <span class=\"nc\">EvalCommand<\/span> <span class=\"kd\">extends<\/span> <span class=\"n\">AbstractCommand<\/span> <span class=\"o\">{<\/span><\/div><div class=\"line\" id=\"LC2\">&nbsp;<\/div><div class=\"line\" id=\"LC3\">&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"nd\">@Override<\/span><\/div><div class=\"line\" id=\"LC4\">&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"kd\">public<\/span> <span class=\"kt\">void<\/span> <span class=\"nf\">execute<\/span><span class=\"o\">(<\/span><span class=\"n\">CommandCall<\/span> <span class=\"n\">commandCall<\/span><span class=\"o\">,<\/span> <span class=\"n\">Evaluator<\/span> <span class=\"n\">evaluator<\/span><span class=\"o\">,<\/span> <span class=\"n\">ResultRecorder<\/span> <span class=\"n\">resultRecorder<\/span><span class=\"o\">)<\/span> <span class=\"o\">{<\/span><\/div><div class=\"line\" id=\"LC5\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"n\">Check<\/span><span class=\"o\">.<\/span><span class=\"na\">isFalse<\/span><span class=\"o\">(<\/span><span class=\"n\">commandCall<\/span><span class=\"o\">.<\/span><span class=\"na\">hasChildCommands<\/span><span class=\"o\">(),<\/span> <span class=\"s\">&quot;Nesting commands inside an &#39;eval&#39; is not supported&quot;<\/span><span class=\"o\">);<\/span><\/div><div class=\"line\" id=\"LC6\">&nbsp;<\/div><div class=\"line\" id=\"LC7\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"n\">Element<\/span> <span class=\"n\">element<\/span> <span class=\"o\">=<\/span> <span class=\"n\">commandCall<\/span><span class=\"o\">.<\/span><span class=\"na\">getElement<\/span><span class=\"o\">();<\/span><\/div><div class=\"line\" id=\"LC8\">&nbsp;<\/div><div class=\"line\" id=\"LC9\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"n\">String<\/span> <span class=\"n\">evalString<\/span> <span class=\"o\">=<\/span> <span class=\"n\">element<\/span><span class=\"o\">.<\/span><span class=\"na\">getText<\/span><span class=\"o\">();<\/span><\/div><div class=\"line\" id=\"LC10\">&nbsp;<\/div><div class=\"line\" id=\"LC11\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"n\">Check<\/span><span class=\"o\">.<\/span><span class=\"na\">notNull<\/span><span class=\"o\">(<\/span><span class=\"n\">evalString<\/span><span class=\"o\">,<\/span> <span class=\"s\">&quot;The body must be set for an element containing smx:eval&quot;<\/span><span class=\"o\">);<\/span><\/div><div class=\"line\" id=\"LC12\">&nbsp;<\/div><div class=\"line\" id=\"LC13\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"k\">try<\/span> <span class=\"o\">{<\/span><\/div><div class=\"line\" id=\"LC14\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"n\">evaluator<\/span><span class=\"o\">.<\/span><span class=\"na\">evaluate<\/span><span class=\"o\">(<\/span><span class=\"n\">convertToCamel<\/span><span class=\"o\">(<\/span><span class=\"n\">evalString<\/span><span class=\"o\">)<\/span> <span class=\"o\">+<\/span> <span class=\"s\">&quot;()&quot;<\/span><span class=\"o\">);<\/span><\/div><div class=\"line\" id=\"LC15\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"n\">element<\/span><span class=\"o\">.<\/span><span class=\"na\">addStyleClass<\/span><span class=\"o\">(<\/span><span class=\"s\">&quot;success&quot;<\/span><span class=\"o\">);<\/span><\/div><div class=\"line\" id=\"LC16\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"o\">}<\/span> <span class=\"k\">catch<\/span> <span class=\"o\">(<\/span><span class=\"n\">Exception<\/span> <span class=\"n\">e<\/span><span class=\"o\">)<\/span> <span class=\"o\">{<\/span><\/div><div class=\"line\" id=\"LC17\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"n\">element<\/span><span class=\"o\">.<\/span><span class=\"na\">addStyleClass<\/span><span class=\"o\">(<\/span><span class=\"s\">&quot;failure&quot;<\/span><span class=\"o\">);<\/span><\/div><div class=\"line\" id=\"LC18\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"k\">throw<\/span> <span class=\"k\">new<\/span> <span class=\"nf\">RuntimeException<\/span><span class=\"o\">(<\/span><span class=\"n\">e<\/span><span class=\"o\">);<\/span><\/div><div class=\"line\" id=\"LC19\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"o\">}<\/span><\/div><div class=\"line\" id=\"LC20\">&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"o\">}<\/span><\/div><div class=\"line\" id=\"LC21\">&nbsp;<\/div><div class=\"line\" id=\"LC22\">&nbsp;<\/div><div class=\"line\" id=\"LC23\">&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"kd\">public<\/span> <span class=\"n\">String<\/span> <span class=\"nf\">convertToCamel<\/span><span class=\"o\">(<\/span><span class=\"n\">String<\/span> <span class=\"n\">s<\/span><span class=\"o\">)<\/span> <span class=\"o\">{<\/span><\/div><div class=\"line\" id=\"LC24\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"n\">StringBuilder<\/span> <span class=\"n\">sb<\/span> <span class=\"o\">=<\/span> <span class=\"k\">new<\/span> <span class=\"n\">StringBuilder<\/span><span class=\"o\">();<\/span><\/div><div class=\"line\" id=\"LC25\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"n\">String<\/span><span class=\"o\">[]<\/span> <span class=\"n\">parts<\/span> <span class=\"o\">=<\/span> <span class=\"n\">s<\/span><span class=\"o\">.<\/span><span class=\"na\">split<\/span><span class=\"o\">(<\/span><span class=\"s\">&quot; &quot;<\/span><span class=\"o\">);<\/span><\/div><div class=\"line\" id=\"LC26\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"k\">for<\/span> <span class=\"o\">(<\/span><span class=\"n\">String<\/span> <span class=\"n\">part<\/span> <span class=\"o\">:<\/span> <span class=\"n\">parts<\/span><span class=\"o\">)<\/span> <span class=\"o\">{<\/span><\/div><div class=\"line\" id=\"LC27\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"k\">if<\/span> <span class=\"o\">(<\/span><span class=\"n\">sb<\/span><span class=\"o\">.<\/span><span class=\"na\">length<\/span><span class=\"o\">()<\/span> <span class=\"o\">==<\/span> <span class=\"mi\">0<\/span><span class=\"o\">)<\/span> <span class=\"o\">{<\/span><\/div><div class=\"line\" id=\"LC28\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"n\">sb<\/span><span class=\"o\">.<\/span><span class=\"na\">append<\/span><span class=\"o\">(<\/span><span class=\"n\">part<\/span><span class=\"o\">.<\/span><span class=\"na\">toLowerCase<\/span><span class=\"o\">());<\/span><\/div><div class=\"line\" id=\"LC29\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"o\">}<\/span> <span class=\"k\">else<\/span> <span class=\"o\">{<\/span><\/div><div class=\"line\" id=\"LC30\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"n\">sb<\/span><span class=\"o\">.<\/span><span class=\"na\">append<\/span><span class=\"o\">(<\/span><span class=\"n\">part<\/span><span class=\"o\">.<\/span><span class=\"na\">substring<\/span><span class=\"o\">(<\/span><span class=\"mi\">0<\/span><span class=\"o\">,<\/span> <span class=\"mi\">1<\/span><span class=\"o\">).<\/span><span class=\"na\">toUpperCase<\/span><span class=\"o\">()).<\/span><span class=\"na\">append<\/span><span class=\"o\">(<\/span><span class=\"n\">part<\/span><span class=\"o\">.<\/span><span class=\"na\">substring<\/span><span class=\"o\">(<\/span><span class=\"mi\">1<\/span><span class=\"o\">).<\/span><span class=\"na\">toLowerCase<\/span><span class=\"o\">());<\/span><\/div><div class=\"line\" id=\"LC31\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"o\">}<\/span><\/div><div class=\"line\" id=\"LC32\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"o\">}<\/span><\/div><div class=\"line\" id=\"LC33\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"k\">return<\/span> <span class=\"n\">sb<\/span><span class=\"o\">.<\/span><span class=\"na\">toString<\/span><span class=\"o\">();<\/span><\/div><div class=\"line\" id=\"LC34\">&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"o\">}<\/span><\/div><div class=\"line\" id=\"LC35\">&nbsp;<\/div><div class=\"line\" id=\"LC36\"><span class=\"o\">}<\/span><\/div><\/pre><\/div>\n          \n        <\/div>\n\n        <div class=\"gist-meta\">\n          <a href=\"http://gist.github.com/raw/120467/ea70af9c2d7e2d660246fe95a31a9783108fa34f/EvalCommand.java\" style=\"float:right;\">view raw<\/a>\n          <a href=\"http://gist.github.com/120467#file_eval_command.java\" style=\"float:right;margin-right:10px;color:#666\">EvalCommand.java<\/a>\n          <a href=\"http://gist.github.com/120467\">This Gist<\/a> brought to you by <a href=\"http://github.com\">GitHub<\/a>.\n        <\/div>\n      <\/div>\n    \n  \n<\/div>\n')
