Class DefaultJsValidator
- java.lang.Object
-
- org.dashbuilder.displayer.client.widgets.sourcecode.DefaultJsValidator
-
- All Implemented Interfaces:
JsValidator
@Dependent public class DefaultJsValidator extends Object implements JsValidator
-
-
Field Summary
Fields Modifier and Type Field Description static String[]_jsMaliciousprotected org.dashbuilder.common.client.StringTemplateBuildercodeBuilderprotected JsEvaluatorjsEvaluatorprotected org.dashbuilder.common.client.StringTemplateBuilderrestoreBuilder
-
Constructor Summary
Constructors Constructor Description DefaultJsValidator(JsEvaluator jsEvaluator)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description StringisolateLines(String code)intoccurrences(String str, String target)StringreplaceVariables(String code)StringrestoreVariables(String code)Stringvalidate(String jsTemplate, Collection<String> allowedVariables)Check if the the given javascript fragment has no syntax errors.
-
-
-
Field Detail
-
_jsMalicious
public static final String[] _jsMalicious
-
jsEvaluator
protected JsEvaluator jsEvaluator
-
codeBuilder
protected org.dashbuilder.common.client.StringTemplateBuilder codeBuilder
-
restoreBuilder
protected org.dashbuilder.common.client.StringTemplateBuilder restoreBuilder
-
-
Constructor Detail
-
DefaultJsValidator
@Inject public DefaultJsValidator(JsEvaluator jsEvaluator)
-
-
Method Detail
-
validate
public String validate(String jsTemplate, Collection<String> allowedVariables)
Description copied from interface:JsValidatorCheck if the the given javascript fragment has no syntax errors.- Specified by:
validatein interfaceJsValidator- Parameters:
jsTemplate- The javascript template to validate.allowedVariables- The only set of variables that can be referenced from the JS body- Returns:
- An error message in case an error exists, or null if everything is ok.
-
-